Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  TM - Plant Simulation
  Supply Chain Modellierung

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Supply Chain Modellierung (681 mal gelesen)
Susan16
Mitglied


Sehen Sie sich das Profil von Susan16 an!   Senden Sie eine Private Message an Susan16  Schreiben Sie einen Gästebucheintrag für Susan16

Beiträge: 6
Registriert: 10.07.2006

erstellt am: 10. Jul. 2006 21:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Modell_SC.jpg

 
Hallo,

ich will eine Supply Chain modellieren, an der ich dann Bedarfsstrategien teste. Den Produzenten habe ich als Quelle, die Endkunden als Senke modelliert. Groß- und Einzelhändler habe ich mit einem Puffer abgebildet. Die Endkunden (Senke) entnimmt laut einer Wahrscheinlichkeitsverteilung Teile. Am Ende des Tages soll der Einzelhändler testen, ob ein Meldebestand erreicht ist und falls ja eine Bestellung für den nächsten Tag (oder andere Zeitspanne) generieren. Der Großhändler verfährt ebenso. (in diesem Fall Meldebestandsverfahren - soll jedoch auf andere Strategien angepasst werden)

Ich wollte die Bestellungen mit den Zeitpunkten in Tabellen abbilden. Eine Zeitsteuerung habe ich in der Init-Methode hinterlegt.

Mein Problem: Ich habe getestet, ob die Bestände am Ende des Tages korrekt abgerufen werden. Diese habe ich in die Tabelle Bestände geschrieben. Nun habe ich festgestellt, dass der Bestand an jedem Tag neu geschrieben wird, also nicht addiert wird. Wenn am Tag 1 noch 1 BE im Puffer vorhanden ist, sollte dieses auch am nächsten Tag dazugezählt werden.

Methode zum Füllen der Tabelle (MBestände):

is
do
Bestände["Tag",tag]:=Tag;
Bestände["Endkunde",tag]:=endkunde.statanzahlEin;
Bestände["Einzelhändler",tag]:=einzelhändler.anzahlBEs;
Bestände["EinzelhändlerEin",tag]:=einzelhändler.statanzahlEin;
Bestände["EinzelhändlerAus",tag]:=einzelhändler.statanzahlAus;
Bestände["Großhändler",tag]:=großhändler.anzahlbes;
Bestände["GroßhändlerEin",tag]:=großhändler.statAnzahlEin;
Bestände["großhändlerAus",tag]:=großhändler.statAnzahlAus;
Bestände["Produzent",tag]:=produzent.statanzahlAus;
Tag:=tag+1;
end;

Wie kann ich dieses Problem richten? Habt ihr vielleicht eine bessere Idee zu der Aufgabenstellung?

Für Hilfe bin ich sehr dankbar, denn mir rennt langsam die Zeit weg 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

DFault
Mitglied



Sehen Sie sich das Profil von DFault an!   Senden Sie eine Private Message an DFault  Schreiben Sie einen Gästebucheintrag für DFault

Beiträge: 123
Registriert: 19.10.2005

erstellt am: 11. Jul. 2006 09:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Susan16 10 Unities + Antwort hilfreich

Ich würde jetzt einfach mal ganz naiv behaupten, in dem Du die gemeldeten Bestänge addierst.
Also z.B.:

Bestände["Einzelhändler",tag]:=Bestände[3,1] + einzelhändler.anzahlBEs;

------------------
Um im Leben wirklich Erfolg zu haben, muss man sich fest an zwei Regeln halten:

1. Erzhäl' nicht alles was Du weißt!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

math4fun
Mitglied



Sehen Sie sich das Profil von math4fun an!   Senden Sie eine Private Message an math4fun  Schreiben Sie einen Gästebucheintrag für math4fun

Beiträge: 167
Registriert: 12.12.2005

erstellt am: 11. Jul. 2006 14:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Susan16 10 Unities + Antwort hilfreich

Mir scheint, die Methode MBestände wird nicht - wie erwartet - periodisch aufgerufen.
Vorschlag für Init und MBestände:
ref(MBestände}.methAufr(24 * 3600);

