Qu'est-ce qu'un algorithme d'approximation à deux critères?


11

Qu'est-ce qu'un algorithme d'approximation à deux critères? Cela continue de se produire dans le cas du clustering de flux de données. Est-ce lié à l'optimisation multi-objectifs?

C'est là que je l'ai rencontré: cis.upenn.edu/~sudipto/mypapers/datastream.pdf. L'article porte sur une version en streaming de l'algorithme k-means. Il y a des références dans l'article mais aucune d'entre elles ne donne d'explication sur ce qu'est un algorithme d'approximation à deux critères. Je n'arrive pas à trouver quoi que ce soit sur Google qui me donnera une définition précise non plus.


1
Je ne sais pas. Où l'avez-vous vu? Pouvez-vous donner un lien et une citation précise à une ou plusieurs sources utilisant cette terminologie? Du nom, cela ressemble à une optimisation multi-objectifs (avec deux fonctions objectives), mais il peut être difficile de le dire sans autre contexte. Aussi, quelles recherches avez-vous faites? Avez-vous recherché sur Google?
DW

Je vous suggère de modifier la question. Les questions devraient se suffire à elles-mêmes; les gens devraient être capables de comprendre tout ce qu'ils doivent savoir en lisant uniquement la question elle-même, pas les commentaires. Les commentaires existent uniquement pour vous aider à améliorer la question. Vous pouvez cliquer sur le bouton "modifier" sous votre question pour l'améliorer. PS Je vous suggère également de répondre à mes autres questions. Quelles recherches avez-vous faites? (Sur ce site, nous attendons de vous que vous fassiez des recherches par vous-même avant de demander ici.)
DW

Réponses:


11

Je développerai la réponse de Yuval Filmus en fournissant une interprétation basée sur des problèmes d'optimisation multi-objectifs .

Optimisation et approximation à objectif unique

En informatique, nous étudions souvent les problèmes d'optimisation avec un seul objectif (par exemple, minimiser f ( x ) soumis à une certaine contrainte). Pour prouver, par exemple, l'exhaustivité de NP, il est courant de considérer le problème budgétaire correspondant . Par exemple, dans le problème de la clique maximale, l'objectif est de maximiser la cardinalité de la clique, et le problème budgétaire est le problème de décider s'il existe une clique de taille au moins k , où k est donné dans le cadre de l'entrée à le problème.

Lorsqu'il n'est pas possible de calculer efficacement une solution optimale, comme dans le cas du problème de clique maximale, nous recherchons un algorithme d'approximation , une fonction qui génère une solution dans un facteur multiplicatif d'une solution optimale. Vous pouvez également envisager un algorithme d'approximation pour le problème budgétaire, une fonction qui génère une solution qui satisfait f ( x ) ≥ ck dans le cas d'un problème de maximisation, où c est un nombre inférieur à un. Dans cette situation, la solution peut violer la contrainte dure f ( x ) ≥ k , mais la "gravité" de la violation est limitée par c .

Optimisation multi-objectif et approximation bi-critère

Dans certains cas, vous souhaiterez peut-être optimiser deux objectifs simultanément. Pour un exemple approximatif, je peux vouloir maximiser mes "revenus" tout en minimisant mes "coûts". Dans une telle situation, il n'y a pas de valeur optimale unique, car il y a un compromis entre les deux objectifs; pour plus d'informations, consultez l'article Wikipedia sur l'efficacité de Pareto .

Une façon de transformer un problème d'optimisation à deux objectifs en un problème d'optimisation à objectif unique (pour lequel nous pouvons raisonner sur la valeur optimale de la fonction objectif) est de considérer les deux problèmes de contrainte , un pour chaque objectif. Si le problème est de maximiser simultanément f ( x ) tout en minimisant g ( x ), le premier problème de contrainte est de minimiser g ( x ) soumis à la contrainte f ( x ) ≥ k , où k est donné dans le cadre de l'entrée de ce problème d'optimisation à objectif unique. Le deuxième problème de contrainte est défini de manière similaire.

Un algorithme d'approximation ( α , β ) - bicriteria pour le premier problème de contrainte est une fonction qui prend un paramètre de budget k en entrée et sort une solution x telle que

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

où est une solution qui atteint la valeur optimale pour g . Un algorithme d'approximation à deux critères pour le deuxième problème de contrainte génère une solution telle quex

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

En d'autres termes, l'algorithme d'approximation à deux critères est simultanément une approximation du problème budgétaire dans le premier objectif et du problème d'optimisation dans le deuxième objectif. (Cette définition a été adaptée de la page quatre de « Optimisation submodulaire avec couverture submodulaire et contraintes de sac à dos submodulaire », par Iyer et Bilmes, 2013.)

Les inégalités changent de direction lorsque les objectifs passent du maximum au minimum ou vice versa.


6

Souvent, un problème d'optimisation implique plusieurs paramètres. Par exemple, considérons le problème du partitionnement des graphes. Étant donné un graphe pondéré, un entier et un paramètre , nous voulons partitionner le sommet défini en parties de taille au plus tout en minimisant le nombre d'arêtes coupées (arêtes reliant des sommets appartenant à différentes parties). Notez qu'il y a deux paramètres ici: et le nombre d'arêtes coupées.kρkV1,,VkρE(V1,,Vk)ρ

Pour , un algorithme d'approximation produirait une partition où chaque partie est de taille au plus , et le nombre d'arêtes coupées est au plus , où est le nombre optimal d'arêtes coupées dans le problème d'origine , avec les pièces contraintes d'être au plus de taille .f(n),g(n)1f(n),g(n)V1,,Vkf(n)ρg(n)OPTOPTρ

En d'autres termes, un algorithme d'approximation à deux critères atteint un certain rapport d'approximation tout en violant certaines contraintes d'une certaine quantité limitée. Pour un exemple d'algorithme d'approximation à deux critères pour le problème qui vient d'être décrit, voir cet article des frères Makarychev.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.