Liens entre problèmes de plus courts chemins, de fermeture transitive et de multiplication de matrices.

En algorithmique, pour montrer que deux problèmes sont reliés une approche courante consiste à exhiber des réductions d'un problème à l'autre. Une réduction d'un problème A à un problème B consiste à montrer que, via des transformations et des calculs, pour résoudre A je peux me ramener à résoudre B. Autrement dit, si je sais résoudre B, je peux l'utiliser pour résoudre A. Une réduction consiste parfois juste à remarquer que A est un cas particulier de B, mais parfois fait appel à des transformations plus subtiles. Cela permet d'énoncer des résultats du genre : si je sais résoudre B en temps et espace O(T(n,m)), alors je sais résoudre A en temps O(T(n,m)2+nm) et espace O(T(n,m)+n).

Ce type de liens entre problèmes est bien sûr très utilisé en théorie de la complexité. Un exemple typique est la définition de la classe des problèmes NP-complets. Ceci-dit, il est aussi très intéressant d'avoir des liens entre problèmes polynomiaux. L'objectif de ce sujet est de dresser des liens entre des problèmes importants de théorie des graphes, à savoir des problèmes de calcul de chemins, ainsi qu'avec des problèmes matriciels comme la multiplication de matrices.

Liste (non exhaustive) de problèmes à relier (si possible) :
Pour chacun de ces problèmes, il sera bien sûr intéressant présenter les meilleurs complexités (temps et espace) connues à l'heure actuelle, mais on s'attachera surtout à décrire et analyser des réductions reliant ces différents problèmes.

Quelques références (pas exhaustif).

Retour à la page des sujets.