Articulo de referencia

Optimización combinatoria

Un árbol de expansión mínima de un grafo planar ponderado . Encontrar un árbol de expansión mínima es un problema común que involucra optimización combinatoria. La optimización ...

Un árbol de expansión mínima de un grafo planar ponderado . Encontrar un árbol de expansión mínima es un problema común que involucra optimización combinatoria.

La optimización combinatoria es un subcampo de la optimización matemática que consiste en encontrar un objeto óptimo a partir de un conjunto finito de objetos, [ 1 ] donde el conjunto de soluciones factibles es discreto o puede reducirse a un conjunto discreto. Los problemas típicos de optimización combinatoria son el problema del viajante ("TSP"), el problema del árbol de expansión mínima ("MST") y el problema de la mochila . En muchos de estos problemas, como los mencionados anteriormente, la búsqueda exhaustiva no es viable, por lo que se debe recurrir a algoritmos especializados que descartan rápidamente grandes partes del espacio de búsqueda o a algoritmos de aproximación .

La optimización combinatoria está relacionada con la investigación operativa , la teoría de algoritmos y la teoría de la complejidad computacional . Tiene importantes aplicaciones en diversos campos, como la inteligencia artificial , el aprendizaje automático , la teoría de subastas , la ingeniería de software , VLSI , las matemáticas aplicadas y la informática teórica .

Aplicaciones

Las aplicaciones básicas de la optimización combinatoria incluyen, entre otras:

Métodos

Existe una amplia bibliografía sobre algoritmos de tiempo polinomial para ciertas clases especiales de optimización discreta. Gran parte de ella se unifica mediante la teoría de la programación lineal . Algunos ejemplos de problemas de optimización combinatoria que abarca este marco son los caminos más cortos y los árboles de caminos más cortos , los flujos y las circulaciones , los árboles de expansión , los problemas de emparejamiento y los problemas de matroides .

For NP-complete discrete optimization problems, current research literature includes the following topics:

  • polynomial-time exactly solvable special cases of the problem at hand (e.g. fixed-parameter tractable problems)
  • algorithms that perform well on "random" instances (e.g. for the traveling salesman problem)
  • approximation algorithms that run in polynomial time and find a solution that is close to optimal
  • parameterized approximation algorithms that run in FPT time and find a solution close to the optimum
  • solving real-world instances that arise in practice and do not necessarily exhibit the worst-case behavior of in NP-complete problems (e.g. real-world TSP instances with tens of thousands of nodes[5]).

Combinatorial optimization problems can be viewed as searching for the best element of some set of discrete items; therefore, in principle, any sort of search algorithm or metaheuristic can be used to solve them. Widely applicable approaches include branch-and-bound (an exact algorithm which can be stopped at any point in time to serve as heuristic), branch-and-cut (uses linear optimisation to generate bounds), dynamic programming (a recursive solution construction with limited search window) and tabu search (a greedy-type swapping algorithm). However, generic search algorithms are not guaranteed to find an optimal solution first, nor are they guaranteed to run quickly (in polynomial time). Since some discrete optimization problems are NP-complete, such as the traveling salesman (decision) problem,[6] this is expected unless P=NP.

For each combinatorial optimization problem, there is a corresponding decision problem that asks whether there is a feasible solution for some particular measure m0{\displaystyle m_{0}}. For example, if there is a graphG{\displaystyle G} which contains vertices u{\displaystyle u} and v{\displaystyle v}, an optimization problem might be "find a path from u{\displaystyle u} to v{\displaystyle v} that uses the fewest edges". This problem might have an answer of, say, 4. A corresponding decision problem would be "is there a path from u{\displaystyle u} to v{\displaystyle v} that uses 10 or fewer edges?" This problem can be answered with a simple 'yes' or 'no'.

The field of approximation algorithms deals with algorithms to find near-optimal solutions to hard problems. The usual decision version is then an inadequate definition of the problem since it only specifies acceptable solutions. Even though we could introduce suitable decision problems, the problem is then more naturally characterized as an optimization problem.[7]

NP optimization problem

