flowshop_simu - maxplus linear system simulation ( flowshop )
nm is a vector which yields the numbers of machines of each type working in parallel.
np is a vector which yields the numbers of pallets of each type (parts of each type are carried by specialized pallets).
flowshop_simu simulates a flowshop viewed as a maxplus linear system.
The input data u is a matrix, the number of columns being the number of steps in the simulation (number of events of each type to be produced), the number of rows is the number of inputs (which is equal to the size of nm plus the size of np). An entry of u tells at which date the input (machine or part corresponding to the row number) is made available for the k-th time, k being the column number (event number).
l yields the inverse of the throughput.
The result of the simulation is held by y which is a matrix the columns of which are again numbered according to events whereas the rows are associated with the same resources (parts or machines) as for u. An entry of y is equal to the date at which the corresponding part or machine is delivered or freed minus the drift term (defined as the event number divided by the throughput). This normalisation keeps y bounded and one can identify the transient part and the asymptotic periodic part.
PT=#([2,1;%0,1;4,%0]); s=flowshop(PT); u=ones(5,1)*[1:20]; // there are 5 inputs [l,y]=flowshop_simu(s,[1,1,1],[2,2],u) //there are 5 outputs plot2d(y');