La optimización binaria cuadrática sin restricciones ( QUBO ), también conocida como programación binaria cuadrática sin restricciones ( UBQP ), es un problema de optimización combinatoria con una amplia gama de aplicaciones, desde finanzas y economía hasta aprendizaje automático . [ 1 ] QUBO es un problema NP-difícil , y para muchos problemas clásicos de la informática teórica , como el corte máximo , la coloración de grafos y el problema de partición , se han formulado incrustaciones en QUBO. [ 2 ] [ 3 ] Las incrustaciones para modelos de aprendizaje automático incluyen máquinas de vectores de soporte , agrupamiento y modelos gráficos probabilísticos . [ 4 ] Además, debido a su estrecha conexión con los modelos de Ising , QUBO constituye una clase de problemas centrales para la computación cuántica adiabática , donde se resuelve mediante un proceso físico llamado recocido cuántico . [ 5 ]
Definición
Dejarel conjunto de dígitos binarios (o bits ), entonceses el conjunto de vectores binarios de longitud fija. Dada una matriz simétrica o triangular superior, cuyas entradasDefina un peso para cada par de índices., podemos definir la funciónque asigna un valor a cada vector binarioa través de
Alternativamente, las partes lineal y cuadrática se pueden separar como
dóndeyEsto es equivalente a la definición anterior a través deutilizando el operador diag , explotando esopara todos los valores binarios.
Intuitivamente, el pesose agrega si ambosyEl problema QUBO consiste en encontrar un vector binarioque minimiza, es decir,.
En general,no es único, lo que significa que puede haber un conjunto de vectores minimizadores con igual valor con respecto aLa complejidad de QUBO surge del número de vectores binarios candidatos que deben evaluarse, comocrece exponencialmente en.
A veces, QUBO se define como el problema de maximizar, lo cual es equivalente a minimizar.
Propiedades
QUBO es invariante de escala para factores positivos., que dejan el óptimosin alterar:
- .
En su forma general, QUBO es NP-difícil y no puede resolverse eficientemente mediante ningún algoritmo conocido de tiempo polinomial. [ 6 ] Sin embargo, existen casos especiales que se pueden resolver en tiempo polinomial, dondetiene ciertas propiedades, [ 7 ] por ejemplo:
- Si todos los coeficientes son positivos, el óptimo es trivial.. De manera similar, si todos los coeficientes son negativos, el óptimo es.
- Sies diagonal , los bits se pueden optimizar de forma independiente y el problema es resoluble en. Las asignaciones de variables óptimas son simplementesi, yde lo contrario.
- Si todos los elementos fuera de la diagonal deson no positivos, el problema QUBO correspondiente es resoluble en tiempo polinomial. [ 8 ]
QUBO se puede resolver utilizando solucionadores de programación lineal entera como CPLEX o Gurobi Optimizer . Esto es posible ya que QUBO se puede reformular como un problema de optimización binaria con restricciones lineales. Para lograr esto, sustituya el productomediante una variable binaria adicionaly agregar las restricciones,y. Tenga en cuenta queTambién se puede relajar a variables continuas dentro de los límites cero y uno.
Aplicaciones
QUBO es un problema de optimización estructuralmente simple, pero computacionalmente difícil. Puede utilizarse para codificar una amplia gama de problemas de optimización de diversas áreas científicas. [ 9 ]
Corte máximo
Dado un gráficocon conjunto de vérticesy bordes, el problema del corte máximo (max-cut) consiste en encontrar dos subconjuntoscon, de tal manera que el número de aristas entreyse maximiza.
El problema de corte máximo ponderado más general asume pesos en los bordes., cony solicita una particiónque maximiza la suma de los pesos de las aristas entrey, es decir,
Al establecera pesar deEsto equivale al problema de corte máximo original mencionado anteriormente, razón por la cual nos centraremos en esta forma más general a continuación.
Para cada vértice enintroducimos una variable binariacon la interpretaciónsiysi. Como, cadaestá en exactamente un conjunto, lo que significa que hay una correspondencia 1:1 entre vectores binarios.y particiones deen dos subconjuntos.
Observamos que, para cualquier, la expresiónse evalúa a 1 si y solo siyestán en diferentes subconjuntos, equivalentes a XOR lógico .conAl extender la expresión anterior a la forma matriz-vector, encontramos que
es la suma de los pesos de todas las aristas entrey, dóndeComo esta es una función cuadrática sobre, es un problema QUBO cuya matriz de parámetros podemos leer a partir de la expresión anterior como
después de cambiar el signo para convertirlo en un problema de minimización.
Análisis de clúster
A continuación, consideramos el problema del análisis de clústeres , donde se nos da un conjunto depuntos enespacio -dimensional y queremos asignar cada punto a una de dos clases o clústeres , de manera que los puntos en el mismo clúster sean similares entre sí. Para este ejemplo establecemosyLos datos se proporcionan como una matriz.donde cada fila contiene dos coordenadas cartesianas . Para dos grupos, podemos asignar una variable binaria.hasta el punto correspondiente a la-ésima fila en, indicando si pertenece al primero () o segundo grupo (). En consecuencia, tenemos 20 variables binarias, que forman un vector binario.que corresponde a una asignación de clúster de todos los puntos (véase la figura).
Una forma de derivar una agrupación es considerar las distancias por pares entre puntos. Dada una asignación de clúster, la expresiónse evalúa a 1 si puntosyestán en el mismo grupo. De manera similar,indica que están en grupos diferentes.denota la distancia euclidiana entre los puntosy, es decir,
- ,
dóndees el-fila de.
Para definir una función de costo a minimizar, cuando los puntosyestán en el mismo grupo sumamos su distancia positivay restarlo cuando se encuentran en grupos diferentes. De esta manera, una solución óptima tiende a colocar los puntos que están muy separados en grupos diferentes, y los puntos que están cerca en el mismo grupo.
Dejarcona pesar de. Dada una tarea, dicha función de coste viene dada por
dónde.
De la segunda línea podemos ver que esta expresión se puede reordenar a un problema QUBO definiendo
e ignorando el término constante. Utilizando estos parámetros, un vector binario que minimiza esta instancia de QUBOcorresponderá a una asignación de clúster óptima con respecto a la función de costo anterior.
Conexión con los modelos de Ising
QUBO está muy relacionado y es computacionalmente equivalente al modelo de Ising , cuya función hamiltoniana se define como
con parámetros de valor reala pesar deLas variables de espínson binarios con valores deen lugar de. Nótese que esta formulación está simplificada, ya que, en un contexto físico,son típicamente operadores de Pauli , que son matrices de valores complejos de tamaño, mientras que aquí las tratamos como variables binarias. Muchas formulaciones del hamiltoniano del modelo de Ising asumen además que las variables están dispuestas en una red, donde solo pares de variables vecinaspueden tener coeficientes distintos de cero; aquí, simplemente asumimos quesiyno son vecinos.
Aplicando la identidadproduce un problema QUBO equivalente [ 10 ]
cuya matriz de pesoses dado por
Ignorando nuevamente el término constante, que no afecta la minimización. Usando la identidad, un problema QUBO con matrizse puede convertir a un modelo de Ising equivalente utilizando la misma técnica, obteniendo
y un desplazamiento constante de. [ 10 ]
Referencias
- ↑ Kochenberger, Gary; Hao, Jin-Kao; Glover, Fred; Lewis, Mark; Lu, Zhipeng; Wang, Haibo; Wang, Yang (2014). "El problema de programación cuadrática binaria sin restricciones: una revisión" (PDF) . Journal of Combinatorial Optimization . 28 : 58–81 . doi : 10.1007/s10878-014-9734-0 . S2CID 16808394 .
- ↑ Glover, Fred; Kochenberger, Gary (2019). "Un tutorial sobre la formulación y el uso de modelos QUBO". arXiv : 1811.11538 [ cs.DS ].
- ↑ Lucas, Andrew (2014). "Formulaciones de Ising de muchos problemas NP" . Frontiers in Physics . 2 : 5. arXiv : 1302.5843 . Bibcode : 2014FrP.....2....5L . doi : 10.3389/fphy.2014.00005 .
- ↑ Mücke, Sascha; Piatkowski, Nico; Morik, Katharina (2019). "Aprendiendo bit a bit: extrayendo la esencia del aprendizaje automático" (PDF) . LWDA . S2CID 202760166. Archivado del original (PDF) el 27 de febrero de 2020.
- ↑ Tom Simonite (8 de mayo de 2013). "La computadora cuántica de D-Wave va a las carreras y gana" . MIT Technology Review. Archivado del original el 24 de septiembre de 2015. Recuperado el 12 de mayo de 2013 .
- ↑ AP Punnen (editor), Problema de optimización binaria cuadrática sin restricciones: Teoría, algoritmos y aplicaciones, Springer, Springer, 2022.
- ↑ Çela, E., Punnen, AP (2022). Complejidad y casos especiales de QUBO resolubles polinomialmente. En: Punnen, AP (eds) El problema de optimización binaria cuadrática sin restricciones. Springer, Cham. https://doi.org/10.1007/978-3-031-04520-2_3
- ↑ Véase el Teorema 3.16 en Punnen (2022); tenga en cuenta que los autores asumen la versión de maximización de QUBO.
- ↑ Ratke, Daniel (10 de junio de 2021). "Lista de formulaciones QUBO" . Recuperado el 16 de diciembre de 2022 .
- ^ Mücke , S. (2025). Optimización clásica cuántica en aprendizaje automático. Shaker Verlag. https://d-nb.info/1368090214
Enlaces externos
- QUBO Benchmark (Prueba comparativa de paquetes de software para la solución exacta de QUBO; forma parte de la conocida colección de pruebas comparativas de Mittelmann)
- Endre Boros, Peter L Hammer y Gabriel Tavares (abril de 2007). "Heurísticas de búsqueda local para la optimización binaria cuadrática sin restricciones (QUBO)" . Journal of Heuristics . 13 (2). Association for Computing Machinery: 99–132 . doi : 10.1007/s10732-007-9009-3 . S2CID 32887708. Recuperado el 12 de mayo de 2013 .
- Di Wang y Robert Kleinberg (noviembre de 2009). "Análisis de problemas de optimización binaria cuadrática sin restricciones mediante flujos multicommodity" . Discrete Applied Mathematics . 157 (18). Elsevier: 3746–3753 . doi : 10.1016/j.dam.2009.07.009 . PMC 2808708. PMID 20161596 .
- Universidad de Hiroshima y NTT DATA Group Corporation : "QUBO++ con solucionador QUBO GPU ABS2" # Software.
- algoritmos de aprendizaje automático