An NP-optimization problem (NPO) is a combinatorial optimization problem with the following additional conditions.[8] Note that the below referred polynomials are functions of the size of the respective functions' inputs, not the size of some implicit set of input instances.

  • the size of every feasible solution yf(x){\displaystyle y\in f(x)}, where f(x){\displaystyle f(x)} denotes the set of feasible solutions to instance x{\displaystyle x}, is polynomially bounded in the size of the given instance x{\displaystyle x},
  • the languages of valid instances {xxI}{\displaystyle \{\,x\,\mid \,x\in I\,\}} and of valid instance–solution pairs {(x,y)yf(x)}{\displaystyle \{\,(x,y)\,\mid \,y\in f(x)\,\}} can be recognized in polynomial time, and
  • The measure m(x,y){\displaystyle m(x,y)} of a solution y{\displaystyle y} to problem x{\displaystyle x} is polynomial-time computable.

This implies that the corresponding decision problem is in NP. In computer science, interesting optimization problems usually have the above properties and are therefore NPO problems. A problem is additionally called a P-optimization (PO) problem, if there exists an algorithm which finds optimal solutions in polynomial time. Often, when dealing with the class NPO, one is interested in optimization problems for which the decision versions are NP-complete. Note that hardness relations are always with respect to some reduction. Due to the connection between approximation algorithms and computational optimization problems, reductions which preserve approximation in some respect are for this subject preferred than the usual Turing and Karp reductions. An example of such a reduction would be L-reduction. For this reason, optimization problems with NP-complete decision versions are not necessarily called NPO-complete.[9]

NPO is divided into the following subclasses according to their approximability:[8]

  • NPO(I): Equals FPTAS. Contains the Knapsack problem.
  • NPO(II): Equals PTAS. Contains the Makespan scheduling problem.
  • NPO(III): The class of NPO problems that have polynomial-time algorithms which computes solutions with a cost at most c times the optimal cost (for minimization problems) or a cost at least 1/do{\displaystyle 1/c}del costo óptimo (para problemas de maximización). En el libro de Hromkovič Algorithms for Hard Problems , se excluyen de esta clase todos los problemas NPO(II) salvo que P=NP. [ 8 ] Sin la exclusión, es igual a APX. Contiene MAX-SAT y TSP métrico .
  • NPO(IV) : Clase de problemas NPO con algoritmos de tiempo polinomial que aproximan la solución óptima mediante una razón polinomial en el logaritmo del tamaño de la entrada. En el libro de Hromkovič, todos los problemas NPO(III) se excluyen de esta clase a menos que P=NP. Incluye el problema de cobertura de conjuntos .
  • NPO(V) : La clase de problemas NPO con algoritmos de tiempo polinomial que aproximan la solución óptima mediante una razón acotada por alguna función en n. En el libro de Hromkovic, todos los problemas NPO(IV) se excluyen de esta clase a menos que P=NP. Contiene el problema del viajante y el problema de la camarilla .

Un problema NPO se denomina acotado polinomialmente (PB) si, para cada instanciaincógnita{\displaystyle x}y para cada soluciónyF(incógnita){\displaystyle y\in f(x)}la medidametro(incógnita,y){\displaystyle m(x,y)}está acotado por una función polinómica del tamaño deincógnita{\displaystyle x}La clase NPOPB es la clase de problemas NPO que están acotados polinomialmente.

Problemas específicos

Un recorrido óptimo para un viajante de comercio a través de las 15 ciudades más grandes de Alemania . Es el más corto entre los 43.589.145.600 [ 10 ] recorridos posibles que visitan cada ciudad exactamente una vez.

Véase también

