Class sdm::ActionVFMaxplanLP

Class List > sdm > ActionVFMaxplanLP

  • #include <action_maxplan_lp.hpp>

Inherits the following classes: sdm::ActionVFBase, sdm::DecentralizedLP

Inherited by the following classes: sdm::ActionVFMaxplanLPSerial

Public Types

Type Name
typedef std::shared_ptr< State > TData

Public Functions

Type Name
ActionVFMaxplanLP ()
ActionVFMaxplanLP (const std::shared_ptr< SolvableByHSVI > & world)
virtual void createConstraints (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, IloEnv & env, IloModel & model, IloRangeArray & con, IloNumVarArray & var, number & index, number t)
Create the constraints of the LP.
virtual void createDecentralizedConstraints (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloRangeArray & con, IloNumVarArray & var, number & index, number t)
Set decentralized constraints.
virtual void createDecentralizedVariables (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloNumVarArray & var, number & index, number t)
Set decentralized variables.
virtual void createObjectiveFunction (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, IloNumVarArray & var, IloObjective & obj, number t)
Create a Objective Constraint of the LP.
virtual void createVariables (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, IloEnv & env, IloNumVarArray & var, number & index, number t)
Create the variable which will be used to resolve the LP.
virtual std::shared_ptr< Action > getVariableResult (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, const IloCplex & cplex, const IloNumVarArray & var, number t)
Get the result of the variable created.
virtual Pair< std::shared_ptr< Action >, double > selectBestAction (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, number t)
Select the best action and the hyperplan at t+1 associated for a state at a precise time.

Public Functions inherited from sdm::ActionVFBase

See sdm::ActionVFBase

Type Name
ActionVFBase ()
ActionVFBase (const std::shared_ptr< SolvableByHSVI > & world)
virtual Pair< std::shared_ptr< Action >, double > selectBestAction (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, number t) = 0
Select the best action for a state at a precise time.
virtual ~ActionVFBase ()

Public Functions inherited from sdm::ActionVFInterface

See sdm::ActionVFInterface

Type Name
virtual Pair< std::shared_ptr< Action >, double > selectBestAction (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, number t) = 0
Select the best action for a state at a precise time.

Public Functions inherited from sdm::DecentralizedLP

See sdm::DecentralizedLP

Type Name
DecentralizedLP ()
DecentralizedLP (const std::shared_ptr< SolvableByHSVI > &)
virtual void createDecentralizedConstraints (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloRangeArray & con, IloNumVarArray & var, number & index, number t) = 0
Set decentralized constraints.
void createDecentralizedConstraintsOccupancy (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloRangeArray & con, IloNumVarArray & var, number & index, number t)
void createDecentralizedConstraintsSerial (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloRangeArray & con, IloNumVarArray & var, number & index, number t)
virtual void createDecentralizedVariables (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloNumVarArray & var, number & index, number t) = 0
Set decentralized variables.
void createDecentralizedVariablesOccupancy (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloNumVarArray & var, number & index, number t)
void createDecentralizedVariablesSerial (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloNumVarArray & var, number & index, number t)
virtual std::shared_ptr< Action > getVariableResult (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, const IloCplex & cplex, const IloNumVarArray & var, number t) = 0
Get the result of the variable created.
std::shared_ptr< Action > getVariableResultOccupancy (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, const IloCplex & cplex, const IloNumVarArray & var, number t)
std::shared_ptr< Action > getVariableResultSerial (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, const IloCplex & cplex, const IloNumVarArray & var, number t)

Public Functions inherited from sdm::VarNaming

See sdm::VarNaming

