Assembly line Balancing


    {  Exmpl7.6-1_AssemblyBalance.mpl  }

    {  Applications of Optimization with Xpress-MP  }

    {  Chapter 7.6,  Assembly line Balancing,  Size: 32x49,  Page 135 }


TITLE
    AssemblyLineBalance;

INDEX
    mach := 1..4;
    task := 1..12;
    task2 := task;

DATA
    Dur[task] := (3,6,7,6,4,8,9,11,2,13,4,3);
    Arc[task,task2] := [2,1,1,
                        3,1,1,
                        4,2,1,
                        5,2,1,
                        6,2,1,
                        6,3,1,
                        7,3,1,
                        8,6,1,
                        9,4,1,
                        9,5,1,
                        9,8,1,
                        10,8,1,
                        10,11,1,
                        11,7,1,
                        12,9,1,
                        12,10,1];

VARIABLE
    Process[mach,task];
    Cycle;

MODEL

    MIN CycleDuration = Cycle;

SUBJECT TO

    OneWorkStationPerTask[task] -> OWT:
       SUM(mach: Process) = 1;

    SequenceTasks[task,task2] WHERE (Arc = 1) -> NOSBT:
       SUM(mach: mach * Process[task:=task2]) <= SUM(mach: mach * Process);

    CycleTime[mach] -> CYCT:
       SUM(task: Dur * Process) <= Cycle;

BINARY
   Process;


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