Notas

  1. Schrijver 2003 , pág. 1 . 
  2. Sbihi, Abdelkader; Eglese, Richard W. (2007). "Optimización combinatoria y logística verde" ( PDF) . 4OR . 5 (2): 99– 116. doi : 10.1007/s10288-007-0047-3 . S2CID 207070217. Archivado (PDF) del original el 26-12-2019 . Recuperado el 26-12-2019 . 
  3. Eskandarpour, Majid; Dejax, Pierre; Miemczyk, Joe; Péton, Olivier (2015). "Sustainable supply chain network design: An optimization-oriented review"(PDF). Omega. 54: 11–32. doi:10.1016/j.omega.2015.01.006. Archived(PDF) from the original on 2019-12-26. Retrieved 2019-12-26.
  4. Hobé, Alex; Vogler, Daniel; Seybold, Martin P.; Ebigbo, Anozie; Settgast, Randolph R.; Saar, Martin O. (2018). "Estimating fluid flow rates through fracture networks using combinatorial optimization". Advances in Water Resources. 122: 85–97. arXiv:1801.08321. Bibcode:2018AdWR..122...85H. doi:10.1016/j.advwatres.2018.10.002. S2CID 119476042. Archived from the original on 2020-08-21. Retrieved 2020-09-16.
  5. Cook 2016.
  6. "Approximation-TSP"(PDF). Archived(PDF) from the original on 2022-03-01. Retrieved 2022-02-17.
  7. Ausiello, Giorgio; et al. (2003), Complexity and Approximation (Corrected ed.), Springer, ISBN 978-3-540-65431-5
  8. 123Hromkovic, Juraj (2002), Algorithmics for Hard Problems, Texts in Theoretical Computer Science (2nd ed.), Springer, ISBN 978-3-540-44134-2
  9. Kann, Viggo (1992), On the Approximability of NP-complete Optimization Problems, Royal Institute of Technology, Sweden, ISBN 91-7170-082-X
  10. Take one city, and take all possible orders of the other 14 cities. Then divide by two because it does not matter in which direction in time they come after each other: 14!/2 = 43,589,145,600.

References

  • Beasley, J. E. "Integer programming" (lecture notes).
  • Cook, William (2016). "Optimal TSP Tours". University of Waterloo.(Information on the largest TSP instances solved to date.)
  • Crescenzi, Pierluigi; Kann, Viggo; Halldórsson, Magnús; Karpinski, Marek; Woeginger, Gerhard (eds.). "A Compendium of NP Optimization Problems".(This is a continuously updated catalog of approximability results for NP optimization problems.)
  • Das, Arnab; Chakrabarti, Bikas K, eds. (2005). Quantum Annealing and Related Optimization Methods. Lecture Notes in Physics. Vol. 679. Springer. Bibcode:2005qnro.book.....D. ISBN 978-3-540-27987-7.
  • Das, Arnab; Chakrabarti, Bikas K (2008). "Colloquium: Quantum annealing and analog quantum computation". Rev. Mod. Phys. 80 (3): 1061. arXiv:0801.2193. Bibcode:2008RvMP...80.1061D. CiteSeerX 10.1.1.563.9990. doi:10.1103/RevModPhys.80.1061. S2CID 14255125.
  • Lawler, Eugene (2001). Combinatorial Optimization: Networks and Matroids. Dover. ISBN 0-486-41453-1.
  • Lee, Jon (2004). A First Course in Combinatorial Optimization. Cambridge University Press. ISBN 0-521-01012-8.
  • Papadimitriou, Christos H.; Steiglitz, Kenneth (July 1998). Combinatorial Optimization : Algorithms and Complexity. Dover. ISBN 0-486-40258-4.
  • Schrijver, Alexander (2003). Combinatorial Optimization: Polyhedra and Efficiency(PDF). Algorithms and Combinatorics. Vol. 24. Springer. ISBN 9783540443896.
  • Schrijver, Alexander (2005). "On the history of combinatorial optimization (till 1960)"(PDF). In Aardal, K.; Nemhauser, G.L.; Weismantel, R. (eds.). Handbook of Discrete Optimization. Elsevier. pp. 1–68.
  • Schrijver, Alexander (February 1, 2006). A Course in Combinatorial Optimization(PDF).
  • Sierksma, Gerard; Ghosh, Diptesh (2010). Networks in Action; Text and Computer Exercises in Network Optimization. Springer. ISBN 978-1-4419-5512-8.
  • Gerard Sierksma; Yori Zwols (2015). Linear and Integer Optimization: Theory and Practice. CRC Press. ISBN 978-1-498-71016-9.
  • Pintea, C-M. (2014). Advances in Bio-inspired Computing for Combinatorial Optimization Problem. Intelligent Systems Reference Library. Springer. ISBN 978-3-642-40178-7.
  • Journal of Combinatorial Optimization
  • The Aussois Combinatorial Optimization Workshop
  • Java Combinatorial Optimization Platform (open source code)
  • Why is scheduling people hard?
  • Complexity classes for optimization problems / Stefan Kugele