$Title Ressourcenbeschraenkte Projektplanung $Ontext Vorlesung: Service Operations Management Abschnitt: 3.2 Projektplanung Problemstellung: Erstellung eines Projektplans zur Minimierung der Kontaktphasenzeit - Model - Author: Christoph Schwindt Date: 25/12/2019 $Offtext $eolcom// $include project-scheduling_data.gms variables kontaktphasenzeit Von Kunden in Kontaktphasen verbrachte Gesamtzeit (Zielfunktion) x(i,t) gleich 1 wenn Aktivitaet i zum Zeitpunkt t startet S(mu) Startzeitpunkt der Kontaktphase mu C(mu) Endzeitpunkt der Kontaktphase mu ; binary variable x ; positive variables S, C ; equations def_kontaktphasenzeit Definition der Kontaktphasenzeit durchfuehrung(i) Durchfuehrung der Aktivitaet i vorrang(i,j,t) Vorrangbeziehung zwischen Aktivitaeten i und j in Periode t def_start_phase(mu,i) Definition des Startzeitpunkts der Kontaktphase mu def_ende_phase(mu,i) Definition des Endzeitpunkts der Kontaktphase mu kapazitaet(k,t) Kapazitaetsrestriktion fuer Ressource k in Periode t ; def_kontaktphasenzeit.. kontaktphasenzeit =e= sum(mu, w(mu)*(C(mu)-S(mu))) ; durchfuehrung(i).. sum(t$((ord(t)-1 le LS(i)) and (ord(t)-1 ge ES(i))), x(i,t)) =e= 1 ; vorrang(i,j,t)$(a(i,j)).. sum(tPrime$((ord(tPrime)-1 le LS(i)) and (ord(tPrime)-1 ge max(ES(i), ord(t)-1))), x(i,tPrime)) + sum(tPrime$((ord(tPrime)-1 le min(LS(j), ord(t)+ delta(i,j)-2)) and (ord(tPrime)-1 ge ES(j))), x(j,tPrime)) =l= 1 ; def_start_phase(mu,i)$i_in_mu(mu,i).. S(mu) =l= sum(t$((ord(t)-1 ge ES(i)) and (ord(t)-1 le LS(i))), (ord(t)-1)*x(i,t)) ; def_ende_phase(mu,i)$i_in_mu(mu,i).. C(mu) =g= sum(t$((ord(t)-1 ge ES(i)) and (ord(t)-1 le LS(i))), (ord(t)-1+p(i))*x(i,t)) ; kapazitaet(k,t).. sum(i, r(i,k)*sum(tPrime$((ord(tPrime)-1 le min(LS(i), ord(t)-1)) and (ord(tPrime)-1 ge max(ES(i), ord(t)-p(i)))), x(i,tPrime))) =l= capital_R(k) ; model project_scheduling / all / ; options mip = cplex optcr = 0 reslim = 60 ; solve project_scheduling using mip minimzing kontaktphasenzeit ; display kontaktphasenzeit.l, x.l, S.l, C.l ;