Type Name
number getNumber (const std::string &)
Get the identifier associated with a given name.
std::string getVarNameIndividualHistory (const std::shared_ptr< HistoryInterface > & ihistory, const number agent)
std::string getVarNameIndividualHistoryDecisionRule (const std::shared_ptr< Action > &, const std::shared_ptr< HistoryInterface > &, const number &)
Get the name associated with a pair of action and individual history.
std::string getVarNameJointHistoryDecisionRule (const std::shared_ptr< Action > &, const std::shared_ptr< JointHistoryInterface > &)
Get the name associated with a pair of action and joint history.
std::string getVarNameWeight (number)
Get the name of a free variable.
std::string getVarNameWeightedStateJointHistory (const std::shared_ptr< State > &, const std::shared_ptr< State > &, const std::shared_ptr< JointHistoryInterface > &)
Get the Var Name Weighted State __Joint History object.
void setNumber (const std::string &, number)
Set pair name identifier for a given variable.

Public Functions inherited from sdm::LPBase

See sdm::LPBase

Type Name
LPBase ()
LPBase (const std::shared_ptr< SolvableByHSVI > &)
virtual Pair< std::shared_ptr< Action >, double > createLP (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, number t)
Main function who is used to create the Linear program.
~LPBase ()

Public Functions inherited from sdm::LPInterface

See sdm::LPInterface

Type Name
virtual void createConstraints (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, IloEnv & env, IloModel & model, IloRangeArray & con, IloNumVarArray & var, number & index, number t) = 0
Create the constraints of the LP.
virtual Pair< std::shared_ptr< Action >, double > createLP (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, number t) = 0
Main function who is used to create the Linear program.
virtual void createObjectiveFunction (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, IloNumVarArray & var, IloObjective & obj, number t) = 0
Create a Objective Constraint of the LP.
virtual void createVariables (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, IloEnv & env, IloNumVarArray & var, number & index, number t) = 0
Create the variable which will be used to resolve the LP.
virtual std::shared_ptr< Action > getVariableResult (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & occupancy_state, const IloCplex & cplex, const IloNumVarArray & var, number t) = 0
Get the result of the variable created.

Protected Attributes inherited from sdm::ActionVFBase

See sdm::ActionVFBase

Type Name
std::shared_ptr< SolvableByHSVI > world_

Protected Attributes inherited from sdm::VarNaming

See sdm::VarNaming

Type Name
RecursiveMap< std::string, number > variables
mapping from variable names to variable identifiers

Protected Attributes inherited from sdm::LPBase

See sdm::LPBase

Type Name
std::shared_ptr< BeliefInterface > tmp_representation
The temporary one-stage value function represention.
std::shared_ptr< SolvableByHSVI > world_

Protected Functions inherited from sdm::DecentralizedLP

See sdm::DecentralizedLP

