3

Click here to load reader

im Sommersemester 2007 Kurzeinf˜uhrung in ARENA: Teil 1 · PDF fileKurzeinf˜uhrung in ARENA: Teil 1 Einf˜uhrung ... mulation automatisch, ansonsten kann man die Simulation jederzeit

Embed Size (px)

Citation preview

Page 1: im Sommersemester 2007 Kurzeinf˜uhrung in ARENA: Teil 1 · PDF fileKurzeinf˜uhrung in ARENA: Teil 1 Einf˜uhrung ... mulation automatisch, ansonsten kann man die Simulation jederzeit

Institut fur WirtschaftswissenschaftAbteilung fur Betriebswirtschaftslehre,insbesondere Produktion und LogistikProf. Dr. Christoph SchwindtKirsten Honoch ([email protected])

Vorlesung”Simulation und Analyse von Produktionssystemen“

im Sommersemester 2007

Kurzeinfuhrung in ARENA: Teil 1

Einfuhrung

Arena ist ein machtiges Simulationswerkzeug, das auf dem prozessorientierten Ansatz beruht.Wir wollen mit Arena ein Simulationsmodell erstellen und damit Simulationslaufe durchfuhren.Die folgenden funf Schritte mussen mit dem Arena-Hauptprogramm ausgefuhrt werden:

• Aufbau eines symbolischen Modells, das aus sog. Arena modules besteht, per ”drag &drop“ (z.B. eine Warteschlange mit einem Bediener),

• Uberfuhrung in ein experimentierfahiges Modell durch Einstellen und Hinzufugen vonParametern und Daten (z.B. Bedienzeiten) per Doppelklick auf die Module,

• Durchfuhren von Simulationslaufen,

• Auswertung der Simulationsergebnisse und Uberprufung, wie gut das Modell das realeSystem abbildet (Validierung),

• Anderung des Modells bzw. der Parameter, um mehr uber das mogliche Verhalten desrealen Systems herauszufinden (Sensitivitatsanalyse).

Aufgabenstellung Beispielmodell

a) In einer Filiale der Deutschen Post treffen im Mittel alle 5 Minuten Kunden ein. Fur dieZwischenankunftszeiten wird eine Exponentialverteilung angenommen.

• Reicht es aus, wenn die Filiale nur aus einem Schalter besteht, unter der Annahme,dass die Bearbeitungsdauer am Schalter im Mittel sechs Minuten betragt (symmetri-sche Dreiecksverteilung mit einer Minute als Mindest- und elf Minuten als Hochst-dauer)?

• Wie lange muss ein Kunde im Schnitt vor dem Schalter warten?

• Wie hoch ist die Auslastung des Schalterbeamten?

b) Da sich die Filiale einer immer großeren Beliebtheit erfreut und im Mittel bereits al-le 2,2 Minuten Kunden eintreffen, sollen drei weitere Schalter eingerichtet werden. Wieandern sich die in Teilaufgabe a) ermittelten Ergebnisse unter der Annahme, dass sichKunden stets vor dem Schalter mit der kurzesten Warteschlange anstellen?

c) Die Filiale geht nun von vier Schaltern und einem Kundenstrom mit einer mittleren Zwi-schenankunftszeit von 2,2 Minuten aus. Um die Wartezeit zu vermindern, erwagt die Filial-leitung, einen Expressschalter einzurichten. Dafur wird einer der vier Schalter fur Kundenreserviert, die maximal vier Minuten Beratungszeit benotigen.

• Fuhrt diese Anordnung zu einer Verbesserung der Wartezeit und zu einer hoherenAuslastung der Kundenberater?

Page 2: im Sommersemester 2007 Kurzeinf˜uhrung in ARENA: Teil 1 · PDF fileKurzeinf˜uhrung in ARENA: Teil 1 Einf˜uhrung ... mulation automatisch, ansonsten kann man die Simulation jederzeit

Modellierung in ARENA

a) Wir offnen unter File > New ein neues Modell (falls das nicht schon automatisch beimOffnen von Arena geschehen ist). Aus dem linken Bereich der Benutzeroberflache, demBasic Process Panel, ziehen wir per drag & drop nacheinander ein Create-, ein Process-und ein Dispose-module in den oberen Teil des Modellfensters. Sollte das Basic ProcessPanel in der Arenagrundeinstellung nicht vorhanden sein, so ladt man es unter File >Template Panel > Attach > BasicProcess.tpo. Das von Ihnen aufgebaute Flussdiagrammbeschreibt die Logik des Prozesses. Die zugehorigen Daten werden im unteren Bereich desModellfensters definiert. Zu diesen Eigenschaften gelangt man auch durch Doppelklick aufdas entsprechende Modul. In unserem Fall andern wir die Einstellungen des Create-modulefolgendermaßen ab:

Name : KundenankunftEntity type : KundeValue : 5Units : Minutes

Damit haben wir die exponentialverteilte Zwischenankunftszeit der Kunden festgelegt. DieEinstellungen des Process module lauten:

Name : SchalterAction : Seize Delay ReleaseDelay type : TriangularUnits : MinutesMinimum : 1Maximum : 11Value (Most-likely) : 6

