En realidad, nunca había oído hablar de programación geométrica hasta esta pregunta. Aquí hay un artículo de revisión de Stephen Boyd, et al (Vandenberghe es coautor también) que es un tutorial sobre programación geométrica.
Los programas geométricos expresados originalmente no son convexos. Por ejemplo, es un posinomio, y no es convexo, por lo que los programas geométricos no son un subconjunto estricto de la programación convexa.X1 / 2
La ventaja de transformar un programa geométrico en un programa convexo es que el programa geométrico original no es necesariamente convexo. Si resolvió el programa geométrico como un programa no lineal (PNL), necesitaría usar métodos de optimización no convexa para garantizar una solución óptima global. Estos métodos son más caros que los métodos de optimización convexa, requieren más ajustes algorítmicos y requieren conjeturas iniciales.
Además, si utiliza un algoritmo de PNL no convexo, deberá especificar su conjunto factible como un conjunto compacto en ; En programas geométricos, es una restricción válida. x>0Rnortex > 0
No está claro si el conjunto de programas geométricos se asigna (a través de la transformación log-exponencial) a un conjunto de programas convexos que resuelve de manera particularmente eficiente. No veo ninguna ventaja para la programación geométrica más allá de la transformación a programas convexos.
En cuanto a su última pregunta, no creo que el conjunto de programas geométricos sea isomorfo al conjunto de programas convexos, por lo que sospecho que hay programas convexos que no se pueden expresar como programas geométricos, y de estos programas, sospecho que hay son algunos que no se pueden aproximar razonablemente bien por programas geométricos. Sin embargo, no tengo una prueba o un contraejemplo.