Class sdm::DecentralizedLP
Class List > sdm > DecentralizedLP
#include <decentralized_lp_problem.hpp>
Inherits the following classes: sdm::VarNaming, sdm::LPBase
Inherited by the following classes: sdm::ActionVFMaxplanLP, sdm::ActionVFSawtoothLP
Public Functions
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::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
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 Functions Documentation
function DecentralizedLP [1/2]
sdm::DecentralizedLP::DecentralizedLP ()
function DecentralizedLP [2/2]
sdm::DecentralizedLP::DecentralizedLP (
const std::shared_ptr< SolvableByHSVI > &
)
function createDecentralizedConstraints
virtual void sdm::DecentralizedLP::createDecentralizedConstraints (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
IloEnv & env,
IloRangeArray & con,
IloNumVarArray & var,
number & index,
number t
) = 0
Parameters:
const
std::shared_ptr<State>&IloEnv&
IloRangeArray&
IloNumVarArray&
number&
number
: time step
function createDecentralizedConstraintsOccupancy
void sdm::DecentralizedLP::createDecentralizedConstraintsOccupancy (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
IloEnv & env,
IloRangeArray & con,
IloNumVarArray & var,
number & index,
number t
)
function createDecentralizedConstraintsSerial
void sdm::DecentralizedLP::createDecentralizedConstraintsSerial (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
IloEnv & env,
IloRangeArray & con,
IloNumVarArray & var,
number & index,
number t
)
function createDecentralizedVariables
virtual void sdm::DecentralizedLP::createDecentralizedVariables (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
IloEnv & env,
IloNumVarArray & var,
number & index,
number t
) = 0
Parameters:
const
std::shared_ptr<State>& : current stateconst
IloEnv&const
IloNumVarArray&const
number& : index variablenumber
: time step
function createDecentralizedVariablesOccupancy
void sdm::DecentralizedLP::createDecentralizedVariablesOccupancy (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
IloEnv & env,
IloNumVarArray & var,
number & index,
number t
)
function createDecentralizedVariablesSerial
void sdm::DecentralizedLP::createDecentralizedVariablesSerial (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
IloEnv & env,
IloNumVarArray & var,
number & index,
number t
)
function getVariableResult
virtual std::shared_ptr< Action > sdm::DecentralizedLP::getVariableResult (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
const IloCplex & cplex,
const IloNumVarArray & var,
number t
) = 0
Parameters:
state
cplex
var
t
Returns:
std::shared_ptr<Action>
Implements sdm::LPInterface::getVariableResult
function getVariableResultOccupancy
std::shared_ptr< Action > sdm::DecentralizedLP::getVariableResultOccupancy (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
const IloCplex & cplex,
const IloNumVarArray & var,
number t
)
function getVariableResultSerial
std::shared_ptr< Action > sdm::DecentralizedLP::getVariableResultSerial (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
const IloCplex & cplex,
const IloNumVarArray & var,
number t
)
Protected Functions Documentation
function createDecentralizedConstraintsIndividual
void sdm::DecentralizedLP::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
)
Parameters:
const
std::shared_ptr<State> & : state :IloEnv
& : envIloRangeArray
& : conIloNumVarArray
& : varnumber
& : index variablenumber
: timestepnumber
: agent_id
function createDecentralizedConstraintsJoint
void sdm::DecentralizedLP::createDecentralizedConstraintsJoint (
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> & : state :IloEnv
& : envIloRangeArray
& : conIloNumVarArray
& : varnumber
& : index variablenumber
: timestep
function createDecentralizedControlConstraints
void sdm::DecentralizedLP::createDecentralizedControlConstraints (
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> & : state :IloEnv
& : envIloRangeArray
& : conIloNumVarArray
& : varnumber
& : index variablenumber
: timestep
function createDecentralizedVariablesIndividual
void sdm::DecentralizedLP::createDecentralizedVariablesIndividual (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
IloEnv & env,
IloNumVarArray & var,
number & index,
number t,
number agent_id
)
Parameters:
const
std::shared_ptr<State> & : state :IloEnv
& : envIloNumVarArray
& : varnumber
& : index variablenumber
: timestepnumber
: agent_id
function createDecentralizedVariablesJoint
void sdm::DecentralizedLP::createDecentralizedVariablesJoint (
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> & : state :IloEnv
& : envIloNumVarArray
& : varnumber
& : index variablenumber
: timestep
function getVariableResultIndividual
Pair < std::vector< std::shared_ptr< Item > >, std::vector< std::shared_ptr< Item > > > sdm::DecentralizedLP::getVariableResultIndividual (
const std::shared_ptr< ValueFunction > & vf,
const std::shared_ptr< State > & state,
const IloCplex & cplex,
const IloNumVarArray & var,
number t,
number agent_id
)
Parameters:
const
std::shared_ptr<State> & : state :const
IloCplex & : cplexIloNumVarArray
& : varnumber
: timestepnumber
: agent_id
Returns:
Pair<std::vector<std::shared_ptr<Item>>,std::vector<std::shared_ptr<Item>>> , the first vector refers to the vector of discrete action and the second vector refers to the vector of individual history
The documentation for this class was generated from the following file src/sdm/utils/linear_programming/decentralized_lp_problem.hpp