Difference between revisions of "Integer Linear Programming"
Line 15: | Line 15: | ||
In other words, it is a method to find the optimal solution (i.e. the best assignment of unknown variables such as <math>x_i</math>'s) that maximizes the objective function while meeting a list of requirements expressed as linear equality or inequality relationships. | In other words, it is a method to find the optimal solution (i.e. the best assignment of unknown variables such as <math>x_i</math>'s) that maximizes the objective function while meeting a list of requirements expressed as linear equality or inequality relationships. | ||
− | + | The strength of ILP is in its joint inference. Instead of making local, isolated decisions on each <math>x_i</math>, it makes joint decisions on all <math>x_i</math>'s guided by the global constraints and the objective function given. | |
+ | |||
+ | ILP is known to be NP-hard. However, there are many off-the-shelf solvers, both commercial and non commercial, that are available. One such solver is [http://scip.zib.de/ SCIP], which is currently the fastest non commercial mixed integer programming solver. | ||
== Procedure == | == Procedure == |
Revision as of 01:53, 28 September 2011
Summary
Integer Linear Programming (ILP) is a method for:
- optimizing a linear objective function:
- maximize
- where is known and is unknown variable
- subject to linear equality or inequality constraints:
- where and are known
- and where can only take integer values
In other words, it is a method to find the optimal solution (i.e. the best assignment of unknown variables such as 's) that maximizes the objective function while meeting a list of requirements expressed as linear equality or inequality relationships.
The strength of ILP is in its joint inference. Instead of making local, isolated decisions on each , it makes joint decisions on all 's guided by the global constraints and the objective function given.
ILP is known to be NP-hard. However, there are many off-the-shelf solvers, both commercial and non commercial, that are available. One such solver is SCIP, which is currently the fastest non commercial mixed integer programming solver.
Procedure
Input:
- The linear objective function
- The linear constraints
Output:
- The assignment of unknown variables that optimizes the objective function and is consistent with the constraints
References / Links
- Leo Brieman. Bagging Predictors. Machine Learning, 24, 123–140 (1996). - [1]
- Wikipedia article on Bagging - [2]