Umweltinformatik

Software-Agenten für die Energieversorgung

Strom kommt aus der Steckdose! Und wie kommt er dahin? Heutige Kraftwerke sind meist schlecht für Klima und Umwelt. Also erfolgt derzeit ein Umstieg auf umweltfreundliche Stromerzeugung. Überall entstehen neue Windräder, aber auch in Haushalten wird zunehmend nicht nur Strom verbraucht, sondern auch produziert: über Solaranlagen und über moderne Heizungsanlagen, die neben Wärme gleichzeitig Strom produzieren. Das ist gut für die Umwelt, bringt aber auch neue Probleme. mit sich Strom kann nämlich nur ganz schlecht gespeichert werden, daher muss in jedem Moment genau so viel Strom produziert werden wie gerade verbraucht wird. Früher war das einfach, weil dazu nur wenige große Kraftwerke gesteuert werden mussten. Doch wer steuert die vielen kleinen, falls das überhaupt geht! Sonnenstrom gibt es wenn die Sonne scheint, Windstrom wenn der Wind weht. Doch halt, wenn man die Erzeugung nur schlecht regeln kann, kann man dann nicht den Verbrauch anpassen? Ja das geht, genau daran wird geforscht. Aber dazu müssen die Geräte, die den Strom verbrauchen und erzeugen, schlauer werden!

Viele verschiedene Geräte müssen sich absprechen und zusammenarbeiten. Man stelle sich das einmal vor: Der Roboterstaubsauger handelt mit der Solaranlage des Nachbarn aus, wann genug Strom zum Saugen da ist, die Waschmaschine wartet mit dem Waschen bis zum Abend, weil ihr die Heizung dann Strom liefern kann - abends braucht Sohnemann sowieso warmes Wasser zum Baden. Also verspricht sie dem Elektroauto von gegenüber auch gleich, dass es sich aufladen kann.

Wie kann man sich sowas vorstellen? Die Geräte würden sich dann ja wie selbstständig handelnde Wesen verhalten. Man spricht in diesem Zusammenhang von Agenten. Eine Software sorgt dafür, dass die Geräte sich schlau verhalten können.

Doch was heißt das eigentlich: Software-Agent?

Was ist ein Software-Agent?

Wissenschaftler definieren den Begriff Agent beispielsweise so:

"Ein Agent ist alles, was seine Umgebung über Sensoren wahrnehmen kann und in dieser Umgebung durch Aktuatoren handelt. [...] Ein menschlicher Agent hat Augen, Ohren und andere Organe als Sensoren sowie Hände, Füße, Mund und andere Körperteile als Aktuatoren. Ein Roboter-Agent könnte Kameras und Infrarotbereichsmelder als Sensoren verwenden, [sic] und verschiedene Motoren als Aktuatoren. Ein Software-Agent könnte Tastencodes, Dateiinhalte und Netzwerkpakete als sensorische Eingaben entgegennehmen und in der Umgebung agieren, indem er etwas auf dem Bildschirm anzeigt, Dateien druckt oder Netzwerkpakete versendet."

[RN04, S. 55] (siehe unten)

Stellen wir uns also eine Software vor, die ein Agent ist. Was muss so ein Agent können?

  • Ein Agent nimmt seine Umgebung war, d.h. er beobachtet.
  • Wer beobachtet, der macht sich auch so seine Gedanken über das, was er sieht. Er schlussfolgert.
  • Ein Agent kann seine Umgebung beeinflussen. Er muss also ein bestimmtes Ziel verfolgen.
  • Was ist, wenn sich in der Umgebung mehrere Agenten tummeln? Dann kommunizieren sie auch miteinander.

Wie ein Agent seine Umgebung wahrnehmen kann und wie er sie beeinflusst, haben wir bereits gesehen. Beschäftigen wir uns also zunächst mit der Frage, wie eine Software/ein Agent schlussfolgern kann. Hierzu verfügt jeder Agent über einen Satz von Regeln, die ihm sein Entwickler mitgegeben hat. Da jeder Agent seine Umgebung beobachtet, verfügt er über ein gewisses Wissen. Der Agent ist somit in der Lage, sein auf vergangenen Wahrnehmungen basierendes Modell der Realität hinsichtlich Was-wäre-wenn-Fragestellungen zu untersuchen. Es ist ihm also möglich, anhand der Regeln Vorhersagen für die Zukunft und die Auswirkungen seiner Handlungen zu treffen.
Wenn ein Agent die Wahl hat was er tut, dann stellt sich die Frage, ob er das Richtige tut. Wie jeder weiß, ist es besser das Richtige zu tun, als das Falsche. Was aber bedeutet es, das Richtige zu tun? Für einen Agenten bedeutet das Richtige zu tun, so erfolgreich wie möglich zu sein. Er braucht also eine Möglichkeit seinen Erfolg zu messen. Hierfür versorgt ihn sein Entwickler mit einer Funktion zur Bewertung seiner Leistung. Die Beantwortung der Frage, wie eine solche Bewertung aussehen kann, ist schwierig. Stellen Sie sich folgendes Beispiel vor: Ein Staubsauger-Agent soll den Boden saugen. Nun könnte man die Leistung messen, indem man betrachtet, wie viel Schmutz in 15 Minuten entfernt wird. Dann könnte der Agent auf die Idee kommen, seinen eigenen Erfolg zu maximieren, indem er bereits aufgesaugten Schmutz wieder ausleert um ihn erneut aufzusaugen. Vielleicht sollte man Strafpunkte für verbrauchte Elektrizität in die Bewertung einbeziehen. Hier ist oft Expertenwissen gefragt.

