FICO
FICO Xpress Optimization Examples Repository
FICO Optimization Community FICO Xpress Optimization Home
Back to examples browserPrevious example

Folio - Examples from 'Getting Started'

Description
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

xbfoliocpp.zip[download all files]

Source Files

Data Files





folio10.cdat

SHARES: treasury1 treasury2 treasury3 treasury4 treasury5 treasury6 treasury7 treasury8 treasury9 treasury10 hardware1 hardware2 hardware3 hardware4 hardware5 hardware6 hardware7 hardware8 hardware9 hardware10 theater1 theater2 theater3 theater4 theater5 theater6 theater7 theater8 theater9 theater10 telecom1 telecom2 telecom3 telecom4 telecom5 telecom6 telecom7 telecom8 telecom9 telecom10 brewery1 brewery2 brewery3 brewery4 brewery5 brewery6 brewery7 brewery8 brewery9 brewery10 highways1 highways2 highways3 highways4 highways5 highways6 highways7 highways8 highways9 highways10 cars1 cars2 cars3 cars4 cars5 cars6 cars7 cars8 cars9 cars10 bank1 bank2 bank3 bank4 bank5 bank6 bank7 bank8 bank9 bank10 software1 software2 software3 software4 software5 software6 software7 software8 software9 software10 electronics1 electronics2 electronics3 electronics4 electronics5 electronics6 electronics7 electronics8 electronics9 electronics10;
REGIONS: EU NA APAC;
TYPES: bonds technology entertainment telecom food construction manufacturing finance;

RISK: 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99;
RET: 5.29 2.8 3.59 6.97 3.3 3.02 2.98 3.41 3.93 3.86 11.36 17.23 16.31 21.1 13.76 9.31 16.99 24.85 18.52 12.79 36.1 19.4 23.5 34.61 16.91 27.04 25.82 24.99 36.89 31.71 10.89 17.98 12.31 6.53 6.11 15.89 12.46 11.11 16.6 13.93 8.79 9.35 8.88 11.63 6.21 9.26 4.77 5.98 10.92 5.26 5.39 4.85 8.34 8.48 6.42 11.04 13.15 10.01 7.71 11.07 5.74 7.13 8.75 5.08 6.23 8.19 8.03 5.96 4.17 8.11 6.79 3.01 4.92 4.14 8.98 8.81 4.7 8.06 6.22 4.47 34.59 44.94 43.05 15.58 42.05 20.66 20.76 19.85 20.05 45.38 23.07 19.1 23.83 16.54 28.33 25.88 22.14 22.65 12.59 28.1;

LOC:
 0 9 16 18 27 29 32 38 39 40 43 45 46 47 51 54 56 59 63 66 67 68 69 70 72 74 75 76 79 82 83 84 85 91;
 1 5 6 7 13 15 20 22 26 28 31 33 37 52 53 64 65 71 73 77 78 80 81 88 92 94 95 97 98 99;
 3 4 8 10 11 14 17 19 21 23 30 34 35 36 48 49 57 60 61 86 87 89 90 93 96;

SEC:
 0 1 2 3 4 5 6 7 8 9;
 10 11 12 13 14 15 16 17 18 19 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99;
 20 21 22 23 24 25 26 27 28 29;
 30 31 32 33 34 35 36 37 38 39;
 40 41 42 43 44 45 46 47 48 49;
 50 51 52 53 54 55 56 57 58 59;
 60 61 62 63 64 65 66 67 68 69;
 70 71 72 73 74 75 76 77 78 79;

Back to examples browserPrevious example