Production planning with personnel assignment
{ Exmpl14.5-1_ProdPlanPersonnel.mpl }
{ Applications of Optimization with Xpress-MP }
{ Chapter 14.5, Production Planning with Personnel Assignment, Notransfer - Size: 10x9, Allowtransfer - Size: 20x39, Page 303 }
#define Notransfer
!#define Allowtransfer
TITLE
ProdPlanningWith_Personnel;
INDEX
prod := 1..4;
line := 1..5;
line2 := line;
DATA
Profit[prod] := (7,8,9,7);
Dur[prod,line] := (1.3,0.9,2.0,0.3,0.9,
1.8,1.7,1.4,0.6,1.1,
1.3,1.2,1.3,1.0,1.4,
0.9,1.1,1.0,0.9,1.0);
Cap[line] := (4500,5000,4500,1500,2500);
Transf[line,line2] := (0,1,1,1,0,
0,0,1,0,1,
1,1,0,1,0,
0,0,0,0,1,
1,1,1,0,0);
Tmax[line] := (400,800,500,200,300);
VARIABLE
Load[line];
Produce[prod];
#ifdef Allowtransfer
Hours[line];
Transfer[line,line2] WHERE (Transf);
#endif
MODEL
MAX Profits = SUM(prod: Profit * Produce);
SUBJECT TO
CalcLoad[line] -> CLD:
Load = SUM(prod: Dur * Produce);
#ifdef Notransfer
LineCapacity[line] -> LCAP:
Load <= Cap;
#endif
#ifdef Allowtransfer
Balance[line] -> BAL:
Hours = Cap + SUM(line2: Transfer[line:=line2,line2:=line]) - SUM(line2: Transfer);
LineCapacity[line] -> LCAP:
Load <= Hours;
TransferLimit[line] -> LTR:
SUM(line2: Transfer) <= Tmax;
#endif
END
Back To Top
|
Maximal Home Page
|
List of Models |
Previous Page
|
Next Page