|
EPEC solve
Solving Equilibrium Problems with Equilibrium Constraints (EPECs)
|
Data Structures | |
| class | EPEC |
| Class to handle a Nash game between leaders of Stackelberg games. More... | |
| struct | EPECAlgorithmParams |
| Stores the configuration for EPEC algorithms. More... | |
| struct | EPECStatistics |
| Stores statistics for a (solved) EPEC instance. More... | |
| class | LCP |
| Class to handle and solve linear complementarity problems. More... | |
| class | MP_Param |
| class to handle parameterized mathematical programs(MP) More... | |
| class | NashGame |
| Class to model Nash-cournot games with each player playing a QP. More... | |
| struct | QP_constraints |
| struct to handle the constraint params of MP_Param/QP_Param More... | |
| struct | QP_objective |
| struct to handle the objective params of MP_Param/QP_Param More... | |
| class | QP_Param |
| Class to handle parameterized quadratic programs(QP) More... | |
Typedefs | |
| typedef struct Game::QP_objective | QP_objective |
| struct to handle the objective params of MP_Param/QP_Param More... | |
| typedef struct Game::QP_constraints | QP_constraints |
| struct to handle the constraint params of MP_Param/QP_Param More... | |
Functions | |
| bool | isZero (arma::mat M, double tol=1e-6) noexcept |
| bool | isZero (arma::sp_mat M, double tol=1e-6) noexcept |
| std::ostream & | operator<< (std::ostream &os, const QP_Param &Q) |
| std::ostream & | operator<< (std::ostream &ost, const perps &C) |
| void | print (const perps &C) noexcept |
| arma::vec | LPSolve (const arma::sp_mat &A, const arma::vec &b, const arma::vec &c, int &status, bool Positivity=false) |
| unsigned int | ConvexHull (const std::vector< arma::sp_mat *> *Ai, const std::vector< arma::vec *> *bi, arma::sp_mat &A, arma::vec &b, const arma::sp_mat Acom={}, const arma::vec bcom={}) |
| void | compConvSize (arma::sp_mat &A, const unsigned int nFinCons, const unsigned int nFinVar, const std::vector< arma::sp_mat *> *Ai, const std::vector< arma::vec *> *bi, const arma::sp_mat &Acom, const arma::vec &bcom) |
| typedef struct Game::QP_constraints Game::QP_constraints |
struct to handle the constraint params of MP_Param/QP_Param
Refer QP_Param class for what A, B and b mean.
| typedef struct Game::QP_objective Game::QP_objective |
struct to handle the objective params of MP_Param/QP_Param
Refer QP_Param class for what Q, C and c mean.
|
strong |
Definition at line 34 of file epecsolve.h.
|
strong |
|
strong |
|
strong |
| Enumerator | |
|---|---|
| nashEqNotFound | Instance proved to be infeasible. Set of status in which the solution status of a Game::EPEC can be. |
| nashEqFound | Solution found for the instance. |
| timeLimit | Time limit reached, nash equilibrium not found. |
| numerical | Numerical issues. |
| unInitialized | Not started to solve the problem. |
| void Game::compConvSize | ( | arma::sp_mat & | A, |
| const unsigned int | nFinCons, | ||
| const unsigned int | nFinVar, | ||
| const std::vector< arma::sp_mat *> * | Ai, | ||
| const std::vector< arma::vec *> * | bi, | ||
| const arma::sp_mat & | Acom, | ||
| const arma::vec & | bcom | ||
| ) |
| unsigned int Game::ConvexHull | ( | const std::vector< arma::sp_mat *> * | Ai, |
| const std::vector< arma::vec *> * | bi, | ||
| arma::sp_mat & | A, | ||
| arma::vec & | b, | ||
| const arma::sp_mat | Acom = {}, |
||
| const arma::vec | bcom = {} |
||
| ) |
|
noexcept |
|
noexcept |
| arma::vec Game::LPSolve | ( | const arma::sp_mat & | A, |
| const arma::vec & | b, | ||
| const arma::vec & | c, | ||
| int & | status, | ||
| bool | Positivity = false |
||
| ) |
Checks if the polyhedron given by
is feasible. If yes, returns the point
in the polyhedron that minimizes
Positivity can be enforced on the variables easily.
| A | The constraint matrix |
| b | RHS of the constraint matrix |
| c | If feasible, returns a vector that minimizes along this direction |
| status | Status of the optimization problem. If optimal, this will be GRB_OPTIMAL |
| Positivity | Should be enforced? |
Definition at line 721 of file LCPtoLP.cpp.
| std::ostream& Game::operator<< | ( | std::ostream & | os, |
| const QP_Param & | Q | ||
| ) |
| std::ostream& Game::operator<< | ( | std::ostream & | ost, |
| const perps & | C | ||
| ) |
1.8.13