Assigning personnel to machines


    {  Exmpl14.1-1_PersonnelAssignemnt.mpl  }

    {  Applications of Optimization with Xpress-MP  }

    {  Chapter 14.1, Assigning Personnel to Machines, Parallel_machines - Size: 12x36, Serial_machines - Size: 18x37,  Page 287 }

#define Parallel_machines
!#define Serial_machines

TITLE
    PersonnelAssignemnt;

INDEX
    per  := 1..6;
    mach := 1..6;

DATA
    Outp[per,mach] := (13,24,31,19,40,29,
                       18,25,30,15,43,22,
                       20,20,27,25,34,33,
                       23,26,28,18,37,30,
                       28,33,34,17,38,20,
                       19,36,25,27,45,24);

VARIABLE
    Assign[per,mach];
#ifdef Serial_machines
    Pmin;
#endif

MODEL

#ifdef Parallel_machines
    MAX TotalProd = SUM(per,mach: Outp * Assign);
#endif

#ifdef Serial_machines
    MAX Pmin;
#endif

SUBJECT TO

    OneMachinePerPerson[per] -> OMP:
        SUM(mach: Assign) = 1;

    OnePersonPerMachine[mach] -> OPM:
        SUM(per: Assign) = 1;

#ifdef Serial_machines
    CalculateMinProd[per] -> CPMN:
        SUM(mach: Outp * Assign) >= Pmin;
#endif

BINARY
    Assign;


END


Back To Top | Maximal Home Page | List of Models | Previous Page | Next Page