Different versions of a portfolio optimization problem.
Basic modelling and solving tasks:
- modeling and solving a small LP problem (foliolp)
- performing explicit initialization (folioini*)
- data input from file, index sets (foliodata, requires foliocpplp.dat)
- modeling and solving a small MIP problem with binary variables (foliomip1)
- modeling and solving a small MIP problem with semi-continuous variables (foliomip2)
- modeling and solving QP and MIQP problems (folioqp, requires foliocppqp.dat)
- modeling and solving QCQP problems (folioqc, requires foliocppqp.dat)
- heuristic solution of a MIP problem (folioheur)
Advanced modeling and solving tasks:
- enlarged version of the basic MIP model (foliomip3 with include file readfoliodata.c_, to be used with data set folio10.cdat)
- defining an integer solution callback (foliocb)
- using the MIP solution pool (foliosolpool)
- using the solution enumerator (folioenumsol)
- handling infeasibility through deviation variables (folioinfeas)
- retrieving IIS (folioiis)
- using the built-in infeasibility repair functionality (foliorep)
Further explanation of this example:
'Getting Started with BCL' for the basic modelling and solving tasks; 'Advanced Evaluators Guide' for solution enumeration and infeasibilit handling