Sie sind auf Seite 1von 11

Universität Osnabrück WS 08/09

Regelbasierte Modellierung

Bericht zum Modellprojekt

Der Umzug

Analyse von verschiedenen Verhaltensstrategien

Kristina Gärtner
Sara König
Svenja Stehr

Vorgetragen am 05.02.2009
Inhaltsverzeichnis

Inhalt

1 Fragestellung ...................................................................................................................... 3
1.1 Situation ....................................................................................................................... 3
1.2 Strategien...................................................................................................................... 3
1.3 Szenarien ...................................................................................................................... 3
2 Umsetzung.......................................................................................................................... 4
2.1 Vorgehen ...................................................................................................................... 4
2.2 Konzeptionelles............................................................................................................ 4
2.3 Umsetzung in Java ....................................................................................................... 4
2.4 Variable Parameter/Bedingungen ................................................................................ 6
3 Simulationen....................................................................................................................... 7
3.1 Beispiele....................................................................................................................... 7
3.2 Daten ............................................................................................................................ 7
4 Auswertung ........................................................................................................................ 8
4.1 Allgemeine Auswertung............................................................................................... 8
4.2 Auswertung der Auswirkung der Nebenbedingungen ................................................. 8
4.3 Auswertungen Sonderfälle ........................................................................................... 8
4.4 Der Fall Engpässe ........................................................................................................ 9
5 Probleme, Schwierigkeiten, Beschränkungen .................................................................... 9
5.1 Realitätsnähe ................................................................................................................ 9
5.2 Mögliche Erweiterungen .............................................................................................. 9
6 Fazit .................................................................................................................................... 9
7 Anhang ............................................................................................................................. 10
1 Fragestellung
Im Rahmen der Vorlesung "Regelbasierte Modellierung" haben wir ein Modellprojekt
durchgeführt unter der Problemstellung verschiedene Verhaltensalternativen bei einem
Umzug auf ihre Effizienz unter verschiedenen Umgebungsbedingungen hin zu untersuchen.

1.1 Situation
Über eine konkrete, gerade verlaufende Wegstrecke sollen Helfer eine bestimmte Anzahl
Kisten von A – also der Wohnung – nach B – dem Transporter – tragen.

1.2 Strategien
In unserem Modell werden drei verschiedene Strategien getestet:

1. Feste Kette:
Jeder Helfer bewegt sich in einem vorher festgelegten Abschnitt hin und her und
nimmt die Kisten vom vorherigen Helfer an bzw. gibt sie an den nächsten Helfer ab.

2. Dynamische Kette:
Jeder Helfer läuft mit einer Kiste so lange bis er auf einen anderen Helfer trifft und
übergibt ihm dann seine Kiste.

3. Ungeordnet:
Jeder Helfer trägt Kisten von A nach B und weicht dabei andern Trägern aus.

1.3 Szenarien
Die drei Strategien wurden unter verschiedenen Bedingungen simuliert. Neben variablen
Einstellungen der Anzahl von Helfern und Kisten und der Länge der zu bewältigenden
Strecke lassen sich verschiedene Geschwindigkeiten der Helfer und unterschiedlich schwere
Kisten einstellen. Damit soll die Realitätsnähe erhöht würden.
2 Umsetzung

2.1 Vorgehen
Nach verschiedenen Vorüberlegungen und Planungen begannen wir die 3 Strategien
aufeinander aufbauend zu programmieren. Danach haben wir die verschiedenen Bedingungen
entwickelt und eingebaut.
Mit dem fertigen Programm haben wir dann mehrere Simulationen in unterschiedlichen
Szenarien durchgeführt und diese absolut und relativ miteinander verglichen.

2.2 Konzeptionelles

Zur Analyse der Problemstellung mussten konzeptionelle Annahmen bezüglich der


verschiedenen Strategien getroffen werden. Da diese das Simulationsergebnis beeinflussen,
werden die wichtigsten im Folgenden kurz vorgestellt:
• Bei der Umsetzung der Strategie „feste Kette“ wurde angenommen, dass ein Traeger
genau eine Kiste am Übergabeort abstellen kann, von wo der Helfer sie dann abholt.
Sollte eine Traeger ein weiteres Mal zum Übergabeort kommen und die vorherige Kiste
ist noch nicht abgeholt, so wartet der Traeger mit seiner Kiste solange bis die alte Kiste
abgeholt worden ist und er seine nun abstellen kann, wo der Helfer sie später erreichen
kann.
• Bei der Strategie „ungeordnet“ wurden zwei wesentliche Annahmen getroffen:
o Traeger haben Priorität, d.h. sie müssen nicht ausweichen, wenn ihnen Helfer
entgegenkommen. Sie können allerdings auch nicht andere langsamere Traeger
überholen (Grundannahme: mit der schweren Kiste wird der kürzest mögliche
Weg gewählt).
o Helfer haben den entgegenkommenden Traegern auszuweichen und sie können
langsamere Helfer überholen. Außerdem versuchen sie immer wieder auf die
ursprüngliche Strecke zurückzukehren, wenn sie von dieser abgewichen sind
(Grundannahme: Abweichung von ursprünglicher Strecke kommen in der Realität
Ausweichen auf die Straße, o.ä. gleich).

