www.modeler-forum.com

CONSIDEO - FORUM
It is currently Tue 3. Dec 2024, 19:13

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next
Author Message
PostPosted: Thu 10. Oct 2013, 10:29 
Offline

Joined: Tue 24. Sep 2013, 15:31
Posts: 11
Hallo Modeler,

ich stehe vor der Herausforderung folgenden Sachverhalt im iModeler darzustellen:
Ganz vereinfacht: von x Aufträgen gesamt, werden diese je Auftragsart entsprechend "unterschiedlich" bearbeitet, also sortiert müssen sie sortiert werden. Im Modell habe ich mal nur die Darstellung einer "Auftragsart" gemodelt. Nachdem also die Aufträge sortiert wurden, werden sie von einer Ressource (a) zugeteilt. Die Ressource (a) teilt die Ressourcen (b) den Aufträgen zu. Eine Ressource (b) schafft täglich eine bestimmt Anzahl an Aufträgen. Wenn die Ressource zugeteilt wurde, wird diese für die Folgeprozesse gebraucht. Nach Zuteilung durch Ressource (a) steht die zugeteilte Ressource (b) für weitere Zuteilungen nicht mehr zur Verfügung. Sie wird erst wieder frei, wenn sie die Aufträge abgearbeitet hat oder wenn sie durch Störungen daran gehindert wird. Gezählt werden sollen die offenen und die abgeschlossenen Aufträge.
Im nächsten Schritt wäre zu berücksichtigen, dass eine Ressource (b) auch mehrer Auträge in Folge abarbeiten kann. Sodass der Prozess nach der Zuteilung durch Ressource (a) wiederholt wird. Störungen, die die Ressource (b) daran hindern die Auträge zu erledigen können bei jedem Teilprozess/Prozessschritt auftreten. Wenn die Ressource (b) aber noch "Spielraum" übrige Arbeitszeit hat, können ihr nochmals neue Auträge zugeteilt werden. Die mit Störungen werden zuerst als "offene Auträge" eingestuft. Stehen dann der Ressource (b) bei der nächsten Zuteilung als zusätliche Auträge zur Verfügung, die eingeteilt werden müssen.

Irgendwie bin ich bei dem Versuch, das darzustellen und auch mit Daten zu hinterlegen, im Wald gelandet und bin um jeden Hinweis dankbar, der mir dabei helfen könnte das darzustellen.


Last edited by luma on Thu 24. Oct 2013, 12:23, edited 1 time in total.

Top
 Profile  
 
PostPosted: Thu 10. Oct 2013, 23:22 
Offline
Administrator

Joined: Fri 3. Sep 2010, 13:20
Posts: 300
Erste schnelle Antwort zu der Frage, wie Aufträge, die dann als Prozesskette abgearbeitet werden, Ressourcen zugeordnet bekommen können:
https://www.imodeler.info/ro?key=AOaquU ... rf4gh0LL6A
Es müsste nur einen Schlüssel geben, wie viele Ressourcen je neuem Auftrag abgestellt werden.

"oder wenn sie durch Störungen daran gehindert werden"
Soll das die Resourcen freistellen?

Dass dann bereits zugeteilte Ressourcen bei weiteren Aufträgen weiter machen, ist eine Frage der Priorisierung zwischen allen Auftragsarten/Prozessketten oder eben über eine if()-Funktion explizit mit neu hinzukommenden Aufträgen sicherzustellen.

Hilft das schon?

_________________
Kai Neumann

Consideo


Top
 Profile  
 
PostPosted: Mon 14. Oct 2013, 21:29 
Offline

Joined: Tue 24. Sep 2013, 15:31
Posts: 11
Danke schonmal Kai

Kai wrote:
Erste schnelle Antwort zu der Frage, wie Aufträge, die dann als Prozesskette abgearbeitet werden, Ressourcen zugeordnet bekommen können:
https://www.imodeler.info/ro?key=AOaquU ... rf4gh0LL6A
Es müsste nur einen Schlüssel geben, wie viele Ressourcen je neuem Auftrag abgestellt werden.

Das hängt von einigen weiteren Faktoren ab. Einerseits je Schwierigkeitsgrad des Auftrags -> längere Bearbeitungszeit. Anderseits Entfernung zwischen den Auftragsorten. So kann es z. B. sein, dass eine Ressource an einem Tag 17 Aufträge an einem Ort erledigen kann. Und am Folgetag nur 4 des gleichen Auftragtyps, weil die Fahrzeit zwischen den Auftragsorten sehr weit auseinander liegen oder aufgrund von Stau, Störung am Fahrzeug etc.

"oder wenn sie durch Störungen daran gehindert werden"
Soll das die Resourcen freistellen?


