¿Por qué la no convexidad debería ser un problema en la optimización?


20

Me sorprendió mucho cuando comencé a leer algo sobre la optimización no convexa en general y vi declaraciones como esta:

Muchos problemas prácticos de importancia son no convexos, y la mayoría de los problemas no convexos son difíciles (si no imposibles) de resolver exactamente en un tiempo razonable. ( fuente )

o

En general, es NP-difícil encontrar un mínimo local y muchos algoritmos pueden atascarse en un punto de silla de montar. ( fuente )

Estoy haciendo una especie de optimización no convexa todos los días, es decir, relajación de la geometría molecular. Nunca lo consideré algo complicado, lento y susceptible de atascarse. En este contexto, tenemos claramente superficies no convexas de muchas dimensiones (> 1000 grados de libertad). Usamos principalmente técnicas de primer orden derivadas del descenso más pronunciado y el enfriamiento dinámico, como FIRE , que convergen en unos pocos cientos de pasos a un mínimo local (menos que el número de DOF). Espero que con la adición de ruido estocástico debe ser robusto como el infierno. (La optimización global es una historia diferente)

De alguna manera, no puedo imaginar cómo debería verse la superficie de energía potencial , para hacer que estos métodos de optimización se atasquen o converjan lentamente. Por ejemplo, el PSA muy patológico (pero no debido a la no convexidad) es esta espiral , pero no es un problema tan grande. ¿Puedes dar un ejemplo ilustrativo de PSA no convexo patológico?

Así que no quiero discutir con las citas anteriores. Más bien, tengo la sensación de que me falta algo aquí. Quizás el contexto.


44
La palabra clave aquí es "en general": puede construir funciones arbitrariamente desagradables, especialmente en dimensiones muy altas que son básicamente "todos los puntos de silla". Las clases específicas de funciones no convexas, por otro lado, pueden comportarse muy bien, especialmente si utiliza estrategias de globalización adecuadas.
Christian Clason

2
Creo que la teoría de control óptimo y las aplicaciones de investigación de ingeniería / operaciones ponen bastante énfasis en la corrección / robustez, mientras que usted piensa que llegar a un lugar "suficientemente bueno" es lo suficientemente bueno. Podría haber límites de rendimiento (se debe garantizar la convergencia, de modo que la trayectoria de un robot se calcule en el tiempo), o límites de corrección (si cambia un poco los parámetros del problema, inesperadamente no obtendrá un resultado totalmente diferente). Por lo tanto, no es suficiente obtener algunos puntos óptimos, también es necesario que tengan algunas propiedades prescritas.
Kirill

Respuestas:


23

El malentendido radica en lo que constituye "resolver" un problema de optimización, por ejemplo, . Para los matemáticos, el problema solo se considera "resuelto" una vez que tenemos:argminf(x)

  1. Una solución candidata: una elección particular de la variable de decisión y su correspondiente valor objetivo , Y f ( x )xf(x)
  2. Una prueba de optimización: Una prueba matemática de que la elección de es globalmente óptima, es decir, que cumple para cada elección de . f ( x ) f ( x ) xxf(x)f(x)x

Cuando es convexo, ambos ingredientes se obtienen fácilmente. La pendiente del gradiente localiza una solución candidata que hace que el gradiente desaparezca . La prueba de la optimización se deriva de un hecho simple enseñado en MATH101 que, si es convexo, y su gradiente desvanece en , entonces es una solución global.x f ( x ) = 0 f f x x fxf(x)=0ffxx

Cuando no es convexo, una solución candidata aún puede ser fácil de encontrar, pero la prueba de la optimización se vuelve extremadamente difícil. Por ejemplo, podemos ejecutar un descenso en gradiente y encontrar un punto . Pero cuando no es convexo, la condición es necesaria pero ya no es suficiente para la optimización global. De hecho, ni siquiera es suficiente para la optimización local , es decir, ni siquiera podemos garantizar que sea ​​un mínimo local basado solo en su información de gradiente. Un enfoque es enumerar todos los puntos que satisfacen , y esta puede ser una tarea formidable incluso en una o dos dimensiones.f ( x ) = 0 f f ( x ) = 0 x f ( x ) = 0ff(x)=0ff(x)=0xf(x)=0

Cuando los matemáticos dicen que la mayoría de los problemas son imposibles de resolver, realmente están diciendo que la prueba de la optimización (incluso local) es imposible de construir . Pero en el mundo real, a menudo solo nos interesa calcular una solución "suficientemente buena", y esto se puede encontrar de infinitas maneras. Para muchos problemas altamente no convexos, nuestra intuición nos dice que las soluciones "suficientemente buenas" son realmente óptimas a nivel mundial, ¡incluso si somos completamente incapaces de demostrarlo!


La optimización global versus local es un tema completamente diferente. Pero el resto tiene sentido. ¿Puedo decir más sobre "ni siquiera puedo garantizar que x sea un mínimo local basado solo en su información de gradiente" o ilustrarlo mejor?
Prokop Hapala

f(x)=x3g(x)=x4x=0f(x)=0g(x)=0g. En realidad, sus segundas derivadas también son cero en este punto, ¡por lo que los dos escenarios son idénticos a los dos primeros derivados solos!
Richard Zhang