2.3 Umsetzung in Java

Folgende Klassen wurden implementiert.


• UmzugsGenerator:
Hierbei handelt es sich um eine Klasse, von welcher in der Famoja-Oberfläche eine
Instanz erzeugt wird. Diese Klasse erzeugt die Umgebung für die Simulation. Des
Weiteren ist es über die Oberfläche möglich variierende Einstellungen für die
Simulationen vorzunehmen.
Darstellung in Famoja:

• Umgebung:
Bei dieser Klasse handelt es sich um eine Subklasse von der Famoja-Klasse Grid. Auf
der erzeugten Instanz befinden sich die Helfer und die Kisten. Diese werden von ihr
auch erzeugt.

Anfangsbedingungen (mit 10 Helfern):

• Element:
Eine Subklasse der Famoja-Klasse Bug, von welcher die Klassen Kiste und Helfer
abgeleitet sind.
o Kiste:
Subklasse der Klasse Element und damit auch von Bug. Die Kisten, die in der
Simulation transportiert werden, sind jeweils durch Instanzen dieser Klasse
repräsentiert. Es wird zu Beginn der Simulation die gewünschte Anzahl erzeugt
und dann in einem Stack zwischengespeichert, aus dem die Helfer die Kisten
am Start abholen. Am Zielort werden die Kisten ohne weitere Speicherung
abgegeben.

Depiction für eine einzelne Kiste:


