Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikipédial'encyclopédie libre
Rechercher

Optimisation combinatoire

Un article de Wikipédia, l'encyclopédie libre.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cet articlene cite pas suffisamment ses sources().

Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant lesréférences utiles à savérifiabilité et en les liant à la section « Notes et références ».

En pratique :Quelles sources sont attendues ?Comment ajouter mes sources ?

L’optimisation combinatoire (sous-ensemble à nombre de solutions finies de l'optimisation discrète) est une branche de l'optimisation enmathématiques appliquées et eninformatique, également liée à larecherche opérationnelle, l'algorithmique et lathéorie de la complexité.

Définition

[modifier |modifier le code]

Dans sa forme la plus générale, un problème d'optimisation combinatoire (sous-ensemble à nombre de solutions finies de l'optimisation discrète) consiste à trouver dans unensemble discret un parmi lesmeilleurs sous-ensembles (ou solutions) réalisables, la notion demeilleure solution étant définie par une fonction objectif. Formellement, étant donnés :

un problème d'optimisation combinatoire consiste à déterminer

maxSN{f(S):SR}.{\displaystyle \max _{S\subseteq N}\{f(S):\,S\in {\mathcal {R}}\}.}

L'ensemble des solutions réalisables ne saurait être décrit par une liste exhaustive car la difficulté réside ici précisément dans le fait que le nombre des solutions réalisables rend son énumération impossible, ou bien qu'il estNP-complet de dire s'il en existe ou non. La description deR{\displaystyle {\mathcal {R}}} est donc implicite, il s'agit en général de la liste, relativement courte, des propriétés des solutions réalisables.

La plupart du temps, on est dans les cas particuliers suivants :

Exemple

[modifier |modifier le code]

Le problème duvoyageur de commerce (TSP) où un voyageur de Commerce doit parcourir les N villes d'un pays en effectuant le trajet le plus court. Une résolution par énumération nécessite de calculer ((N-1)!)/2 trajets entre des villes. En particulier, pour 24 villes, il faudrait en générer (23!)/2{\displaystyle \approx } 2,5×1022. Pour fournir un ordre de grandeur comparatif, une année ne compte qu'environ 3,16×1013 microsecondes.

Résolution

[modifier |modifier le code]

Trouver une solution optimale dans un ensemble discret et fini est un problème facile en théorie : il suffit d'essayer toutes les solutions, et de comparer leurs qualités pour voir la meilleure. Cependant, en pratique, l'énumération de toutes les solutions peut prendre trop de temps ; or, le temps de recherche de la solution optimale est un facteur très important et c'est à cause de lui que les problèmes d'optimisation combinatoire sont réputés si difficiles. Lathéorie de la complexité donne des outils pour mesurer ce temps de recherche. De plus, comme l'ensemble des solutions réalisables est défini de manière implicite, il est aussi parfois très difficile de trouver ne serait-ce qu'une solution réalisable.

Quelques problèmes d'optimisation combinatoire peuvent être résolus (de manière exacte) en temps polynomial par exemple par unalgorithme glouton, un algorithme deprogrammation dynamique[1] ou en montrant que le problème peut être formulé comme un problème d'optimisation linéaire en variables réelles.

Dans la plupart des cas, le problème estNP-difficile et, pour le résoudre, il faut faire appel à des algorithmes debranch and bound, à l'optimisation linéaire en nombres entiers ou encore à laprogrammation par contraintes.

En pratique, la complexité physiquement acceptable n'est souvent que polynomiale. On se contente alors d'avoir une solution approchée au mieux, obtenue par uneheuristique ou unemétaheuristique.

Pour le problème du VRP envisagé à large échelle,Richard Karp zone les villes, résout le problème zone par zone, puis assemble au mieux les parcours locaux.
Pour un problème d'optimisation d'affectation d'équipages, l'optimisation linéaire en variables réelles dégrossit le problème : on considère comme définitives les valeurs des variables ainsi collées aux extrêmes de leur domaine, et on n'applique les méthodes d'optimisation combinatoire que sur le problème résiduel.

Pour certains problèmes, on peut prouver unegarantie de performance, c'est-à-dire que pour une méthode donnée l'écart entre la solution obtenue et la solution optimale est borné. Dans ces conditions, à domaine égal, un algorithme est préférable à un autre si, à garantie égale ou supérieure, il est moins complexe.

Références

[modifier |modifier le code]
  1. Bellman, Richard (1957),Dynamic Programming,Princeton University Press.Dover paperback edition (2003),(ISBN 0-486-42809-5).
v ·m
Codage
Modèles de calcul
Algorithmique
Syntaxe
Sémantique
Logique mathématique
Mathématiques discrètes
v ·m
Optimisation:théorie etalgorithmes
Non linéaire
Convexe
Linéaire
Quadratique
Combinatoire
Métaheuristique
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=Optimisation_combinatoire&oldid=228224834 ».
Catégories :
Catégories cachées :

[8]ページ先頭

©2009-2026 Movatter.jp