x=0g(x)=x3

Entiendo tu punto. Y quizás esa sea realmente la razón por la cual, en sentido matemático riguroso, la optimización no convexa se considera difícil. Pero, todavía estoy más interesado en la aplicación práctica, donde la heurística (que supongo que es parte natural del algoritmo) fallaría miserablemente.
Prokop Hapala

f(x)=0

6

Un ejemplo de un difícil problema de baja dimensión podría ser:

ingrese la descripción de la imagen aquí

Dado que alcanzó un mínimo local, ¿cómo puede estar seguro de que es algo tan bueno como el mínimo global? ¿Cómo saber si su resultado es una solución óptima única, dado que es globalmente óptimo? ¿Cómo puedes crear un algoritmo robusto para todas las colinas y valles para que no se quede atascado en alguna parte?

Un ejemplo como este es donde las cosas pueden ponerse difíciles. Obviamente, no todos los problemas son así, pero algunos sí. Lo peor es que, en un entorno de la industria, la función de costo puede llevar mucho tiempo calcular y tener una superficie problemática como la anterior.

Ejemplo de problema real

Un ejemplo que podría abordar en el trabajo es hacer una optimización para un algoritmo de guía de misiles que podría ser robusto en muchas condiciones de lanzamiento. Usando nuestro clúster, podría obtener las mediciones de rendimiento que necesito en aproximadamente 10 minutos para una sola condición. Ahora para juzgar adecuadamente la robustez, querríamos al menos una muestra de condiciones para juzgar en contra. Entonces, digamos que ejecutamos seis condiciones, haciendo que una evaluación de esta función de costo tome una hora.

La dinámica de misiles no lineales, la dinámica atmosférica, los procesos de tiempo discreto, etc. resultan en una reacción bastante no lineal a los cambios en el algoritmo de guía, lo que hace que la optimización sea difícil de resolver. El hecho de que esta función de costo no sea convexa hace que el hecho de que se tome mucho tiempo evalúe un gran problema. Un ejemplo como este es donde nos esforzaríamos por obtener lo mejor que podamos en el tiempo que se nos da.


1
Bien, creo que este es un problema diferente ... problema de la optimización global, que es claramente difícil e irresoluble en la mayoría de las situaciones. Pero eso no es a lo que la gente se refiere con respecto a la optimización no convexa, donde dicen que NP es difícil de encontrar un mínimo local y muchos algoritmos pueden atascarse en un punto de apoyo.
Prokop Hapala

1
@ProkopHapala Mis comentarios se referían más a la cita Muchos problemas prácticos de importancia no son convexos, y la mayoría de los problemas no convexos son difíciles (si no imposibles) de resolver exactamente en un tiempo razonable , especialmente porque el OP hablaba de cuán simple ha sido para ellos abordar problemas no convexos en la investigación. Para mí, resolver exactamente es luchar por una solución óptima global (o algo parecido). Así que quería pintar una imagen de los desafíos del mundo real relacionados con estos comentarios.
spektr

Entiendo. Estrictamente hablando, tienes razón, pero aún creo que no aborda lo que quise decir ... tal vez debería haberlo formulado mejor.
Prokop Hapala

5

El problema es el de los puntos de silla, discutidos en la publicación que vinculaste. Del resumen de uno de los artículos vinculados :

Sin embargo, en general es difícil garantizar que tales algoritmos incluso converjan a un mínimo local, debido a la existencia de estructuras complicadas de punto de silla de montar en grandes dimensiones. Muchas funciones tienen puntos de silla degenerados de modo que las derivadas de primer y segundo orden no pueden distinguirlos con los óptimos locales . En este artículo usamos derivados de orden superior para escapar de estos puntos de silla de montar: diseñamos el primer algoritmo eficiente garantizado para converger a un óptimo local de tercer orden (mientras que las técnicas existentes son como máximo de segundo orden). También mostramos que es NP-difícil extender esto aún más para encontrar óptimos locales de cuarto orden.

Esencialmente, puede tener funciones donde tiene puntos de silla de montar que son indistinguibles de los mínimos locales cuando se observan las derivadas 1ª, 2ª y 3ª. Puede resolver esto yendo a un optimizador de orden superior, pero muestran que encontrar un mínimo local de cuarto orden es NP difícil.

x2y+y2

Podría usar una serie de heurísticas para escapar de esos puntos, que pueden funcionar para muchos (¿la mayoría?) Ejemplos del mundo real, pero no se puede demostrar que siempre funcionen.
En la publicación del blog que vinculó, también analizan las condiciones bajo las cuales puede escapar de tales puntos de silla de montar en tiempo polinómico.


x2y+y2

2
Tienes que mirarlo de otra manera. No es que sepamos que el descenso de gradiente estocástico fallará, es que no sabemos que tendrá éxito. En el caso de los problemas con los juguetes, es poco probable que esto suceda en la práctica, pero puede ocurrir en problemas de dimensiones superiores. Mi apuesta es que para sus problemas de química, esto nunca sucederá, pero sería difícil demostrarlo.
LKlevin
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.