Jetzt wissen wir also, was einen Agenten umtreibt: Wo bin ich? Wo will ich hin? Wie komme ich dahin?

Agentenbasierte Simulation

Ein interessantes Anwendungsgebiet sind Simulationen mit Agenten. Hierbei werden Szenen aus der realen Welt mithilfe von Agenten im Computer nachgestellt. Ein bekanntes Beispiel ist die Simulation von Fischen in einem Schwarm oder das Verhalten von Ameisen (Kinderuniversität). Mithilfe von Simulationen können Aussagen über die Dynamik des zugrunde liegenden Systems getroffen werden. Auch weisen Simulationen gegenüber realen Experimenten eine Reihe von Vorteilen auf:

  • Da es sich bei den Agenten und der Simulation um Software handelt, können viele Varianten mit geringem Aufwand in kurzer Zeit durchprobiert werden.
  • Auch lassen sich interessante Experimente beliebig oft wiederholen.
  • Es ist ebenfalls möglich Szenarien auszuprobieren, die so in der Realität (noch) nicht existieren.

Betrachten wir nun anhand von zwei Beispielen die Frage, wie solche Agenten dazu beitragen können, die Energieversorgung der Zukunft zu verbessern.

Der Agent als Windmüller

In einem Windpark stehen viele Windräder und produzieren Strom, je nachdem wie der Wind gerade weht. Und hier liegt auch schon das Problem. Oft kommt es vor, dass Windböen einzelne Windräder treffen. Die erzeugen dann für einen Moment mehr Strom, als aufgrund der Wettervorhersage vorausgesehen. Solche unvorhergesehenen Schwankungen können sich negativ auf die Qualität des Stroms auswirken und müssen daher vom Energieversorger ab einer bestimmten Schwelle ausgeglichen werden. Viel besser wäre es da, wenn sich die Windmühlen untereinander absprechen können, sodass einige Mühlen freiwillig etwas abbremsen, sobald einige ihrer Kollegen von einer Böe getroffen werden. Dann würden die Schwankungen gleicht bei der Erzeugung ausgeglichen. Dazu müssen in den Windmühlen aber Software-Agenten sitzen, die diesen Ausgleich unter einander aushandeln.

Der Agent als Broker: Alles nur Verhandlungssache?

Seit 2000 wird der Strom in Leipzig an der Börse (European Energy Exchange, EEX) gehandelt. Wär doch toll, wenn man da mit seiner Solaranlage vom Dach oder seinem BHKW (Blockheizkraftwerk) im Keller mitmischen könnte. Leider produziert eine einzelne kleine Anlage alleine viel zu wenig Strom. Wenn aber viele Anlagen zusammenarbeiten, dann produzieren sie genug Strom, um diesen auch an der Börse verkaufen zu können. Dazu müssen sie sich aber wieder mit den vielen Stromverbrauchern und auch untereinander absprechen, damit klar ist, wer wann wie viel Strom produzieren kann.

Damit dieser Strom für einen guten Preis verkauft werden kann, braucht es aber zusätzlich noch eine weitere Spezies von Agenten. Diese speziellen Agenten machen genau das, was die Börsenmakler an der Wallstreet auch treiben: Sie tauschen mit anderen Börsenagenten solange Angebote und Gegenangebote für den Strom aus, bis sich alle geeinigt haben und der zu viel produzierte Strom zu einem Preis verkauft werden kann, mit dem alle zufrieden sind.

Agenten in schlauen Geräten

Das alles machen unsere Geräte in Zukunft vielleicht von ganz alleine und ohne dass man was davon merkt. Und ganz nebenbei erkennen die Agenten in den Geräten dann auch noch automatisch, wie wir es am liebsten haben. Die Kaffeemaschine kocht schon mal von allein den Frühstückskaffee - sonntags natürlich später, weil sie gelernt hat, dass wir da länger schlafen - und immer in Absprache mit dem Eierkocher oder dem Staubsauger oder so - je nachdem wie viel Strom gerade verbraucht werden darf.

Quellen und weiterführende Literatur

[Bos04] Bossel, Hartmut: Systeme, Dynamik, Simulation: Modellbildung, Analyse und Simulation komplexer Systeme. Books on Demand GmbH, 2004.
[Gel94] Gell-Mann, Murray: The Quark and the Jaguar: Adventures in the Simple and the Complex. Holt Paperback, 1994.
[RN04] Russell, Stuart und Peter Norvig: Künstliche Intelligenz - Ein moderner Ansatz. 2. Auflage, Pearson Studium, 2004.
[Wol02] Wooldridge, Michael: Introduction to MultiAgent Systems. Wiley, 2002.