ShipSmart TM : The Model and the Computer Science Jonathan Sheffi University of Maryland College...

46
ShipSmart ShipSmart TM TM : : The Model and the Computer The Model and the Computer Science Science Jonathan Sheffi University of Maryland College Park April 17, 2000

Transcript of ShipSmart TM : The Model and the Computer Science Jonathan Sheffi University of Maryland College...

ShipSmartShipSmartTMTM::The Model and the Computer The Model and the Computer ScienceScience

Jonathan Sheffi

University of Maryland College Park

April 17, 2000

OutlineOutline

The EOQ Model Reliability and Safety

Stock Internal Structure of

ShipSmart ShipSmart™ Example Object-Oriented

Programming

Tradeoff: Production Batch vs. InventoryTradeoff: Production Batch vs. Inventory

similar tosimilar to

Tradeoff: Shipment Size vs. InventoryTradeoff: Shipment Size vs. Inventory

• Production setup costs vs. Inventory carrying Production setup costs vs. Inventory carrying costscosts

• Transportation costs vs. Inventory carrying Transportation costs vs. Inventory carrying costscosts

Lot Size InventoryLot Size Inventory

A simple business:A simple business: • • Order fixed quantity of goods at fixed intervalsOrder fixed quantity of goods at fixed intervals • • Sell at constant rateSell at constant rate

In StockIn Stock

TimeTime

Inventory costs = quantity x timeInventory costs = quantity x timeInventory costs = quantity x timeInventory costs = quantity x time

Economic Order Quantity ModelEconomic Order Quantity Model

Time (days)

