Originally posted by: reru90
Hi everyone,
I have created vrp model as you can see above. However, the machines do not drive in fixed route. I have fixed orders in excel. They have to be done. As Excel says in the spreadsheet "Aufträge", each row has an order which has to be delivered from i to j in a certain time window. How can I enter this in .mod or .dat so that the machines can complete the orders?
Best regards.
int Patientenanzahl = ...;
range Patienten = 1..Patientenanzahl;
range PatientenundDepots = 0..(Patientenanzahl+1);
int Mitarbeiteranzahl = ...;
range Mitarbeitermenge = 1..Mitarbeiteranzahl;
int p = ...; //PickUp Punkte
int d = ...; // Delivery Punkte
{string} Stationen = ...;
int kapazitaet [Mitarbeitermenge] = ...;
int Nachfrage[Patienten] = ...;
int Servicezeit[Patienten] = ...; // die Zeit, in der Mitarbeiter ankommt plus bis er zum DeliveryLocation losfährt
int Distanz[PatientenundDepots][PatientenundDepots] =...; //Fahrzeiten zwischen den Stationen in Minuten
int frueAbholzeit[Patienten] = ...; // frühste Abholzeit
int spaetAbholzeit[Patienten] = ...; // spätste Abholzeit
// Entscheidungsvariablen
dvar boolean x[Mitarbeitermenge][PatientenundDepots][PatientenundDepots]; // 1, wenn das Fahrzeug k von i direkt zu j anfährt
dvar int StartServicezeit[Mitarbeitermenge][PatientenundDepots]; // (s) die Zeit in der Mitarbeiter zum Patient i ankommt, welche nach j transportiert werden muss.
//Zielfunktion
minimize sum(k in Mitarbeitermenge, i,j in PatientenundDepots)(Distanz[i][j]*x[k][i][j]);
//verbieten aus einem Depot bzw. Patient zu gleichem zu fahren
subject to {
forall(i in PatientenundDepots, k in Mitarbeitermenge)
x[k][i][i] == 0;
......
#CPLEXOptimizers#DecisionOptimization