Zuerst soll sie natürlich versuchen dieses Problem zu lösen, was Zeit kostet. Dann gibt es zwei Möglichkeiten: Entweder es klappt und het mehr Zeit gekostet oder es klappt nicht und der Auftrag geht zurück zum "noch ausstehende Aufträge"-Pool. Es wird sozusagen an einem anderen Tag komplett neu abgearbeitet. Sollte das Problem gelöst sein und die Ressource noch Restarbeitszeit und Restaufträge hat, kann sie natürlich weitermachen.


Dass dann bereits zugeteilte Ressourcen bei weiteren Aufträgen weiter machen, ist eine Frage der Priorisierung zwischen allen Auftragsarten/Prozessketten oder eben über eine if()-Funktion explizit mit neu hinzukommenden Aufträgen sicherzustellen.

Hilft das schon?


Das weiss ich noch nicht. Trotzdem vielen Dank.


Grüße luma


Top
 Profile  
 
PostPosted: Mon 14. Oct 2013, 23:20 
Offline
Administrator

Joined: Fri 3. Sep 2010, 13:20
Posts: 300
Die unterschiedlichen Auftragstypen einfach in möglichst wenige Gruppen einteilen und dann deren mögliches Aufkommen mit Wahrscheinlichkeiten belegen.

Die Wahrscheinlichkeit, dass ein Teil der Aufträge sich als schwierig erweist, ebenfalls explizit als Flüsse, die von einem Bestand in den anderen fließen, modeln.

Klappt das?

_________________
Kai Neumann

Consideo


Top
 Profile  
 
PostPosted: Thu 17. Oct 2013, 09:00 
Offline

Joined: Tue 24. Sep 2013, 15:31
Posts: 11
Kai wrote:
Die unterschiedlichen Auftragstypen einfach in möglichst wenige Gruppen einteilen und dann deren mögliches Aufkommen mit Wahrscheinlichkeiten belegen.

Das mit den Wahrscheinlichkeiten lässt sich meiner Meinung nach schwer sagen, denn bedingt die eine Auftragsart die andere. Wenn eine Stichprobe (Auftragsart) "durchfällt" kann es sein, dass daruch mehrere tausend andere Aufträge (Wechseln) oder nur wenige hundert ausgelöst werden können. Je nachdem wie viel davon verbaut wurden. Und je nachdem wo sie verbaut wurden erhöht oder senkt das die Bearbeitungszeiten (im Durchschnitt).

Die Wahrscheinlichkeit, dass ein Teil der Aufträge sich als schwierig erweist, ebenfalls explizit als Flüsse, die von einem Bestand in den anderen fließen, modeln.

Klappt das?


Etwas anderes: Ich versuche gerade die Zuordnung der Ressourcen auf anderen Wegen darzustellen. Die Ressourcen nicht als Stück, sondern als Stunden, die zur Verfügung stehen. x Ressourcen aufs Jahr gerechnet können abzüglich Urlaub, Krankheit, Schulung, etc. eine bestimmt Anzahl an Stunden "Arbeit verrichten". Weiter kann ich eine durchschnittliche Bearbeitungszeit über den gesamten Prozess ermitteln. Dann erfolgt die Zuteilung: verfügbare Stunden/ Auftragseingang * Bearbeitungszeit. Mit dem Quotienten kann ich dann über Auftragseingang * Quotient offene bzw. erledigt Aufträge errechnen.
Das wäre sozusagen mein Grundgerüst. Um die unterschiedlichen Auftragsarten abzudecken, bilde ich unterschiedliche "zur Verfügung stehende Stunden"-Pools, die wenn deren Quotienten <1 sind, zu anderen Pools hinzugefügt werden können.

Ist der Ansatz soweit richtig?


Top
 Profile  
 
PostPosted: Thu 17. Oct 2013, 09:20 
Offline
Administrator

Joined: Fri 3. Sep 2010, 13:20
Posts: 300
Was die Wahrscheinlichkeiten angeht, müssen eben erst einmal Annahmen getroffen werden.

Den Schluss von dem Quotienten auf die Offenen Aufträge habe ich nicht verstanden. Ich halte es für einfacher, offene Aufträge als Bestand zu betrachten, der durch einen Fluss abgebaut wird. Sehr wohl beschreibt der Quotient genau diesen Fluss. Aber wie gesagt, ich habe die möglicherweise abweichende Idee nicht verstanden. :?:

_________________
Kai Neumann

Consideo


Top
 Profile  
 
PostPosted: Thu 17. Oct 2013, 10:03 
Offline

Joined: Tue 24. Sep 2013, 15:31
Posts: 11
Ich sehe das so:
Angenommen 100 Aufträge kommen rein und ich kann mit den verfügbaren Stunden 90 Aufträge abarbeiten -> Quotient 0,9
=> erledigte Aufträge 100*0,9=90
=> offene Aufträge 100*(1-0,9)=10

Ich lade mal das Modell mit hoch.
Attachment:
Simulationsmodell3.imm [7.74 KiB]
Downloaded 956 times


Top
 Profile  
 
