¿Qué es un algoritmo de aproximación de bicriteria?

11

¿Qué es un algoritmo de aproximación de bicriteria? Esto sigue apareciendo en el caso de la agrupación de flujo de datos. ¿Está esto relacionado con la optimización de objetivos múltiples?

Aquí es donde lo encontré: cis.upenn.edu/~sudipto/mypapers/datastream.pdf. El documento trata sobre una versión de transmisión del algoritmo k-means. Hay referencias en el documento, pero ninguna de ellas da una explicación de qué es un algoritmo de aproximación de bicriterios. Parece que tampoco puedo encontrar nada en Google que me dé una definición precisa.

Suhas Lohit
fuente
1
No lo sé. ¿Dónde lo viste referido? ¿Puede dar un enlace y una cita precisa a una o más fuentes que usan esta terminología? Por el nombre, suena como una optimización multi-objetivo (con dos funciones objetivas), pero puede ser difícil de distinguir sin más contexto. Además, ¿qué investigación hiciste? ¿Buscaste en Google?
DW
Te sugiero que edites la pregunta. Se espera que las preguntas sean independientes; las personas deberían poder entender todo lo que necesitan saber al leer solo la pregunta en sí, no los comentarios. Los comentarios existen solo para ayudarlo a mejorar la pregunta. Puede hacer clic en el botón "editar" debajo de su pregunta para mejorarla. PD: te sugiero que también respondas mis otras preguntas. ¿Qué investigación hiciste? (En este sitio, esperamos que haga una investigación por su cuenta antes de preguntar aquí.)
DW

Respuestas:

11

Ampliaré la respuesta de Yuval Filmus al proporcionar una interpretación basada en problemas de optimización de objetivos múltiples .

Optimización y aproximación de un solo objetivo.

En ciencias de la computación a menudo estudiamos problemas de optimización con un solo objetivo (por ejemplo, minimizar f ( x ) sujeto a alguna restricción). Al probar, por ejemplo, la completitud de NP, es común considerar el problema presupuestario correspondiente . Por ejemplo, en el problema de la camarilla máxima, el objetivo es maximizar la cardinalidad de la camarilla, y el problema del presupuesto es el problema de decidir si hay una camarilla de tamaño al menos k , donde k se da como parte de la entrada para el problema.

Cuando no es posible calcular una solución óptima de manera eficiente, como en el caso del problema de la camarilla máxima, buscamos un algoritmo de aproximación , una función que genere una solución dentro de un factor multiplicativo de una solución óptima. También podría considerar un algoritmo de aproximación para el problema de presupuesto, una función que genera una solución que satisface f ( x ) ≥ ck en el caso de un problema de maximización, donde c es un número menor que uno. En esta situación, la solución puede violar la restricción fuerte f ( x ) ≥ k , pero la "gravedad" de la violación está limitada por c .

Optimización multi-objetivo y aproximación bi-criterio.

En algunos casos, es posible que desee optimizar dos objetivos simultáneamente. Para un ejemplo aproximado, es posible que desee maximizar mis "ingresos" mientras minimizo mi "costo". En tal situación, no existe un valor óptimo único, ya que existe una compensación entre los dos objetivos; Para obtener más información, consulte el artículo de Wikipedia sobre la eficiencia de Pareto .

Una forma de convertir un problema de optimización de dos objetivos en un problema de optimización de un solo objetivo (por lo que podemos razonar sobre el valor óptimo de la función objetivo) es considerar los dos problemas de restricción , uno para cada objetivo. Si el problema es maximizar simultáneamente f ( x ) mientras se minimiza g ( x ), el primer problema de restricción es minimizar g ( x ) sujeto a la restricción f ( x ) ≥ k , donde k se da como parte de la entrada a Este problema de optimización de un solo objetivo. El segundo problema de restricción se define de manera similar.

Un algoritmo de aproximación ( α , β ) - bicriteria para el primer problema de restricción es una función que toma un parámetro de presupuesto k como entrada y genera una solución x tal que

  • f(x)αk ,
  • g(x)βg(x) ,

donde es una solución que logra el valor óptimo para g . Un algoritmo de aproximación de bicriteria para el segundo problema de restricción genera una solución talx

  • f(x)αf(x) ,
  • g(x)β ,

En otras palabras, el algoritmo de aproximación de bicriterios es simultáneamente una aproximación para el problema de presupuesto en el primer objetivo y el problema de optimización en el segundo objetivo. (Esta definición fue adaptada de la página cuatro de " Optimización submodular con cubierta submodular y restricciones de mochila submodular ", por Iyer y Bilmes, 2013).

Las desigualdades cambian de dirección cuando los objetivos cambian de máximo a mínimo o viceversa.

argentpepper
fuente
6

A menudo, un problema de optimización implica varios parámetros. Por ejemplo, considere el problema de la partición de gráficos. Dado un gráfico ponderado, un entero y un parámetro , queremos dividir el conjunto de vértices en partes de tamaño como máximo mientras minimizamos el número de bordes de corte (bordes que conectan vértices que pertenecen a diferentes partes). Observe que hay dos parámetros aquí: y el número de bordes cortados.kρkV1,,VkρE(V1,,Vk)ρ

Para , un algoritmo de aproximación de bicriterios generaría una partición donde cada parte es de tamaño como máximo , y el número de bordes cortados es como máximo , donde es el número óptimo de bordes cortados en el problema original , con las partes restringidas a un tamaño máximo .f ( n ) , g ( n ) V 1 , , V k f ( n ) ρ g ( n ) O P T O P T ρf(n),g(n)1f(n),g(n)V1,,Vkf(n)ρg(n)OPTOPTρ

En otras palabras, un algoritmo de aproximación de bicriterios logra una cierta relación de aproximación mientras viola alguna restricción por una cantidad limitada. Para ver un ejemplo de un algoritmo de aproximación de bicriterios para el problema que se acaba de describir, consulte este documento de los hermanos Makarychev.

Yuval Filmus
fuente