Presentation is loading. Please wait.

Presentation is loading. Please wait.

Weight and Cube, Frequency zExtend Network Flows to Multicommodity zMore than one product zDifferent products share conveyance capacity zDelivery Schedules.

Similar presentations


Presentation on theme: "Weight and Cube, Frequency zExtend Network Flows to Multicommodity zMore than one product zDifferent products share conveyance capacity zDelivery Schedules."— Presentation transcript:

1 Weight and Cube, Frequency zExtend Network Flows to Multicommodity zMore than one product zDifferent products share conveyance capacity zDelivery Schedules or Frequency

2 Separate Network Flows zMove two products through the network zE.g., CPU’s and Monitors zHow does this affect our Transshipment Model?

3 With 2 Products z3 plants z2 distribution centers z2 customers zMinimize shipping costs yDirect from plant to customer yVia DC

4 A Transshipment Model zThe Sets yThe Plants  set PLANTS; yThe Distribution Centers  set DCS; yThe Customers  set CUSTS;  The Products  set PRODS;

5 Transshipment Model zThe Set of Edges zWe assume all Plant-DC, Plant-Customer, DC-Customer edges are possible. zConvenient to define a set of Edges  set EDGES := (PLANTS cross DCS) union  (PLANTS cross CUSTS) union  (DCS cross CUSTS); z

6 A Transshipment Model zThe Parameters yThe Supply at each plant of each product  param Supply{PLANTS, PRODS}; yThe Demand at each Customer for each product  param Demand{CUSTS, PRODS}; yThe Cost on each edge - cost of the truck  param Cost{EDGES};

7 A Transshipment Model zThe Variables yThe volume shipped on each edge of each product  var Ship{EDGES, PRODS} >= 0; zThe Constraints zCombine ideas of Shortest paths (flow conservation) with Transportation (meet supply and demand) for each Product

8 A Transshipment Model zFor each Plant s.t. RespectSupply {plant in PLANTS, prod in PRODS}: sum{(plant, t) in EDGES} Ship[plant,t, prod] <= Supply[plant, prod];

9 A Transshipment Model zFor each Customer s.t. MeetDemand {cust in CUSTS, prod in PRODS}: sum{(f, cust) in EDGES} Ship[f, cust, prod] >= Demand[cust, prod];

10 A Transshipment Model zFor each DC: Conserve flow s.t. ConserveFlow {dc in DCS, prod in PRODS}: sum{(f, dc) in EDGES} Ship[f,dc,prod] = sum{(dc, t) in EDGES} Ship[dc,t, prod]; zFlow into the DC = Flow out of the DC for each product

11 Modeling Trucks zThe cost per conveyance  param Cost {EDGES}; zThe number of conveyances var Conveyances{EDGES} integer >= 0; zFreight Cost in the Objective minimize FreightCost: sum {(f,t) in EDGES} Cost[f,t]*Conveyances[f,t];

12 How many Conveyances? zDifferent commodities sharing a vehicle zEasy to figure vehicle capacity for single commodity zHow to figure vehicle capacity for mixed loads?

13 Typical Approach 10 items 20 items 40% 60% 4 items 12 items

14 Formulation zBlue Vol/10 + Red Vol/20  1 zTo calculate the number of vehicles required to carry the given volumes zConveyances = Blue Vol/10 + Red Vol/20

15 Several Capacities zWeight Limit zSpace or Cube zEnsure loads meet each limit zVehicles  Blue Vol/10 + Red Vol/20 zVehicles  Blue Vol/8 + Red Vol/25 Number that reaches the weight limit Number that fills the cube

16 Counting Conveyances zWeight of each product  param Weight{PRODS}; zCube of each product  param Cube{PRODS}; zWeight Limit  param WeightLimit; zCubic capacity  param CubicCap;

17 Counting Conveyances zConveyances required by weight s.t. ConveyByWeight{(f,t) in EDGES}: Conveyances[f,t] >= sum{prod in PRODS} Ship[f,t,prod]*Weight[prod]/WeightLim it ; zConveyances required by cube s.t. ConveyByCube{(f,t) in EDGES}: Conveyances[f,t] >= sum{prod in PRODS} Ship[f,t,prod]*Cube[prod]/CubicCap ;

18 Frequency zSometimes conveyances depart on a schedule even if they are not full yTime definite delivery xLTL carriers xParcel carriers yLean Manufacturing xAuto industry yScheduled Service xOcean carriers xAir carriers x“Pool operators”

19 Impacts zNumber of conveyances required yEquipment Utilization zTime product waits for carriage yService yInventory...

20 Number of Conveyances zOne way to handle zGiven number of departures in the period modeled  param Frequency{EDGES};  var Conveyances{(f,t) in EDGES} integer >= Frequency[f,t]; zWriting these as bounds is better than adding separate constraints.

21 Inventory zSo far, just Freight zInventory Component zWe focus on moving and waiting inventory zCapture moving inventory as we did in Total Cost

22 Moving Inventory zHolding Cost * Product Value * Daily Volume * Days of Transit = Pipeline inventory cost on edge  param HoldingCost;  param Value{PRODS};  param TransitDays{EDGES}; zAssuming Ship[f,t,prod] is daily volume shipped from f to t of prod...

23 Pipeline Inventory  Sum{(f,t) in EDGES, prod in PRODS} HoldingCost*Value[prod]*Ship[f,t,pr od]* TransitDays[f,t]; zThis is the annual cost to finance the value of products that are always on the road.

24 Waiting Inventory zJust looks at waiting for transport zIgnores waiting for production and consumption. zAssumes smooth or uniform operations zIf carrier departs once every 5 days, ysome parts arrive just after last departure ysome parts arrive just before next departure yon average parts wait about 2.5 days yadd this to the transit time

25 Adding Waiting Time zIf Frequency is given in departures per day (e.g., Frequency of 0.2 = 1 every 5 days) z1/Frequency = Days between departures z0.5/Frequency = Average days product waits for transport

26 Pipeline and Waiting Inventory  Sum{(f,t) in EDGES, prod in PRODS} HoldingCost*Value[prod]*Ship[f,t,pr od]* (TransitDays[f,t]+0.5/Frequency[f,t ]); zThis assumes the system operates like a subway and pays inventory on riders from the time they put their token in at the first station till they exit the last station. zAdd this to the objective to minimize freight and inventory costs


Download ppt "Weight and Cube, Frequency zExtend Network Flows to Multicommodity zMore than one product zDifferent products share conveyance capacity zDelivery Schedules."

Similar presentations


Ads by Google