o Helfer:
Subklasse der Klasse Element und damit auch von Bug. Die Helfer der
Simulation werden durch Instanzen dieser Klasse realisiert. Dabei wird in
Instanzen von Helfern, welchen keine Kiste zugeordnet ist, ("Helfer“) und in
Instanzen von Helfern, welche eine Kiste tragen, ("Traeger“) unterschieden.
Die einzelnen Strategien werden als cases implementiert.

Depiction für Helfer: Depiction für Traeger: Depiction für


„Endzustand“:

2.4 Variable Parameter/Bedingungen

• Strategie: zwischen den drei bereits genannten Strategien kann gewählt werden;
durch „strategie“-Attribut der Klasse UmzugsGenerator (in der Oberfläche)
• Länge der Strecke: durch „x“-Attribut der Klasse UmzugsGenerator (in der
Oberfläche)
• Anzahl der Helfer: durch „helfer“-Attribut der Klasse UmzugsGenerator (in der
Oberfläche)
o Geschwindigkeit der Helfer: kann homogen oder heterogen verteilt sein. Bei
heterogener Verteilung wird die Geschwindigkeit
zufallsverteilt und es gibt drei verschiedene
Stufen.
Homogenität bzw. Heterogenität wird durch
Wahl der passenden Implementation festgelegt.
o Kraft der Helfer: analog zur Geschwindigkeit
Die Kraft der Helfer und das Gewicht der Kisten
beeinflussen die Geschwindigkeit der Traeger zusätzlich zu
ihrer Grundgeschwindigkeit.
• Anzahl der Kisten: durch „kisten“-Attribut der Klasse UmzugsGenerator (in der
Oberfläche)
o Gewicht der Kisten: analog zur Kraft der Helfer
3 Simulationen

3.1 Beispiele

Damit sich der Leser ein Bild von den Simulationen machen kann, werden nun exemplarisch
die drei grundlegenden Strategien knapp beschrieben und graphisch dargestellt:

o Feste Kette: Die Helfer bewegen sich in ihren festgelegten Bereichen und es kommt zu
„Staus“ an den Übergabeorten, an denen auch Kisten auf dem Grid stehen.

o Dynamische Kette: Die Helfer bewegen sich über die ganze Strecke bis sie auf einen
anderen Helfer treffen. Es kommt in dem Sinne zu „Staus“, dass
schnellere auf langsamere Helfer auflaufen

o Ungeordnet: Die Helfer bewegen die Kisten über die gesamte Strecke, wobei durch
Ausweichen und Überholen auch die Breite ausgenutzt wird. Zum Teil
kommt es bei den unterschiedlich schnellen Traegern zu „Staus“.

3.2 Daten

Im Anhang finden sich Tabellen mit Ergebnissen von verschiedenen Simulationen. Gemessen
wurde immer die Anzahl der Timesteps von Beginn bis die letzte Kiste das Ziel erreicht hat
und vom Grid verschwunden ist.
4 Auswertung
Die Auswirkung basiert auf den Simulationsergebnisse bei denen die Variablen erst
festgehalten werden und alle drei Strategien simuliert und dann wird eine Variable verändert ,
um deren Einfluss zu ermitteln.

4.1 Allgemeine Auswertung


Im Allgemeinen ist zu beobachten, dass die Strategie “dynamische Kette“ grundsätzlich bis
auf ein paar Ausnahmen, die später erläutert werden , am effizientesten ist. Die Strategie
“ungeordnet“ ist dabei meistens am ineffizientesten.

4.2 Auswertung der Auswirkung der Nebenbedingungen

• Wegstrecke (Parameter x):


Wird die Wegstrecke länger, gibt es zum Einen eine stärkere Differenzierung
zwischen den beiden Kettenstrategien. Zum anderen werden die
verhältnismäßigen, also relativen, Unterschiede zwischen den einzelnen Strategien
kleiner, wobei die absoluten Unterschiede größer werden.
 Anzahl der Helfer:
Insgesamt gibt es keine differenzierende Unterschiede zwischen den Strategien bei
der Veränderung der Anzahl der Helfer und es tritt auch keine Auswirkung auf die
absoluten Unterschiede auf.
 Anzahl der Kisten:
Ähnlich wie bei “Anzahl der Helfer“. Bei den relativen Auswirkungen gibt es
keine differenzierende Veränderung, jedoch steigen die absoluten Unterschiede bei
steigender Kistenanzahl leicht an.
 Geschwindigkeit, Kistengewicht und Kraft:
Bei heterogenen Kisten und Helfern (Anschalten von
Geschwindigkeit,Kistengewicht und Kraft) ist im Vergleich zu den Simulationen
mit homogenen Kisten und Helfern bei jeder Strategie eine starke
Verschlechterung von bis zu 200%, wobei die Heterogenität de stärkste
Auswirkung auf die dritte Strategie hat mit einer Verschlechterung.
Im Allgemeinen gibt es bei heterogenen Kisten und Helfern verhältnismäßig leicht
erhöhte Unterschiede zwischen den Strategien. Die absoluten Unterschiede
zwischen den Kettenstrategien sind nicht regelmäßig. Die absoluten Unterschiede
zwischen den Strategien “ungeordnet“ und “dynamische Kette“ werden bei einer
Heterogenität der Kisten und Helfer vergrößert.

4.3 Auswertungen Sonderfälle

Lediglich einige wenige Sonderfälle sind in der Simulation aufgetreten, die von der
allgemeinen Auswertung abweichen:

• Sind extrem viele Helfer auf einer kleinen Wegstrecke unterwegs erweist sich
die Strategie ‚feste Kette‘ als effizienter, was vor allem bei einer großen Anzahl
Kisten deutlich wird.
• Arbeiten auf einer sehr langen Wegstrecke nur sehr wenig Helfer zeigt sich die
Strategie ‚Ungeordnet‘ am effizientesten.
4.4 Der Fall Engpässe

Die Aufgabenstellung sah ursprünglich ein weiteres Szenario vor: Engpässe. Hierbei
sollten verschiedene Hindernisse, wie beispielsweise eine enge Tür, eingebaut werden,
die ein Ausweichen und Warten erfordern.
Auch ohne Simulation ist eindeutig, dass dieses Szenario die Kettenstrategien in keiner
Weise beeinflussen würde und die Strategie ‚Ungeordnet‘ ineffizienter machen würde.
Aus diesem Grund wurde auf die Modellierung verzichtet.

5 Probleme, Schwierigkeiten, Beschränkungen

5.1 Realitätsnähe

Bei dieser stark vereinfachten Modellierung muss die Realitätsnähe bezweifelt werden, z.B. in
folgenden Punkten:

• Ausweichen und Eingliedern: Die Helfer gliedern sich sofort wieder ein, selbst wenn
ihnen kurz danach wieder jemand entgegen kommt, der sie zum Ausweichen zwingt.
Dies ist eine Frage des Maßstabs, also ob die Helfer einander auf der Entfernung
bereits sehen können oder nicht.
• Kistenschwere: Auch wenn die Kisten unterschiedlich schwer eingestellt werden
können wurde in diesem Modell davon ausgegangen, dass keine Kiste für einen Helfer
gar nicht zu tragen ist.
• Kein Zeitverlust bei Kistenannahme/-abgabe: Das Aufnehmen der Kisten, das
Übergeben an andere Helfer und das Ablegen im Transporter geschieht ohne
Zeitverlust in jeweils einem Zeitschritt. Hierbei bleibt unbeachtet, dass Kisten evtl.
unhandlich sind oder auf einen hohen Stapel gestellt werden müssen etc.

5.2 Mögliche Erweiterungen

Um eine genauere und realistischere Simulation zu erstellen könnte man folgende


Erweiterungen in Betracht ziehen:

• Erschöpfung der Helfer: Sie werden nach einiger Zeit langsamer oder können ohne
Pause gar nicht mehr weiter machen.
• Probleme bei der Kistenübergabe: Unhandliche Kisten, für deren Übergabe mehr
Zeitschritte nötig sind.
• Kisten stapeln
• Empirische Untersuchungen

6 Fazit
Diese Simulation hat einen klaren Gewinner: die Strategie ‚dynamische Kette‘. Die logische
Überlegung veranlasst uns aber zu der Aussage bei zukünftigen Umzügen trotzdem die
Strategie ‚Ungeordnet zu bevorzugen. Diese Simulation ist eindeutig nicht realitätsnah genug.
7 Anhang
Simulationen mit homogenen Kisten und Helfern (y=7)

Simulationen mit heterogenen Helfern und Kisten: