public class sS_ForwardRecursion extends ForwardRecursion
Recursion.OptimisationDirection
direction, horizonLength, stateMonitoring, stateSpace, transitionProbability, valueRepository
Constructor and Description |
---|
sS_ForwardRecursion(umontreal.ssj.probdist.Distribution[] demand,
double minDemand,
double maxDemand,
double fixedOrderingCost,
double proportionalOrderingCost,
double holdingCost,
double penaltyCost)
Creates an instance of the problem and initialises state space, transition probability and value repository.
|
Modifier and Type | Method and Description |
---|---|
sS_State |
find_s(int period) |
sS_State |
find_S(int period) |
double |
getExpectedCost(double initialInventory) |
double |
getExpectedCost(sS_StateDescriptor stateDescriptor) |
sS_Action |
getOptimalAction(sS_StateDescriptor stateDescriptor) |
double[][] |
getOptimalPolicy(double initialInventory) |
sS_TransitionProbability |
getTransitionProbability()
Returns the
TransitionProbability of the stochastic process. |
sS_CostRepository |
getValueRepository()
Returns the
ValueRepository of the stochastic process. |
double |
runForwardRecursion(State state)
Runs the forward recursion algorithm for the given stochastic dynamic program and
computes the expected value function starting from state
state . |
getMonitoringInterfaceForward, runForwardRecursionMonitoring
getExpectedValue, getStateSpace, getStateSpace, setStateMonitoring
public sS_ForwardRecursion(umontreal.ssj.probdist.Distribution[] demand, double minDemand, double maxDemand, double fixedOrderingCost, double proportionalOrderingCost, double holdingCost, double penaltyCost)
demand
- the distribution of random demand in each period, an array of Distribution
.minDemand
- the support lower boundmaxDemand
- the support upper boundfixedOrderingCost
- the fixed ordering cost.proportionalOrderingCost
- the proportional (per unit) ordering cost.holdingCost
- the proportional (per unit) holding cost; this is paid for each item brought from one period to the next.penaltyCost
- the proportional (per unit) penalty cost; this is paid for each item short at the end of each period.public sS_TransitionProbability getTransitionProbability()
Recursion
TransitionProbability
of the stochastic process.getTransitionProbability
in class Recursion
TransitionProbability
of the stochastic process.public sS_CostRepository getValueRepository()
Recursion
ValueRepository
of the stochastic process.getValueRepository
in class Recursion
ValueRepository
of the stochastic process.public double runForwardRecursion(State state)
ForwardRecursion
state
.runForwardRecursion
in class ForwardRecursion
state
- the initial state.state
.public double[][] getOptimalPolicy(double initialInventory)
public double getExpectedCost(double initialInventory)
public double getExpectedCost(sS_StateDescriptor stateDescriptor)
public sS_Action getOptimalAction(sS_StateDescriptor stateDescriptor)
public sS_State find_S(int period)
public sS_State find_s(int period)
Copyright © 2017–2018. All rights reserved.