PostPosted: Thu 17. Oct 2013, 11:33 
Offline
Administrator

Joined: Fri 3. Sep 2010, 13:20
Posts: 300
Hmm, kann es sein, dass hier eher eine Excel-Denke denn System Dynamics vorliegt :o ?
Wer war denn da der Trainer der Software-Schulung :?

Je Zeiteinheit wird es einen Auftragseingang geben - nicht eine einmalige Summe über einen etwaigen Zeitverlauf. Die Aufträge laufen dann in einen Bestand, der dann durch den Quotienten 1/Dauer * verfügbare Ressourcen abgebaut wird. Da hatte ich doch schon Beispiel-Modelle erstellt :x

Eines davon habe ich ins Englische übersetzt hier gepostet: viewtopic.php?f=24&t=262

_________________
Kai Neumann

Consideo


Top
 Profile  
 
PostPosted: Thu 17. Oct 2013, 13:01 
Offline

Joined: Tue 24. Sep 2013, 15:31
Posts: 11
Kai wrote:
Hmm, kann es sein, dass hier eher eine Excel-Denke denn System Dynamics vorliegt :o ?

Ich arbeitet um ersten Mal mit der Software und auch davor habe ich soetwas thematisch noch nicht gemacht. Somit ist das alles andere als intuitiv.
Vor allem habe ich eine gewisse Zeit mit dem Process Modeler gespielt und durfte nun umsteigen auf den iModeler.


Wer war denn da der Trainer der Software-Schulung :?

Hr. Neumann

Je Zeiteinheit wird es einen Auftragseingang geben - nicht eine einmalige Summe über einen etwaigen Zeitverlauf. Die Aufträge laufen dann in einen Bestand, der dann durch den Quotienten 1/Dauer * verfügbare Ressourcen abgebaut wird. Da hatte ich doch schon Beispiel-Modelle erstellt :x

Das mit dem Bestand ist mir bereits aufgefallen. Ich kann mit dem Beispielmodell leider (noch) nicht viel anfangen, weil es für ein umfängliches Modell zu "simpel" ist und für eine reduzierte Darstellung mit den unterschiedlichen Prozessen doch wieder zu "komplex". Ich versuche ein Grundgerüst auf die Beine zu stellen, welches dann Schrittweise erweitert werden kann. Ich weiss nicht wie im Beispiel eine Erweitung der Faktoren "Krankheit" oder "Schulungen" funktionieren soll. Eine Schulung muss die Ressource unter Umständen nicht komplett ausfallen lassen, sondenr nur stundenweise. Deswegen mein Ansatz über die Stunden, in denen Ressourcen Arbeit verrichten können. Ein umfängliches Modell würde meinen Zeitrahmen sprengen. Deswegen der Versuch, ein einfacheres Modell, das erweitert werden kann, zu entwickeln. Vorerst mit der Restriktion, dass Auftragsarten nicht unterschieden werden.

Eines davon habe ich ins Englische übersetzt hier gepostet: viewtopic.php?f=24&t=262


Top
 Profile  
 
PostPosted: Thu 17. Oct 2013, 14:38 
Offline
Administrator

Joined: Fri 3. Sep 2010, 13:20
Posts: 300
Das Modell soll also die Zeiteinheit Stunde bekommen.

Die Ressourcen können dann einen Parameter für Anzahl Mitarbeiter bekommen, und einen Faktor, der aus Excel importiert die generellen Arbeitszeiten erhält, also eine Liste mit Stunden über den gesamten Simulationsverlauf, bei denen dann die Zeiten zwischen beispielsweise 8 und 17 Uhr mit Ausnahme von 12 Uhr den Wert 1 erhalten, der Rest 0.

Krankheiten können dann genauso wie Schulungszeiten ebenfalls aus Excel kommen und da jeweils in einer Spalte angegeben bekommen, wie viele Mitarbeiter zu den jeweiligen Stunden krank oder in Schulung sind.

Der Faktor "Verfügbare Ressourcen" erhält dann die Formel: Anzahl der (Anzahl der Ressourcen - krank - in Schulung) * Arbeitszeit

Dass dann eine Auftragsbearbeitung mit 1/Dauer * Verfügbare Ressourcen gerechnet wird, ist aber jetzt verstanden, oder?

Etwas trickreicher ist es, die möglichen Krankheitsausfälle von Ressourcen nicht aus Excel vorzugeben, sondern per Zufall passieren zu lassen. Die einfache Formel wäre likelihood(7)*Anzahl der Ressourcen, aber das würde mit 7prozentiger Wahrscheinlichkeit dann immer alle Ressourcen und das nur je Stunde ausfallen lassen, nicht aber einzelne Ressourcen für einen ganzen Tag. Aber selbstverständlich würde sich auch das modeln lassen. Weiss wer wie oder will es wer wissen ?

_________________
Kai Neumann

Consideo


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group