Vous êtes sur la page 1sur 10

Faculté de génie mécanique

Département de génie mécanique

Compte rendu du TP
Optimisation

Nom et Prénom :
BELARIFI Youcef

Spécialité :Fabrication Mécanique


La méthode de dichotomie ou méthode de la bissection est, en
mathématiques, un algorithme de recherche d'un zéro d'une fonction qui consiste
à répéter des partages d’un intervalle en deux parties puis à sélectionner le sous-
intervalle dans lequel existe un zéro de la fonction.
Principe
On considère deux nombres réels a et b et une fonction réelle f continue sur
l'intervalle [a, b] telle que f(a) et f(b) soient de signes opposés. Supposons que
nous voulions résoudre l'équation f(x) = 0. D'après le théorème des valeurs
intermédiaires, f a au moins un zéro dans l’intervalle [a, b]. La méthode de
dichotomie consiste à diviser l’intervalle en deux en calculant m = (a+b)/2 Il y a
maintenant deux possibilités : soit f(a) et f(m) sont de signes contraires, soit f(m)
et f(b) sont de signes contraires.

L’algorithme de dichotomie est alors appliqué au sous-intervalle dans lequel le


changement de signe se produit, ce qui signifie que l’algorithme de dichotomie
est récursif L’erreur absolue de la méthode de dichotomie est au plus

Après n étapes car l'erreur est diminuée de moitié à chaque étape.


Réciproquement, si l'on cherche à ce que l'erreur absolue soit inférieure à une
certaine valeur ε, on sait dénombrer le nombre d'itérations nécessaires N pour
satisfaire cette tolérance sur le résultat final :

La méthode converge linéairement, ce qui est très lent par comparaison avec la
méthode de Newton. L'avantage par rapport à cette dernière est son domaine
d'application plus vaste : il suffit seulement que f(a) et f(b) soient de signes
opposés et qu'on puisse déterminer le signe de f(m) à chaque itération.
Programmation
Sous l'hypothèse que le signe de f(m) soit déterminable, voici une représentation
de la méthode en pseudocode, où ε est la précision souhaitée.

Support théorique
Conséquence du théorème des valeurs intermédiaires
« Si f est une fonction continue sur [a,b]et si f(a)-f(b)<0, alors l’équation f(x)=0 a
au moins une solution dans a; b ; si de plus f, est strictement monotone [a;b]sur

, l’équation f(x)=0 a une unique solution dans a; b »


Étapes de la démarche (la dichotomie)
On démarre donc en ayant localisé la racine ∝ entre a et b (a<∝<b) ; et on sait par
exemple que sur cet intervalle, la fonction f (continue) est strictement croissante.
ab
On calcule alors le milieu m de a et b (m  ) puis son image par f:(f(m)) , et
2
on la compare à 0.

Deux cas peuvent alors se produire :

Algorithme
On construit deux suites (an) et (bn) telles que : a0=a, b0=b puis :
ab
1. Si f (m)  0(m  ) alors est la racine de et le problème est terminé
2
2. Si f (m)  0 alors
 Si :

 Si :
On montre alors que : ces deux suites sont adjacentes et de limite commune ∝: la
racine "visée" de l’équation f(x)=0 dans l’intervalle a; b

Dans le cas où l’on tombe exactement sur la racine (f(m)=0 : pris en considération
dans la première ligne du test ci-dessus) ; à partir de là, la suite (bn) devient
stationnaire, égale à la racine, ∝ visée ; l’algorithme ne passe plus qu’alors dans
la deuxième ligne, avec la suite (an) qui, seule, continue à croître et se
rapprocher de ∝.Par construction, après itérations, on obtient an    bn avec
ba
bn  an  L’encadrement de la racine est donc d’amplitude :
2n

ba
2n .On peut donc faire tourner cet algorithme de construction, tant que l’on
n’obtient pas la précision souhaitée Pour avoir une valeur approchée de ∝ à ε>0
ba
Près à la n-ième itération, il suffit que n vérifie : 
2n 1

Ainsi on pourra calculer d’avance le nombre maximal N d’itérations assurant la


précision voulue. C’est la plus petite valeur de qui vérifie :

(ln désigne la fonction logarithme népérien).


Programmation sur fortran
On veut optimiser l’angle α d’une gouttière entre 0° et 90°

Donc on veut écrire un programme qui utilise la méthode dichotomie pour


l’optimiser et obtenu l’angle idéal
On va utiliser l’logiciel « Simply fortran » pour se program et on a obtenus les
résultats suivants
Programme
Solution :

Vous aimerez peut-être aussi