Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lessons from Project Phase-I zGood modeling practices yExtensive model documentation yGenerality of the model yWriting constraints zGood reporting practices.

Similar presentations


Presentation on theme: "Lessons from Project Phase-I zGood modeling practices yExtensive model documentation yGenerality of the model yWriting constraints zGood reporting practices."— Presentation transcript:

1 Lessons from Project Phase-I zGood modeling practices yExtensive model documentation yGenerality of the model yWriting constraints zGood reporting practices yTo a manager, not a professor ! yExecutive Summary - about the business yClarity, brevity, …………

2 Model documentation zIncludes defining meaningful variable names zDoesn’t hurt in any way zWhat if somebody has to continue the work you started ? zWhat if you have to take over somebody else’s work ? zEver debugged somebody’s code ? That should be a good lesson !

3 Model generality zEXTREMELY IMPORTANT zWhat do you do when (not “IF” !) the world changes ? yAddition/deletion of ports, DCs, etc. yPrices, duties, etc. change frequently y…………

4 Model generality zIntegrating model and data is a very, very bad idea. zWe won’t deduct too many points for that this time, but from Phase-II onwards, if you have data in your model………

5 A word of caution on writing constraints z5x 1 + x 2  10 z x 1 + 5x 2  10 against z6x 1 + 6x 2  20 zWhich is better ?

6 Reporting zWhenever, you make or solve a model in the real world, you will present it to higher management (senior managers, VPs, etc.) zThey’re NOT interested in methodology, or your math, unless………… zYou show them the impact on business !!

7 Reporting zMake sure your solution makes sense yLogically follows from the data (at least some major decisions) yIncludes all relevant components, e.g. xPurchasing xTransportation xInventory xCapital xDuties and taxes x…………………

8 Executive summary zSolution overview (“Best” strategy) z“Take the solution back through your calculations”………… zWhere is the money going ? yCost breakdowns by logical categories xTypes, Segments, Regions, etc. zWhat are other key issues to consider ? zAny alternatives ? With what tradeoffs ? zAt most 1-2 pages with charts, tables, etc.

9 Main report and appendices zDetailed solution and discussion, along with methodology, assumptions, etc. + zYour VALUE ADDITION !!! yCan you suggest something beyond the solution of the problem given to you ? zAppendices - for the “nerds” !

10 Project Phase-I Model: Sets zset SOURCES; zset PORTS; zset DCS; zset EDGES := (SOURCES cross PORTS) union (PORTS cross DCS);

11 Project Phase-I Model: Variables /*-------------------------------------------------- The Variables in the model are the no. of containers shipped each year on each edge ---------------------------------------------------*/ zvar Shipments{EDGES} integer >= 0; zThis is a network flow problem, so integral data implies integral solutions.

12 Project Phase-I Model: Constraints zDo not exceed supply at any source s.t. ObserveCapacity {source in SOURCES}: sum{(source, t) in EDGES} Shipments[source, t] <= SourceCap[source]; zConserve Flow at Ports s.t. ConserveFlow {port in PORTS}: sum{(f, port) in EDGES} Shipments[f, port] = sum{(port, t) in EDGES} Shipments[port, t]; zMeet Demand at DCS s.t. MeetDemand {dc in DCS}: sum{(t, dc) in EDGES} Shipments[t,dc] >= Demand[dc];

13 Project Phase-I Model: Objective function minimize TotalCost: zPurchase Price + Duties zFreight Costs zMoving Inventory Costs (pipeline) zWaiting Inventory Costs (Note: these should include the waiting time at the sources, but we forgot to tell you how often ships are scheduled to sail)

14 A not so good way for variables, but it works too zIf you don’t want to work with EDGES, you may define variables by segment, like : ShipSourcePort {SOURCES, PORTS}; ShipPortDC {PORTS, DCS}; zNot the best way, but it’s acceptable too. zUsing EDGES is much more elegant.

15 A caution on number of variables and constraints zStudent versions of Xpress and AMPL support 300 variables and 300 constraints. zTo see how many you’ve used, use the AMPL command : option show_stats 1;

16 Project Phase-I Answer z18000 containers/year - Brazil to Norfolk z2000 containers/year - Brazil to Long Beach z10000 containers/year - China to Long Beach z18000 containers/year - Norfolk to NY z12000 containers/year - Long Beach to LA zObvious solution ! Why ?

17 Project Phase-I Answer zTotal cost : $1.3-1.4 billion, depending on your assumptions y$1.2 billion purchase cost y$72 million duties y………………… zIn this phase, purchase cost (excluding duties) doesn’t affect the decision, so we can remove it from the objective function zHowever, still need to report it !

18 Project Phase-II zSomething close to the real thing zMuch more detailed model than Phase-I, so get on it ASAP ! yMultiple products yMultiple modes of transport yWeight and cube constraints y………………… zUse “option solver cplex;” before “solve;”

19 Project Phase-II zRecall this ? /* ------------------------------------------------------------------- set…………param………var…………s.t…………… Solve the problem You may need a command like option solver cplex; -------------------------------------------------------------------*/ solve; zWhy ?

20 Project Phase-II zNot a network flow problem anymore, so… zIntegral data does not imply integral solutions ! zAMPL solvers yMINOS - default, doesn’t solve IPs yCPLEX


Download ppt "Lessons from Project Phase-I zGood modeling practices yExtensive model documentation yGenerality of the model yWriting constraints zGood reporting practices."

Similar presentations


Ads by Google