Type Name
void createDecentralizedConstraintsIndividual (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloRangeArray & con, IloNumVarArray & var, number & index, number t, number agent_id)
_Create the Individual Decentralized Constraints i.e. set constraint {u_i} a_i(u_i
void createDecentralizedConstraintsJoint (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloRangeArray & con, IloNumVarArray & var, number & index, number t)
Create the Joint _Decentralized Constraints i.e. set constraint a(u
void createDecentralizedControlConstraints (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloRangeArray & con, IloNumVarArray & var, number & index, number t)
_Create the Control Decentralized Constraints i.e. set constraint a(u
void createDecentralizedVariablesIndividual (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloNumVarArray & var, number & index, number t, number agent_id)
_Create the Individual Decentralized Variable i.e. Build variables a_i(u_i
void createDecentralizedVariablesJoint (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, IloEnv & env, IloNumVarArray & var, number & index, number t)
Create the Joint _Decentralized Variable i.e. Build variables a(u
Pair< std::vector< std::shared_ptr< Item > >, std::vector< std::shared_ptr< Item > > > getVariableResultIndividual (const std::shared_ptr< ValueFunction > & vf, const std::shared_ptr< State > & state, const IloCplex & cplex, const IloNumVarArray & var, number t, number agent_id)
_Get the Individual Variable Result i.e. return the result for the variable a(u

Public Types Documentation

typedef TData

using sdm::ActionVFMaxplanLP::TData =  std::shared_ptr<State>;

Public Functions Documentation

function ActionVFMaxplanLP [1/2]

sdm::ActionVFMaxplanLP::ActionVFMaxplanLP () 

function ActionVFMaxplanLP [2/2]

sdm::ActionVFMaxplanLP::ActionVFMaxplanLP (
    const std::shared_ptr< SolvableByHSVI > & world
) 

function createConstraints

virtual void sdm::ActionVFMaxplanLP::createConstraints (
    const std::shared_ptr< ValueFunction > & vf,
    const std::shared_ptr< State > & occupancy_state,
    IloEnv & env,
    IloModel & model,
    IloRangeArray & con,
    IloNumVarArray & var,
    number & index,
    number t
) 

Parameters:

  • occupancy_state
  • env
  • con
  • var
  • index
  • t

Implements sdm::LPInterface::createConstraints

function createDecentralizedConstraints

virtual void sdm::ActionVFMaxplanLP::createDecentralizedConstraints (
    const std::shared_ptr< ValueFunction > & vf,
    const std::shared_ptr< State > & state,
    IloEnv & env,
    IloRangeArray & con,
    IloNumVarArray & var,
    number & index,
    number t
) 

Parameters:

  • const std::shared_ptr<State>&
  • IloEnv&
  • IloRangeArray&
  • IloNumVarArray&
  • number&
  • number : time step

Implements sdm::DecentralizedLP::createDecentralizedConstraints

function createDecentralizedVariables

virtual void sdm::ActionVFMaxplanLP::createDecentralizedVariables (
    const std::shared_ptr< ValueFunction > & vf,
    const std::shared_ptr< State > & state,
    IloEnv & env,
    IloNumVarArray & var,
    number & index,
    number t
) 

Parameters:

  • const std::shared_ptr<State>& : current state
  • const IloEnv&
  • const IloNumVarArray&
  • const number& : index variable
  • number : time step

Implements sdm::DecentralizedLP::createDecentralizedVariables

function createObjectiveFunction

virtual void sdm::ActionVFMaxplanLP::createObjectiveFunction (
    const std::shared_ptr< ValueFunction > & vf,
    const std::shared_ptr< State > & occupancy_state,
    IloNumVarArray & var,
    IloObjective & obj,
    number t
) 

Parameters:

  • occupancy_state
  • var
  • obj
  • t

Implements sdm::LPInterface::createObjectiveFunction

function createVariables

virtual void sdm::ActionVFMaxplanLP::createVariables (
    const std::shared_ptr< ValueFunction > & vf,
    const std::shared_ptr< State > & occupancy_state,
    IloEnv & env,
    IloNumVarArray & var,
    number & index,
    number t
) 

Parameters:

  • occupancy_state
  • env
  • var
  • t

Implements sdm::LPInterface::createVariables

function getVariableResult

virtual std::shared_ptr< Action > sdm::ActionVFMaxplanLP::getVariableResult (
    const std::shared_ptr< ValueFunction > & vf,
    const std::shared_ptr< State > & state,
    const IloCplex & cplex,
    const IloNumVarArray & var,
    number t
) 

Parameters:

  • state
  • cplex
  • var
  • t

Returns:

std::shared_ptr<Action>

Implements sdm::DecentralizedLP::getVariableResult

function selectBestAction

virtual Pair < std::shared_ptr< Action >, double > sdm::ActionVFMaxplanLP::selectBestAction (
    const std::shared_ptr< ValueFunction > & vf,
    const std::shared_ptr< State > & state,
    number t
) 

Parameters:

  • const std::shared_ptr<ValueFunction>& vf : Value function
  • const std::shared_ptr<State>& state : current state
  • number t : time step

Returns:

Pair<std::shared_ptr<Action>,TData> : best action and the hyperplan at t+1 associated

Implements sdm::ActionVFBase::selectBestAction


The documentation for this class was generated from the following file src/sdm/utils/value_function/action_vf/action_maxplan_lp.hpp