public class StochasticDemand extends FiniteMDP<InvLevel,Order>
Constructor and Description |
---|
StochasticDemand(States<InvLevel> initSet,
int lastStage,
int maxInventory,
int maxBackorders,
int truckSize,
double K,
double b,
double price,
double cost,
double h,
double theta) |
Modifier and Type | Method and Description |
---|---|
Actions<Order> |
feasibleActions(InvLevel i,
int t)
Returns the actions available at this state i and at this stage
t .
|
double |
finalCost(InvLevel i)
This method returns the cost incurred if the last stage ends
with the system at state i.
|
double |
immediateCost(InvLevel i,
Order a,
int t)
This function must return the Immediate cost incurred when
taking action a from state i
|
static void |
main(java.lang.String[] a) |
double |
prob(InvLevel i,
InvLevel j,
Order a,
int t)
This is the probability of going from state i to state j by
taking the action a at stage t.
|
States<InvLevel> |
reachable(InvLevel i,
Order a,
int t)
Set of States that can be reached from this state i, at this
stage t, after taking the acton a.
|
defaultFinalCost, getHorizon, getStates
debug, debug, debug, getDebugLevel, getOptimalPolicy, getOptimalValueFunction, getReporter, getSolver, isFinite, isSolved, operation, printSolution, printSolution, setDebugLevel, setReporter, setSolver, solve
public StochasticDemand(States<InvLevel> initSet, int lastStage, int maxInventory, int maxBackorders, int truckSize, double K, double b, double price, double cost, double h, double theta)
initSet
- Initial level of inventory of the systemlastStage
- the last stage of the problemmaxInventory
- maximum physical capacity in inventory, warehouse size.maxBackorders
- maximum backorders allowedtruckSize
- maximum items in each fixed cost order. Orders can be greater
than this value, but will be charged more than one fixed cost.K
- fixed cost per orderb
- unit cost per backordered item per stageprice
- unit price for all stagescost
- unit costo for all stagesh
- inventory percentual holding cost as a fraction of costtheta
- demand meanpublic double finalCost(InvLevel i)
FiniteMDP
public double prob(InvLevel i, InvLevel j, Order a, int t)
FiniteMDP
public double immediateCost(InvLevel i, Order a, int t)
FiniteMDP
immediateCost
in class FiniteMDP<InvLevel,Order>
i
- Current statea
- Actiont
- Current time stagepublic Actions<Order> feasibleActions(InvLevel i, int t)
FiniteMDP
feasibleActions
in class FiniteMDP<InvLevel,Order>
i
- Current Statet
- Time stagepublic States<InvLevel> reachable(InvLevel i, Order a, int t)
FiniteMDP
public static void main(java.lang.String[] a) throws java.lang.Exception
a
- Not usedjava.lang.Exception