Vorschlag 2: Wenn nur ein Produkt untersucht wird, registriere den Bestand in einer Variable, die man mit dem Diagramm anzeigen kann.
Das hilft auch bei der Validierung des Modells.
Vielleicht ändert sich wirklich nichts und Du bekommst es garnicht mit.

------------------
PM

www.math4fun.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Susan16
Mitglied


Sehen Sie sich das Profil von Susan16 an!   Senden Sie eine Private Message an Susan16  Schreiben Sie einen Gästebucheintrag für Susan16

Beiträge: 6
Registriert: 10.07.2006

erstellt am: 11. Jul. 2006 18:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

@ Dfault: Danke für den Hinweis. Genau die gleiche Idee hatte ich auch. Habe es so versucht:

Bestände["Einzelhändler",tag]:=einzelhändler.anzahlBEs+Bestände["Einzelhändler",tag-1];

Also immer den Wert des Vortages dazuzählen. Da bekomme ich aber immer die Fehlermeldung: "Fehler in Methode '.Modelle.Netzwerk.MBestände' in Zeile 5: Die Datentypen der Operanden sind nicht kompatibel."

Wenn ich allerdings eine direkte Zuweisung mache (bspw. Bestände["Einzelhändler",1] funktioniert es. Es soll ja aber immer fortgeschrieben werden und nicht von einem Wert abhängig sein. Liegt das vielleicht an der Variable?

@ math4fun: Vielen Dank! Zeitsteuerung funktioniert so... Es kann jedoch sein, dass die Init noch erweitert wird und ich dort dann die bisherige Zeitsteuerung wieder brauche. Die Umsetzung in Variablen werde ich dann noch machen.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP


Ex-Mitglied

erstellt am: 11. Jul. 2006 18:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat

Hi,

also ueber das Attribut großhändler.anzahlbes kannst Du permanent den Bestand abfragen.Es braucht also nicht der Bestand vom Vortag hinzuaddiert werden. Deshalb bin ich auch  math4fun´s Meinung, dass es wahrscheinlich etwas mit der Methode "Mbestände" und den zugehörigen Variablen (Tag...) zutun hat.

@init-Methode

wenn Du zyklisch eine Methode aufrufen willst, kannst Du hierfür auch den Generatorbaustein nutzen.
Ist vielleicht etwas eleganter als alles in die init-Methode zu verfrachten.

@Bestände["Einzelhändler",tag]:=einzelhändler.anzahlBEs+Bestände["Einzelhändler",tag-1];

Ich vermute die Meldung kommt bei tag=1.

Mit "Bestände["Einzelhändler",tag-1]" greifst Du dann auf den Zeilenindex (0) , der defaultmässig das string-Format hat, zu.

Somit versuchst Du eine integer-Zahl mit einem string zu addieren und in einer integer-Zelle abzuspeichern.

Gruss

------------------
Der Simulator

DFault
Mitglied



Sehen Sie sich das Profil von DFault an!   Senden Sie eine Private Message an DFault  Schreiben Sie einen Gästebucheintrag für DFault

Beiträge: 123
Registriert: 19.10.2005

erstellt am: 11. Jul. 2006 19:00    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Susan16 10 Unities + Antwort hilfreich

Und genau deshalb trägt er diesen Namen zurecht! 

------------------
Um im Leben wirklich Erfolg zu haben, muss man sich fest an zwei Regeln halten:

1. Erzhäl' nicht alles was Du weißt!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Susan16
Mitglied


Sehen Sie sich das Profil von Susan16 an!   Senden Sie eine Private Message an Susan16  Schreiben Sie einen Gästebucheintrag für Susan16

Beiträge: 6
Registriert: 10.07.2006

erstellt am: 11. Jul. 2006 19:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Klingt logisch mit dem Zugriff auf den Zeilenindex 0... Ich lass das jetzt auch erstmal weg und versuche die Steuerung an sich hinzukriegen.

Vielen Dank erst mal an alle 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz