DEA Algo
, Cours sur les algorithmes d'approximation
Enseignante : Claire Kenyon, Laboratoire de Recherche en Informatique, bat 490,
91405 Orsay Cedex. Email: claire.kenyon@lri.fr
Calendrier :
Il y aura 20 heures de cours, a peu pres repartis en
dix seances de cours de 2 heures, les jeudi de 10h40 a 12h40, salle
11 couloir 65-66 a Jussieu. A priori on s'oriente sur
un cours
le Me 6/2 a 10h40, pas de cours le jeudi 14/2,
et une seance de 4h le 21/2 -- a confirmer.
Jeudi 13/12: Introduction, programmation dynamique, suite de Fibonacci,
sac a dos, schema d'approximation pour le sac a dos, arbre
couvrant de cout minimum, graphes euleriens, 2-approximation pour le tour
du voyageur de commerce metrique.
Jeudi 20/12: couplages parfaits de poids minimum, 3/2-approximation pour
le tour du voyageur de commerce metrique, schema d'approximation pour le
tour du voyageur de commerce euclidien en dimension 2. Ordonnancement
de taches pour minimiser le temps de completion maximal : 2-approximation
de Graham, schema d'approximation.
Jeudi 10/1: schema d'approximation de Fernandez de la Vega et Lueker
pour le bin-packing (Vazirani chapitre 9); schema d'approximation
de Fernandez de la Vega et Kenyon pour MaxCut euclidien planaire.
Jeudi 17/1 Vazirani chapitres 1 et 2 : 2-approximation pour ensemble
transversal (vertex cover), ln(n)-approximation pour couverture
par ensembles (set cover), application = 2 ln(n)-approximation
pour "shortest superstring".
Jeudi 24/1 Programmation lineaire. Principe de l'algorithme
du simplexe (exemple tire du livre de Chvatal "linear programming").
Application de la programmation lineaire a l'approximation :
2-approximation pour couverture par sommets par "LP-rounding",
O(log n)-approximation
randomisee pour couverture par ensembles via "randomized rounding"
(Vazirani chapitre 14).
Jeudi 31/1 Methode des esperances conditionnelles :
Max Sat (Vazirani chapitre 6). Programmation semi-definie
(Vazirani chapitre 26).
(Attention a la date et au lieu !) Mercredi 6/2 a 10h40, salle
203/205 au batimant 41. Vazirani chapitre 28.1 (comptage de solutions
de formules DNF). Maxcut dans les graphes denses : algorithme de
Goldreich, Goldwasser et Ron.
Jeudi 7/2 Vazirani chapitre 12.1, exo 12.10, et chapitre 15.
Jeudi 14/2: pas de cours
Jeudi 21/2: seance de 4h, jeudi 8h40-12h40, consacree aux presentations
d'articles par les etudiants (voir planning un peu plus bas).
Bibliographie :
La principale reference bibliographique est le
livre de Vijay Vazirani, Approximation Algorithms, Springer-Verlag 2001,
ISBN 3-540-65367-8. Ses notes de cours ne sont desormais plus
accessibles sur le web; en revanche il y a de nombreuses
references de notes de cours sur les algorithmes d'approximation,
proches de mon cours. Par exemple, voir les notes de cours de
Williamson ou de
Cheriyan et Ravi.
Contenu du cours :
Pour resoudre des problemes d'optimisation qui sont NP-difficiles
ou qui n'ont pas d'algorithme polynomial connu, il est naturel de
rechercher une solution approximative, avec borne sur l'erreur relative
entre la qualite de la solution produite par l'algorithme par rapport
a la valeur de la solution optimale. Nous etudierons diverses
techniques pour concevoir des algorithmes d'approximation, au travers
d'exemples representatifs :
Coupe de valeur maximum pour separer $n$ points dans le plan euclidien
, et recherche exhaustive; Probleme du sac a dos, et programmation dynamique; Probleme du ``Broadcast'' dans un reseau, et arrondi probabiliste;
Bin-packing et programmation lineaire; Diffusion de donnees sur un canal, et relaxation lagrangienne; Codes de Huffman avec lettres de co\^uts differents, et relaxation adh
oc; Couverture de sommets par ensembles, et dualite
de la programmation lineaire.
Evaluation : Les etudiants auront un article a lire et a presenter
avec rapport ecrit. Les articles sont accessibles a partir
des liens ci-dessous. Vous pouvez eventuellement presenter
un article en dehors de ceux de cette liste (si vous vous interessez
particulierement a un domaine dans lequel il y a des algorithmes
d'approximation, mais non represente dans la liste), a condition qu'il porte
sur les algorithmes d'approximation et que vous me le
montriez auparavant pour que j'y jette un coup d'oeil.
En pratique, ce travail se fera en binomes. Jeudi 6 fevrier,
vous me donnez la liste des binomes et le titre de
l'article lu par chaque binome.
Jeudi 21/2, soutenances toute la matinee et remise
du rapport au moment de la soutenance.
Ces soutenances font partie du cours : vous devez assister aux soutenances
les uns des autres.
Pour la soutenance, il est fortement conseille d'utiliser des transparents.
Vous devez 1) lire 2) ecrire et 3) parler.
1) Lire l'article (ou la partie de l'article qui vous interesse)
en detail, c'est-a-dire:
- verifier tous les calculs, completer les preuves qui ne
seraient qu'esquissees, corriger les "bugs" eventuels,
aller consulter des references si necessaires
(pour avoir le contexte et la motivation du probleme, la preuve de
NP-completude, la preuve de tel ou tel theoreme utilise dans l'article...).
- Apres ce premier debroussaillage,
vous devez reflechir a l'interet de l'article de facon plus creative :
par exemple, en essayant divers exemples d'instances
interessantes ; des variantes que vous
pouvez imaginer, soit pour l'algorithme (marchent-elles
ou pas ? Pourquoi ? Sont-elles plus rapides, plus simples ?), soit
pour le probleme (l'algorithme peut-il etre adapte pour resoudre un
probleme proche ?); en implementant et testant l'algorithme; y a-t-il
un probleme plus simple pour lequel l'algorithme est plus facile a
comprendre, plus intuitif ? Etc. Ce sont quelques suggestions de questions
pouvant vous aider a comprendre l'article plus en profondeur.
2) Ecrire le rapport : il est conseille de le taper a la machine (en Latex
par exemple : vous aurez de toute facon besoin d'apprendre Latex
pour votre these, et c'est ideal pour ecrire des formules mathematiques).
Vous n'etes pas oblige de faire un rapport sur la totalite de l'article:
dans le cas d'articles touffus ou resolvant plusieurs problemes, vous
pouvez tres bien choisir une partie de l'article seulement.
Ce rapport doit tout d'abord comporter un resume de l'article
ou de la partie d'article que vous avez lue, resume d'au plus une page :
Definition du probleme, motivation, resultat nouveau, methode utilisee.
Ensuite, les "details" (eventuellement consequents) par lesquels
vous avez du completer l'article : signaler les erreurs, donner
une preuve plus simple que celle de l'article ou une preuve manquante
pour un lemme, parler de resultats dans des references bibliographiques
que vous auriez ete amenes a consulter. Ceci peut faire typiquement entre 1
et 2 pages. Enfin, une partie "ouverte" ou vous faite part de vos
reflexions. Pour un travail vraiment satisfaisant (pour esperer obtenir
une note >14), c'est la la
partie essentielle du rapport.
3) Parler pendant la soutenance : a priori je prevois environ 25 minutes par binome.
La presence des deux binomes est indispensable a priori (sauf
exception motivee). Prevoir
environ 12 a 15 transparents. La presentation doit etre faite non pas
pour moi mais pour les autres etudiants du cours. L'aspect pedagogique
est primordial (et sera primordial dans la notation : votre presentation
est confuse et me donne l'impression que les etudiants y assistant ont
perdu leur temps, vous serez bien sur penalises). Il ne s'agit pas de m'impressionner par vos connaissances,
mais d'enseigner quelque chose a vos camarades. Donc : prendre son
temps, ne pas vouloir trop en faire, eviter
les notations mathematiques, etre tres concret, faire des exemples, choisir
une seule idee et centrer l'expose autour de cette idee a faire passer
(ce peut etre une idee de comment modeliser un probleme applique, ou
une idee algorithmique, ou une idee dans l'analyse, ou autre);
bien structurer son expose, ecrire assez gros et lisible, parler
de maniere intelligible, utiliser des
feutres de couleurs, faire des schemas ou croquis, garder le contact
avec l'auditoire et s'assurer que les gens suivent (le fait que les
gens ne posent pas de questions signifie habituellement qu'ils sont
perdus), etc. Pour faire une
bonne soutenance, il est necessaire mais non suffisant d'avoir lu et
compris l'article presente.
Programme des presentations d'articles du Jeudi 21 fevrier
8h40 Steve Oudot, facility location (Shmoys et al)
9h15 Hugo Gimbert et Alex Stanger, low-degree spanning trees of small weight
9h50 Alexandre Popescu et Eugene Tarassov, Average completion times
10h25 Vincent Bernat et Nathalie Bertrand, Superstrings
11h Behshad Behzadi et Daniel Ivan, Min Latency
11h35 K.-F. Lin et Daniel Goncalves, "Primal-dual parallel approximation technique applied
to weighted set and vertex cover."
12h10 Mickael Delarbre et Thomas Deneux, Huffman
- Lasse Rempe, bin covering (rapport uniquement)
Pour m'envoyer un mail : cliquer ici
Liste des etudiants suivant le cours:
ivan@poly.polytechnique.fr fayollej@cicrp.jussieu.fr
houtmann@dptmaths.ens-cachan.fr nathalie.bertrand@crans.org
deneux@clipper.ens.fr michael.delarbre@cicrp.jussieu.fr
steve.oudot@ensta.fr vialette@liafa.jussieu.fr
serre@liafa.jussieu.fr bernat@free.fr another_lin@yahoo.com
m.korzen@caramail.com alexei_stanger11@yahoo.com
gimbert@dptmaths.ens-cachan.fr lasse@lri.fr
popescu@poly.polytechnique.fr alexei_stanger11@yahoo.com
behshad.behzadi@polytechnique.fr goncalve@rip.ens-cachan.fr
olivon@ifrance.com m.korzen@commail.com
Stages de DEA proposes: cliquer ici
Quelques articles parmi lesquels choisir un article a lire et a presenter :
- Une partie de :
Polynomial-time Approximation Schemes for Euclidean TSP and other
Geometric Problems. Sanjeev Arora.Journal of the ACM 45(5) 753-782, 1998.
Accessible ici
-
Better Approximation Algorithms for Bin Covering, J. Csirik, D. S. Johnson,
and C. Kenyon. Twelth Annual ACM-SIAM Symposium on Discrete
Algorithms (SODA), 2001. Accessible ici
-
Huffman Coding with Unequal Letter Costs, Mordecai J. Golin, Claire Kenyon and Neal E. Young, preprint. Accessible ici
-
D.B. Shmoys, E. Tardos, and K.I. Aardal. "Approximation algorithms for facility location problems". In the Proceedings of the 29th Annual ACM Symposium on Theory
of Computing (1997), 265-274. Accessible ici
-
Minimizing Average Completion Time in the Presence of Release Dates
Cindy Phillips, Cliff Stein and Joel Wein, 1995. In Mathematical Programming B, 82, 1998. A Preliminary version appeared in WADS '95. Accessible ici
-
Linear Approximation of Shortest Superstrings.
Avrim Blum, Tao Jiang, Ming Li, John Tromp, and Mihalis Yannakakis. JACM 31(4):630--647, 1994. An earlier version
appears in Proceedings of the 23rd Annual ACM Symposium on Theory of Computing, pages 328-336, May 1991. Accessible
ici
-
Uriel Feige and Michel Goemans.
Approximating the value of two prover proof systems, with applications to MAX 2SAT and MAX DICUT.
Proc. of 3rd Israel Symposium on the Theory of Computing and Systems, 182--189, 1995.Accessible
ici .
Difficile mais interessant.
-
M. Goemans, J. Kleinberg. An improved approximation ratio for the minimum latency problem. Proc. 7th ACM-SIAM Symposium on Discrete Algorithms, 1996.
Accessible
ici .
-
M.X. Goemans and D.P. Williamson, Improved Approximation Algorithms for Maximum Cut and Satisfiability Problems Using
Semidefinite Programming, J. ACM, 42, 1115--1145, 1995. A lire: a partir
de la page 15. Accessible
ici .
-
Approximation Algorithms for the Metric Labeling Problem via a New Linear Programming Formulation.
(Chandra Chekuri, Sanjeev Khanna, Seffi Naor, and Lenoid Zosin).
In Proceedings of the Twelfth Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), January 2001. Accessible
ici .
-
C. Kenyon et N. Schabanel.
« The data broadcast problem with non-uniform transmission times ».
Accessible
ici .
-
N. Schabanel.
« The databroadcast problem with preemption ».
Accessible
ici .
-
Samir Khuller, Uzi Vishkin, N. Young.
Primal-dual parallel approximation technique applied to weighted set and vertex cover.
J. of Algorithms (1994), 280--289.
Accessible
ici .
-
Samir Khuller, Balaji Raghavachari, N. Young.
Low degree spanning trees of small weight.
SIAM Journal on Computing, 25(2):355--368, 1996.Accessible
ici .
- Part of :
The geometry of graphs and some of its algorithmic applications, N. Linial, E. London and Yu. Rabinovich, Combinatorica, 15(1995) 215 - 245.
Accessible
ici .