Académique Documents
Professionnel Documents
Culture Documents
FORCE BRUTE
PLAN
Force Brute
Exemples
Recherche Exhaustive
Exemples
1
18/10/2020
Force Brute
Une approche simple, généralement basée directement
sur la déclaration du problème et les définitions des
concepts impliqués
Exemples:
1. Calculer an (a > 0, n positif)
2. Calculer n!
Exemple: 7 3 2 5
2
18/10/2020
Stabilité: Oui
4
p 0.0
for i n down to 0 do
power 1
for j 1 to i do //calculer xi
power power x
p p + a[i] power
return p
Complexité:
0in i = O(n^2) multiplications
9
3
18/10/2020
Evaluation polynomiale:
Amélioration
On peut améliorer l’algorithme en changeant le sens de l’évaluation de
droite à gauche:
10
11
4
18/10/2020
Avantages et inconvénients de la
stratégie Force brute
• Avantages
large applicabilité
simplicité
génère des algorithmes raisonnables pour certains problèmes
importants (par exemple, multiplication de matrice, tri,
recherche, etc.)?
• Inconvénients
donne rarement des algorithmes efficaces
certains algorithmes de force brute sont trop lents
pas aussi constructive que d'autres techniques de conception
13
5
18/10/2020
Recherche exhaustive
Une solution de force brute à un problème impliquant la recherche
d'un élément avec une propriété spéciale, généralement parmi
des objets combinatoires tels que des permutations, des
combinaisons ou des sous-ensembles d'un ensemble.
Méthode:
• générer une liste de toutes les solutions potentielles au
problème de manière systématique
• évaluer les solutions possibles les unes après les autres, en
éliminant les solutions irréalisables et, en cas de problème
d'optimisation, en gardant une trace de la meilleure solution
trouvée jusqu'à présent
• à la fin de la recherche, annoncer la ou les solutions trouvées
14
Exemple 1: Le problème du
voyageur de commerce
• Le problème du voyageur de commerce, consiste en la
recherche d’un trajet minimal permettant à un voyageur de
visiter n villes.
• En d’autre termes: trouver le circuit hamiltonien le plus court
dans un graphe connecté pondéré
• Exemple:
2
a b
5 3
8 4
c 7 d
15
6
18/10/2020
Complexité:
O((n-1)!)
16
17
7
18/10/2020
Conclusions
• Les algorithmes de recherche exhaustive sont rapides
uniquement pour de très petites instances
• Dans certain cas, il y a de bien meilleures alternatives
• Problème du plus court chemin
• Arbre de recouvrement minimum
• Etc.
21