Combinative optimization

The combinative optimization is a branch of the optimization in Mathématiques applied and Informatique, also related to the Operations research, the Algorithmique and the Théorie of complexity. One also speaks about discrete optimization .

Definition

In its most general form, a combinative problem of Optimization (one says also discrete optimization ) consists in finding in a discrete Ensemble one among the better subsets (or solutions) realizable, the concept of better solution being defined by the objective function. Formally, being given:

*un Together discrete NR ,
*une overall function F: 2^N \ rightarrow \ mathbb R , known as function objective , and
* a unit \ mathcal R of subsets of NR , whose elements are called the realizable solutions ,
a combinative problem of optimization consists in determining
\ max_ {S \ subseteq NR} \ {F (S): \, S \ in \ mathcal R \}.

The whole of the realizable solutions could not be described by an exhaustive list because the difficulty lies here precisely in the fact that the number of the realizable solutions makes its enumeration impossible, or although it is Np-complete to say if there are some or not. The description of \ mathcal R is thus Implicite, it acts in general of the list, relatively short, of the properties of the realizable solutions.

Most of the time one is in the following particular cases:

* NR = \ {1,2, \ ldots, N \} and \ mathcal R = X \ course \ mathbb Z^n where X \ subset \ mathbb R^n and the cardinality of \ mathcal R is exponential in N ,
* \ mathcal R = conv (\ mathcal R) \ course \ mathbb Z^n thus the properties of \ mathcal R is translated into linear constraints, i.e. X and a polyhedron of \ mathbb R^n,
* F (S) = \ sum_ {S \ in S} F (S) .

Example

The problem of the shortest way between two tops s and t of a graph is a traditional example of combinative problem of optimization. The whole of the realizable solutions is the whole of the ways between s and t while the function objective is the length of the way.

Resolution

To find a solution optimal in a discrete and finished unit is an easy problem in theory: it is enough to test all the solutions, and to compare their qualities to see the best. However, in practice, the enumeration of all the solutions can take time too much; however, the search time of the optimal solution is a very important factor and it is because of him which the problems of combinative optimization are famous so difficult. The Théorie of complexity gives tools to measure this search time. Moreover, like the whole of the realizable solutions is defined in an implicit way, it is also sometimes very difficult to find would be this only one realizable solution.

Some problems of combinative optimization can be solved (in an exact way) in polynomial time for example by a Algorithme glouton, a dynamic algorithm of Programming or by showing that the problem can be formulated like a linear Program in real variables.

In the majority of the cases, the problem is complete NP and, to solve it, it is necessary to call upon algorithms of Branch and bound, with the linear Programming of integers or with the Programmation by constraints. In practice, one is very often satisfied to have an approached solution, obtained by a Heuristique or a Métaheuristique. For certain problems, one can prove a Garantie performance, i.e. the difference between the solution obtained and the optimal solution is limited.

Random links:Brent Scowcroft | Liege | Cody Hay | Automobile Grand Prix of Great Britain 1987 | Mike Barrowman | Cimetière_de_Kensico