Stock (# of items)

A Single Receiving CycleA Single Receiving Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13Time (days)

Stock (# of items)

A Single Receiving CycleA Single Receiving Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13Time (days)

Stock (# of items)

X

A Single Receiving CycleA Single Receiving Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13Time (days)

Stock (# of items)

X

A Single Receiving CycleA Single Receiving Cycle

1 2 3 4 5 6 7 8 9 10 11 12 13Time (days)

Stock (# of items)

X

Y

Smaller (and more frequent) shipments imply lower Smaller (and more frequent) shipments imply lower inventory carrying costsinventory carrying costs

Smaller (and more frequent) shipments imply lower Smaller (and more frequent) shipments imply lower inventory carrying costsinventory carrying costs

A Single Receiving CycleA Single Receiving Cycle

TradeofTradeoffs:fs:

Smaller shipments • low inventory costs• high transportation costs

Large shipments • high inventory costs• low transportation costs

In addition:In addition:

Inventory cost-in transit

InventoryInventoryCarrying Carrying Costs/UnitCosts/Unit

In-TransitIn-TransitInventoryInventory

Shipment SizeShipment Size

Inventory CostsInventory Costs

Shipment Size

LTL Rate

Actual rate curve

0

2

4

6

8

10

12

14

0 2 4 6 8 10

Formula rate curve

Transportation CostsTransportation Costs

Basic TradeoffsBasic Tradeoffs

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

($/item)COSTS

Shipment Size(items/shipment)

Basic TradeoffsBasic Tradeoffs

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6

Transportationcosts

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

($/item)COSTS

Shipment Size(items/shipment)

Basic TradeoffsBasic Tradeoffs

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6

Transportationcosts

Cycleinventory

costs

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

($/item)COSTS

Shipment Size(items/shipment)

Basic TradeoffsBasic Tradeoffs

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6

In-TransitInventory

Transportationcosts

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

($/item)COSTS

Shipment Size(items/shipment)

Cycleinventory

costs

Basic TradeoffsBasic Tradeoffs

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6

In-TransitInventory

Transportationcosts

Total inventory

costs

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

($/item)COSTS

Shipment Size(items/shipment)

Cycleinventory

costs

Basic TradeoffsBasic Tradeoffs

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6

In-TransitInventory

Total logisticscosts

Transportationcosts

Total inventory

costs

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

($/item)COSTS

Shipment Size(items/shipment)

Cycleinventory

costs

Basic TradeoffsBasic Tradeoffs

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6

In-TransitInventory

Total logisticscosts

Transportationcosts

Total inventory

costs

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Opt. size

($/item)COSTS

Shipment Size(items/shipment)

Cycleinventory

costs

Basic TradeoffsBasic Tradeoffs

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6

In-TransitInventory

Total logisticscosts

Transportationcosts

Total inventory

costs

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Logistics Cost Components as aLogistics Cost Components as aFunction of Shipment SizeFunction of Shipment Size

Opt. size

($/item)COSTS

Shipment Size(items/shipment)

Least costCycle

inventorycosts

TotalTotal Logistics CostLogistics Cost

Safety Stock CostsSafety Stock Costs

In Transit Inventory CostsIn Transit Inventory Costs

Transportation CostsTransportation Costs

Cycle Inventory CostsCycle Inventory Costs

Other CostsOther Costs

Elements of Total Logistics Costs

TotalTotalLogisticsLogistics

CostsCosts

= 2 * (Cycle Inventory Costs) (Transportation Costs)2 * (Cycle Inventory Costs) (Transportation Costs)

(Demand Rate)(Demand Rate)

In-transitIn-transitInventoryInventory

CostsCosts

SafetySafetyStockStockCostsCosts

OtherOtherCostsCosts

Analytical Expressions

OptimalOptimalShipmentShipment

SizeSize=

2 * (Transportation costs) (Demand rate)2 * (Transportation costs) (Demand rate)

(Cycle Inventory Costs)(Cycle Inventory Costs)

Transit TimesTransit Times

Transit delivery times varyin random fashion.

Transit delivery times varyin random fashion.

Each mode and carrier ischaracterized by a distribution

of delivery times.

Each mode and carrier ischaracterized by a distribution

of delivery times.

InventoryInventory

TimeTime

Effect of Shipment DelayEffect of Shipment Delay

Regular on-time delivery

InventoryInventory

TimeTimeDelay

One delivery delayed

Effect of Shipment DelayEffect of Shipment Delay

InventoryInventory

TimeTimeDelay

Delivery pattern with a single delay

Effect of Shipment DelayEffect of Shipment Delay

InventoryInventory

TimeTimeDelay

Erratic delivery pattern

Effect of Shipment DelayEffect of Shipment Delay

Effect of Safety StockEffect of Safety Stock

InventoryInventory

TimeTime

Safety stock level

InventoryInventory

TimeTime

Avoiding stock-out

Effect of Safety StockEffect of Safety Stock

Transit Time

Probability

Transit Time Density FunctionTransit Time Density Function

Transit Time

Probability

Average Time

Transit Time Density FunctionTransit Time Density Function

Transit Time

Probability

95 PercentileAverage Time

Transit Time Density FunctionTransit Time Density Function

Transit Time

Probability

95 PercentileAverage Time

Safety Time

Transit Time Density FunctionTransit Time Density Function

Transit Time

Probability

95 PercentileAverage Time

Safety Time

Safety Stock for 95% Fill Rate =

(Safety Time) x (Sales Rate)

Transit Time Density FunctionTransit Time Density Function

The Internal StructureThe Internal Structure

Calculations are performed for each option separately

In case there is one segment:– Optimal shipment size is calculated

using the EOQ formula– Takes into account minimum

frequency and storage capacity– Calculates all other output values

The Internal StructureThe Internal Structure

For multiple segments:– Rank vehicle capacities– Find how many vehicles are needed

for each segment– Loop over the second largest, third

largest, etc.– Use optimal solution to calculate all

output values (including the segment solutions)

ShipSmart Example ShipSmart Example

Tactics for the Rail Tactics for the Rail OperatorOperator Reduce shipment price Tighten delivery time Tighten reliability Compete for lower valued

commodities Compete for commodities which

ship in high volume

Procedural vs. OOPProcedural vs. OOP

Procedural programming:– Organize system around procedures that operate on

data (do-something <data> <arg> ...)

(do-another-thing <data>)

Object-oriented programming:– Organize system around objects that receive messages (<object> 'do-something <arg>)

(<object> 'do-another-thing)– An object encapsulates data and operations

Advantages of OOPAdvantages of OOP• Simplicity: software objects model real world objects, so the

complexity is reduced and the program structure is very clear

• Modularity: each object forms a separate entity whose internal workings are decoupled from other parts of the system

• Modifiability: it is easy to make minor changes in the data representation or the procedures in an OO program. Changes in the behavior of an object do not affect any other part of a program, since the only public interface that the external world has to an object is through messages

• Extensibility: adding new features or responding to changing operating environments can be solved by introducing a few new objects and modifying some existing ones

• Maintainability: objects can be maintained separately, making locating and fixing problems easier

• Reusability: objects can be reused in different programs

Elements of OOPElements of OOP

Class: – specifies the common behavior of

entities

Instance:– A particular object or entity of a given

class

Space War Class DiagramSpace War Class DiagramSHIP

position:velocity:num-torps:

POSITIONVELOCITYMOVESHIP?ATTACKDISPLAYCLOCK-TICKEXPLODE

PLANET

position:

POSITIONPLANET?DISPLAYCLOCK-TICK

TORPEDOposition:velocity:target:proximity-fuse:

TORPEDO?POSITIONVELOCITYMOVEDISPLAYCLOCK-TICK

Space War Class DiagramSpace War Class DiagramSHIP

position:velocity:num-torps:

POSITIONVELOCITYMOVESHIP?ATTACKDISPLAYCLOCK-TICKEXPLODE

PLANET

position:

POSITIONPLANET?DISPLAYCLOCK-TICK

TORPEDOposition:velocity:target:proximity-fuse:

TORPEDO?POSITIONVELOCITYMOVEDISPLAYCLOCK-TICK

• Ships and torpedoes have some behavior that is the same – is there are way to capture this commonality?

Space war game with Space war game with InheritanceInheritance MOBILE-THING

position:velocity:

MOBILE-THING?POSITIONVELOCITYMOVE

SHIPnum-torps:

SHIP?ATTACKDISPLAYCLOCK-TICKEXPLODE

TORPEDOtarget:proximity-fuse:

TORPEDO?DISPLAYCLOCK-TICK

is-ais-a

SHIP class is a specialization or sub-class of the MOBILE-THING class

– SHIP is-a MOBILE-THING

– SHIP inherits the state and behavior of MOBILE-THING

MOBILE-THING class is a super-class of the SHIP and TORPEDO classes

PLANET

position:

POSITIONPLANET?DISPLAYCLOCK-TICK

has-atarget

Any Questions?Any Questions?? ??

??

?

Jon [email protected]