Computerkomplexität umfasst die Untersuchung der zeitlichen oder räumlichen Komplexität von Rechenproblemen. Aus der Sicht des Mobile Computing ist Energie eine sehr wertvolle Rechenressource. Gibt es eine gut untersuchte Anpassung von Turing-Maschinen, die den Energieverbrauch bei der Ausführung von Algorithmen berücksichtigen? Gibt es auch etablierte Energiekomplexitätsklassen für Rechenprobleme?
Referenzen sind willkommen.
cc.complexity-theory
physics
Mohammad Al-Turkistany
quelle
quelle
Antworten:
Gibt es eine gut untersuchte Anpassung von Turing-Maschinen, die den Energieverbrauch bei der Ausführung von Algorithmen berücksichtigen? Nein!
Aber vielleicht könnten Sie sich eins einfallen lassen. Es ist möglich, dass Sie die Schritte der Turing-Maschine in reversibel und nicht reversibel unterteilen (bei den nicht reversiblen gehen Informationen verloren). Theoretisch kosten nur die nicht reversiblen Schritte Energie. Die Kosten einer Energieeinheit für jedes Bit, das gelöscht wird, wären theoretisch das richtige Maß.
Es gibt einen Satz von Charles Bennett, dass die zeitliche Komplexität höchstens um eine Konstante zunimmt, wenn eine Berechnung reversibel gemacht wird (CH Bennett, Logical Reversibility of Computation ) erhebliche Zeitverlängerung (Referenz hier) . Landauers Prinzip besagt, dass ein bisschen Löschen k T kostet der Energie ist T die Temperatur und k die Boltzmannsche Konstante. Im wirklichen Leben kann man nicht annähernd dieses Minimum erreichen. Sie können jedoch Chips bauen, die reversible Schritte mit wesentlich weniger Energie ausführen, als sie für irreversible Schritte benötigen. Wenn Sie reversiblen Schritten die Kosten von α und irreversiblen Schritten die Kosten von β zuweisen , scheint dies ein vernünftiges theoretisches Modell zu ergeben.kTln2 T k α β
Ich weiß nicht, wie sich Turing-Maschinen mit einigen umkehrbaren Schritten auf Chips mit einer umkehrbaren Schaltung beziehen, aber ich denke, beide Modelle sind es wert, untersucht zu werden.
quelle
Es gibt noch keine Energiekomplexitätsklassen, aber es besteht definitiv ein großes Interesse daran, zu untersuchen, wie Algorithmen entworfen werden können, die unter bestimmten Modellen energieeffizient sind. Ich bin nicht mit der gesamten Arbeit vertraut, aber ein Einstiegspunkt ist die Arbeit, die Kirk Pruhs für nachhaltiges Computing leistet. Kirk ist ein Theoretiker mit Fachkenntnissen in Scheduling und Approximation und ist in letzter Zeit in diesem Bereich sehr aktiv geworden. Daher ist seine Perspektive eine gute für algorithmische Leute.
ps gabgohs ansatz zu landauers prinzip ist gut. Wenn Sie mehr über die Beziehung zwischen Energie und Information erfahren möchten, gibt es keine bessere Quelle als das Maxwell's Demon-Buch .
quelle
Dies ist keine direkte Antwort, aber es gibt einige potenziell nützliche Zusammenhänge, um Programme zu zeichnen / zu erforschen, die in Anlehnung an Stay und Baez 'Arbeit zur algorithmischen Thermodynamik durchgeführt werden sollen: http://johncarlosbaez.wordpress.com/2010/10 / 12 / algorithmische-thermodynamik /
Beachten Sie jedoch, dass diese Arbeit keine tatsächlichen physischen Konsequenzen aufzeigt, sondern einen bislang rein mathematischen Zusammenhang verdeutlicht.
quelle
Kei Uchizawa und seine Mitautoren untersuchen die Energiekomplexität von Schwellwertschaltungen. Sie definieren es als die maximale Anzahl von Schwellwerttoren, die 1 über alle möglichen Eingänge ausgeben.
Da es sich nicht um Turing-Maschinen handelt, beantwortet dies die Frage nicht. Aber ich hoffe, dass ihre Papiere einige Ideen geben. Seine Webseite enthält Hinweise. http://www.nishizeki.ecei.tohoku.ac.jp/nszk/uchizawa/
quelle
Es gibt eine Rechtfertigung für die Verwendung des externen Speichermodells als Modell für energiebewusste Berechnungen. Paolo Ferragina hat dies in seinem eingeladenen Vortrag auf der ESA 2010 kurz besprochen, aber ich weiß nicht, ob es veröffentlichte Ergebnisse gibt. Die Grundidee ist, dass, wenn die Anzahl der E / As die Rechenzeit dominiert, die für diese E / As erforderliche Energie wahrscheinlich den Gesamtenergieverbrauch dominiert.
Der Bericht des Ersten Workshops zur Wissenschaft des Energiemanagements enthielt hauptsächlich Fragen und offene Probleme. Ich weiß nicht, was auf dem zweiten Workshop passiert ist , aber die Webseiten berichten, dass es eine spezielle Ausgabe von Sustainable Computing geben wird, die sich mit theoretischen, mathematischen und algorithmischen Ansätzen für nachhaltiges Rechnen befasst.
quelle
Hier sind einige neuere / andere Referenzen / Blickwinkel zu dieser scheinbar tiefen Frage, an der derzeit geforscht wird. Wie von P.Shor angedeutet, scheint das Gebiet bislang auf eine umfassende Umfrage, Standardisierung und / oder Vereinheitlichung zu warten. Es werden zunächst abstraktere / theoretischere Ansätze aufgeführt, gefolgt von mehr angewandten Ansätzen: energieeffiziente Algorithmen, Messung des Energieverbrauchs in mobilen Geräten zum Sortieren, Untersuchung von Faktoren in VLSI, die die Energie- / Zeitkomplexität beeinflussen.
Ein Energiekomplexitätsmodell für Algorithmen, Swapnoneel Roy Atri Rudra Akshat Verma ITCS 2013
Auf dem Weg zu einer energetischen Komplexität der Berechnung Alain J. Martin, IPL 2001
Komplexität gegen Energie: Theorie der Berechnung und der theoretischen Physik Yuri I. Manin
Auf dem Weg zu einem Modell der Energiekomplexität für Algorithmen Ravi Jain, David Molnar, Zulfikar Ramzan
Energieeffiziente Algorithmen Susanne Albers
Yao, FF, Demers, AJ, Shenker, S. Ein Planungsmodell für reduzierte CPU-Energie. In Proceedings of the 36. IEEE-Symposium über Grundlagen der Informatik (1995), 374–382.
Erforschung des Energieverbrauchs von Datensortieralgorithmen in eingebetteten und mobilen Umgebungen Christian Bunse Hagen Höpfner Essam Mansour Suman Roychoudhury
Energie-Zeit-Komplexität von Algorithmen: Modellierung der Kompromisse von CMOS VLSI (2007) von Brad D. Bingham
quelle
Zeit- und Raumkomplexität sind geräteunabhängig. Ich sehe keine Möglichkeit, Geräte mit hoher Energiekomplexität unabhängig zu machen.
quelle