2017-06-07 7 views
0

Ich habe ein einfaches Problem zu lösen. Ich muss Ressourcen so auf drei Projekte verteilen, dass wir die Ressourceneffizienz maximieren. Ich brauche Hilfe, um das Problem in einer objektiven Funktion zu formulieren.Resources Management Lineare Programmierung

Weitere Details des Problems:

Alle Projekte werden 18 Wochen dauern. Die drei Listen definieren unter die Nachfrage nach Ressourcen während der 18 Wochen (18 x 5 = 90 Tage) über die drei Projekte

Project_One = [32 14 30 12 23 27 12 21 32 12 20 29 15 20 15 17 15 11] 
Project_Two = [ 4 5 14 11 13 9 10 11 7 9 14 8 9 11 9 7 6 8] 
Project_Three= [ 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8]; 

Wir haben insgesamt 48 Auftragnehmer Ressourcen. Wir können Ressourcen loslassen, um Verluste zu minimieren, aber die Umschulungskosten betragen 10 Tage unproduktiv.

Wie kann ich ein lineares Programmierproblem formulieren, um die Menge an Ressourcen zu erhalten, die wir wöchentlich zur Minimierung der Gesamtkosten benötigen? Die objektive Funktion sollte in Betracht ziehen, ob es besser ist, loszulassen und später umzuschulen oder die Ressourcen in späteren Wochen zu verwenden, wenn die Nachfrage steigt.

Einige Key Information:

1) Die Kosten von 1 Ressource ist $ 100 pro Tag. 2) Neue Ressourcen werden trainiert, indem vorhandene Mitarbeiter beschattet werden. Der Einfachheit halber gehen wir davon aus, dass die Kosten nur 10 Arbeitstage = 1000 $ betragen. 3) Die Kosten, um die Ressourcen im Leerlauf zu halten, sind die Anzahl der Tage, die zwischen ihnen in keinem Projekt benötigt werden, und der nächste Nachfrageanstieg erfolgt. Idealerweise würden wir die Ressource nicht loslassen, wenn die Leerlaufzeit weniger als 10 Tage beträgt.

+0

Das Problem ist nicht durchführbar. Sie benötigen mehr als 48 Ressourcen in Periode 3 und haben keine Zeit, neue zu trainieren. Ich nehme an, alles ist Tage (Ihre Frage spricht von 18 Wochen und 18 Tagen, die mich verwirrt). –

+0

Erwin Kalvelagen. Vielen Dank für das Aufzeigen. Mein Fehler, es sind 18 Wochen, ungefähr 90 Tage. Der Einfachheit halber habe ich es auf 18 Wochen, 90 Tage beschränkt, aber normalerweise dauert das Projekt durchschnittlich 180 Tage. – Kal

+0

Ich glaube nicht, dass dies mit einem reinen LP gemacht werden kann. Sie werden einige binäre Variablen benötigen, so dass Sie mit einem MIP-Modell enden. Außerdem benötigen Sie einige Kosteninformationen (Kosten für ungenutzte Ressourcen, Kosten für das Training). –

Antwort

1

Mein Versuch, ein MIP-Modell wie folgt aussieht:

enter image description here

Die Ergebnisse sind:

enter image description here

Wir haben 4 Mitarbeiter/Auszubildende in Woche 1 (Ausbildung in Woche 1 und 2, verfügbar für Arbeit in Woche 3) und 3 Mieten in Woche 7. Sie können auf dem Bild sehen, dass die Arbeiterzählung am Anfang der Woche 3 und 9 steigt.

+0

Vielen Dank @ErwinKalvelagen. Die Lösung sieht sehr gut aus. Ich habe eine kurze Frage. In der objektiven Funktion, sollte nicht die Konstante multiplizieren die Anzahl der Mieten höher als 1 sein? Wenn wir annehmen, dass die Kosten für die Einstellung und das Training höher sind als die Ressourcen für 2 Wochen zu halten (was eine gute Annahme ist, die Sie gemacht haben), dann würde ich erwarten, dass die Konstante höher als 1 ist? Vielen Dank. – Kal

+0

'r (i, t)' arbeitet, Leerlauf oder Training, also ist das schon da. –

+0

Die orange Linie ist Summe "r" minus Auszubildende. –