Mit Seize Delay Release wird ein Prozess vorgegeben, der aus einer Warteschlange (Sei-ze), einer Bearbeitung (Delay) und einer Freigabe (Release) besteht. Fur die Bearbeitungwerden Faktorressourcen benotigt. Dies geschieht mit Hilfe des Add Buttons. In unseremFall wird der Faktor Schalterbeamter hinzugefugt. Schließlich andern wir noch den Namendes Dispose-module in Kunde verlaesst Filiale.Das Modell ist nun beschrieben, und die Simulationslaufe konnen starten. Zunachst werdenunter Menu Run > Setup > Replication Parameters bestimmte Einstellungen wie Anzahlder Simulationslaufe (Replications), Lange der Einschwingphase (Warm-Up-Period) usw.eingegeben. Durch Drucken des Play-Buttons werden die Simulationslaufe mit zugehorigerAnimation gestartet. Wenn man die Simulationszeit schon vordefiniert hat, endet die Si-mulation automatisch, ansonsten kann man die Simulation jederzeit mit dem Stop-Buttonbeenden. Es gibt Falle, in denen der Simulationslauf mit einer Fehlermeldung abgebrochenwird, da die Restriktion fur die studentische Version von Arena uberschritten wird. Diespassiert, wenn sich z. B. in einer Warteschlange mehr als 150 Einheiten gleichzeitig be-finden. Nach Beendigung der Simulationslaufe gelangt man zum Simulationsreport. Hierwerden die Ergebnisse, die wahrend der Laufe gesammelt wurden, angezeigt. Im linkenTeilfenster steht statt des Basic Process Panel das Reports Panel. Dort lasst sich fur je-den Modellbestandteil per Doppelklick ein eigenes Reportfenster offnen. Offnet man denVerzeichnisbaum des Projekts und wahlt man Queue aus, erhalt man unter Waiting Timedie durchschnittliche Wartezeit eines Kunden fur diese Simulation. Number Waiting gibtdie mittlere Anzahl von Kunden in der Schlange an. Wahlt man Resources, erhalt man dieAuslastung der Mitarbeiter unter Number Busy.

Page 3: im Sommersemester 2007 Kurzeinf˜uhrung in ARENA: Teil 1 · PDF fileKurzeinf˜uhrung in ARENA: Teil 1 Einf˜uhrung ... mulation automatisch, ansonsten kann man die Simulation jederzeit

b) Wir andern die Ankunftsrate im Create-module und fugen drei weitere (parallele) Schalterhinzu. Am einfachsten kopiert man das bisherige Process-module dreimal und ersetzt beiden Kopien im Eigenschaftsfenster Name und Resource durch Schalter# und Schalterbe-amter#. Hierbei ist # zu ersetzen durch die jeweilige Nummer des Schalters. Der Kundestellt sich stets an der kurzesten Schlange an. Dafur benotigen wir zwei weitere Flowchartmodules aus dem Basic Process Panel links, namlich das Assign- und das Decide-module.Wir fugen sie zwischen Create- und Process-module ein. Durch Assign konnen Variablenoder Attribute zugewiesen werden. In unserem Fall werden die Variablen Wartende# alsdie aktuelle Anzahl von wartenden Kunden in den jeweiligen Schlangen eingefuhrt. DasDecide-module ist eine Entscheidungsmarke des Flussdiagramms. Der Pfad fuhrt weiterzu dem Schalter mit dem kleinsten Wartende#. Wir geben im Eigenschaftsfenster desAssign-module als Name Wartezeit ueberpruefen ein und fugen als Assignments

Type : VariableVariable Name : Wartende#New Value : NQ(Schalter#.Queue)

hinzu. Die Arena-Funktion NQ() gibt die aktuelle Anzahl der Wartenden in einer Warte-schlange an. Die Eigenschaften des Decide-module vervollstandigen wir wie folgt:

Name : Kuerzeste Schlange?,Type : N-way by Condition

Ferner fugen wir als Conditions

If : VariableNamed : Wartende1Is : <=Value : MN(Wartende2,Wartende3,Wartende4)

fur Schalter 1 mit Hilfe von Add hinzu. Fur die Schalter 2 − 4 verfahren wir entspre-chend. Die Arena-Funktion MN() liefert das Minimum der Argumente. Die vier Ausgangeder Entscheidungsmarke fuhren zu dem Schalter mit der kurzesten Warteschlange. AlleSchalter sind mit dem Dispose-module verbunden.

c) Wir mussen wieder ein Assign- und ein Decide-module hinter dem Create-module einfugen,um abzufragen, ob es sich um einen Expresskunden handelt oder nicht. Dabei wird imAssign-Schritt ein Attribut eingefuhrt. Ein Arena-Attribut ist eine lokale Variable desbeweglichen Objekts. In unserem Fall ist das Attribut eine Variable des Kunden. Wirlegen hier bereits die Bearbeitungsdauer des Kunden am Schalter durch die vorgegebe-ne Dreiecksverteilung TRIA(1,6,11) fest. Die nachfolgende Entscheidungsmarke fuhrt alleExpresskunden (bearbeitungsdauer ≤ 4 ) direkt zum Expressschalter, alle anderen mussensich an den verbliebenen drei Schaltern anstellen. Diese Annahme setzt voraus, dass al-le Kunden schon vor ihrer Bedienung am Schalter wissen, ob sie langer oder kurzer alssechs Minuten brauchen. Die Vorgabe verhindert auch, dass sich Expresskunden an einemgewohnlichen Schalter anstellen, auch dann, wenn die Warteschlange leer ist. Diese Verein-fachungen nehmen wir hier in Kauf. An den vier Schaltern mussen wir noch den Delay Typeauf expression und Expression auf bearbeitungsdauer umstellen, da die Bearbeitungsdauerbereits vorher zufallig festgelegt wurde (Assign-module).

Der zweite Teil der Kurzeinfuhrung in ARENA findet am Dienstag, den 12. Juni2007 von 13.30 bis 15.00 Uhr im OR-Labor statt.