MIP solver

In RegMAS MIP problems have to be computed for each individual farm and in several steps during each simulated period, resulting in levels of thousands computations for period. It follows that the speed of the solving algorithm become a critical factor. Due the fact that in RegMAS plots enter the problem individually, matrices can become quite large, however they are very sparse allowing specialised software to solve the problems in terms of fractions of second.

In fact, RegMAS use external libraries to solve this problems. RegMAS class Opt() is responsible to establish the direction of the objective function (in our case, a maximisation), the set of bounds, objective coefficients and constrain coefficients. At this point the problem ``object'' is solved calling an external Dynamically Linked Library (DLL).

RegMAS uses the open-source GNU Linear Programming Kit (GLPK) (Makhorin, 2007) that employs a two-phase revised Simplex method (that is guaranteed to find the optimal solution, if one exist) to retrieve continuous solutions, and then apply a Branch & Bound method in case of an integer optimisation.

GLPK recently added an interior-point algorithm, but we found it to be still too unstable at this time.

Regional Multi Agent Simulator 2011-06-19