La complejidad computacional incluye el estudio de la complejidad temporal o espacial de los problemas computacionales. Desde la perspectiva de la informática móvil, la energía es un recurso informático muy valioso. Entonces, ¿existe una adaptación bien estudiada de las máquinas de Turing que explique la energía consumida durante la ejecución de los algoritmos? Además, ¿existen clases establecidas de complejidad energética para problemas computacionales?
Las referencias son apreciadas.
cc.complexity-theory
physics
Mohammad Al-Turkistany
fuente
fuente
Respuestas:
¿Existe una adaptación bien estudiada de las máquinas de Turing que explique la energía consumida durante la ejecución de los algoritmos? ¡No!
Pero tal vez puedas encontrar uno. Es posible que pueda dividir los pasos de la máquina Turing en reversible y no reversible (los no reversibles son donde se pierde la información). Teóricamente, son solo los pasos no reversibles los que cuestan energía. Un costo de una unidad de energía por cada bit que se borra en teoría sería la medida correcta.
Existe un teorema de Charles Bennett de que la complejidad del tiempo aumenta como máximo una constante cuando un cálculo se hace reversible (CH Bennett, Reversibilidad lógica de la computación ), pero si también hay límites en el espacio, entonces hacer que el cálculo sea reversible podría incurrir en un aumento sustancial en el tiempo (referencia aquí) . El principio de Landauer dice que borrar un poco cuesta de energía, donde T es la temperatura yk es la constante de Boltzmann. En la vida real, no puedes acercarte a alcanzar este mínimo. Sin embargo, puede construir chips que realicen pasos reversibles usando sustancialmente menos energía de la que usan para pasos irreversibles. Si le da a los pasos reversibles un costo de α y a los pasos irreversibles un costo de β , parece que puede dar un modelo teórico razonable.kTln2 T k α β
No sé cómo las máquinas Turing con algunos pasos reversibles se relacionan con chips con algunos circuitos reversibles, pero creo que vale la pena investigar ambos modelos.
fuente
Todavía no hay clases de complejidad energética, pero definitivamente hay mucho interés en estudiar cómo diseñar algoritmos que sean energéticamente eficientes en algunos modelos. No estoy familiarizado con todo el trabajo, pero un punto de entrada es el trabajo que Kirk Pruhs está haciendo en computación sostenible. Kirk es un teórico con experiencia en programación y aproximaciones, y recientemente se ha vuelto muy activo en esta área, por lo que su perspectiva es buena para la gente algorítmica.
El comentario de ps gabgoh sobre el principio de Landauer es bueno. Si desea obtener más información sobre la relación entre energía e información, no hay mejor fuente que el libro Demonio de Maxwell .
fuente
Esta no es una respuesta directa en absoluto, pero son algunas conexiones potencialmente útiles para dibujar / investigar programas que se llevarán a cabo en la línea del trabajo de Stay y Baez sobre termodinámica algorítmica: http://johncarlosbaez.wordpress.com/2010/10 / 12 / algorítmica-termodinámica /
Sin embargo, tenga en cuenta que este trabajo no saca consecuencias físicas reales, sino que ilustra una conexión que es, hasta ahora, puramente matemática.
fuente
Kei Uchizawa y sus coautores estudian la complejidad energética de los circuitos de umbral. Lo definen como el número máximo de puertas de umbral que generan 1 sobre todas las entradas posibles.
Como no se trata de máquinas Turing, esto no responde la pregunta. Pero, espero que sus documentos den algunas ideas. Su página web contiene punteros. http://www.nishizeki.ecei.tohoku.ac.jp/nszk/uchizawa/
fuente
Hay alguna justificación para usar el modelo de memoria externa como modelo de computación consciente de la energía. Paolo Ferragina discutió esto brevemente en su charla invitada en ESA 2010, pero no sé si hay resultados publicados. La idea básica es que si el número de E / S domina el tiempo de cálculo, entonces la energía requerida para esos E / S probablemente dominará el consumo total de energía.
El informe del Primer Taller sobre la Ciencia de la Gestión del Poder contenía principalmente preguntas y problemas abiertos. No sé qué sucedió en el Segundo Taller , pero las páginas web dicen que habrá un número especial de Computación Sostenible dedicado a los enfoques teóricos, matemáticos y algorítmicos de la computación sostenible.
fuente
Aquí hay algunas referencias / ángulos más nuevos / otros sobre esta pregunta aparentemente profunda con una investigación en curso. según lo indicado por P.Shor, el área hasta el momento parece estar esperando una encuesta exhaustiva, estandarización y / o unificación. hay enfoques más abstractos / teóricos enumerados en primer lugar, seguidos de enfoques más aplicados: algoritmos de eficiencia energética, medición del uso de energía en dispositivos móviles para la clasificación, estudio de factores en VLSI que afectan la complejidad de energía / tiempo.
Un modelo de complejidad energética para algoritmos, Swapnoneel Roy Atri Rudra Akshat Verma ITCS 2013
Hacia una complejidad energética de la computación Alain J. Martin, IPL 2001
Complejidad vs energía: teoría de la computación y física teórica Yuri I. Manin
Hacia un modelo de complejidad energética para algoritmos Ravi Jain, David Molnar, Zulfikar Ramzan
Algoritmos energéticamente eficientes Susanne Albers
Yao, FF, Demers, AJ, Shenker, S. Un modelo de programación para reducir la energía de la CPU. En Actas del 36º Simposio IEEE sobre Fundamentos de la Informática (1995), 374–382.
Explorando el consumo de energía de algoritmos de clasificación de datos en entornos integrados y móviles Christian Bunse Hagen Ho ̈pfner Essam Mansour Suman Roychoudhury
Complejidad energía-tiempo de los algoritmos: modelando las compensaciones de CMOS VLSI (2007) por Brad D. Bingham
fuente
Las complejidades del tiempo y el espacio son independientes del dispositivo. No veo una manera de hacer que el dispositivo de complejidad energética sea independiente.
fuente