Vous êtes sur la page 1sur 17

SOMMAIRE

SOMMAIRE .......................................................................................................................................... 1
INTRODUCTION ................................................................................................................................. 2
PARTIE 1 : SYNTHESE DU SEMINAIRE ....................................................................................... 3
A. Synthèse de la journée du jeudi 12 Mai 2022.............................................................................. 4
1. Interpolation et approximation ................................................................................................ 4
1.1. Approximation d’une fonction par une autre ...................................................................... 4
1.2. Approximation polynomiale au sens des moindres carrés .................................................. 4
2. Détermination du polynôme d’interpolation ............................................................................... 5
2.1. Polynôme d’interpolation de Newton .................................................................................. 5
2.2. Polynôme d’interpolation de Lagrange ............................................................................... 5
3. Résolution des systèmes non linéaires : méthode de Newton-Raphson ...................................... 5
B. Synthèse de la journée du jeudi 19 Mai 2022.............................................................................. 6
1. Méthodes analytiques d’optimisation .......................................................................................... 6
1.1. Fonctions soumises à des contraintes d’égalités.................................................................. 6
1.2. Fonctions soumises à des contraintes d’inégalités : Les conditions de Karush-Kuln-
Tucker(KKT) ................................................................................................................................... 6
2. Méthodes numériques d’optimisation ......................................................................................... 7
3. Programmation linéaire ............................................................................................................... 7
PARTIE 2 : PROGRAMMATION SOUS MATLAB ........................................................................ 8
1. Programmer dans la résolution des équations différentielles ...................................................... 8
a. La méthode de Newton............................................................................................................ 8
b. La méthode de Regular-Falsi................................................................................................... 9
c. La méthode de Newton Rapson............................................................................................. 10
2. Programmer dans l’intégration des équations différentielles .................................................... 13
2.1. La méthode de Range Kutta .............................................................................................. 13
2.2. Les méthodes de résolution des équations différentielles ordinaires (ODE) ..................... 13
2.3. Comparons la solution obtenue avec la méthode de Range Kutta à celle obtenu à l’aide de
la méthode d’Euler ........................................................................................................................ 14
PARTIE 3 : EXERCICES D’APPLICATION ................................................................................. 15
1. Exercice 6.6.3.34 ....................................................................................................................... 15
2. Exercice 6.6.3.37 ....................................................................................................................... 16
CONCLUSION .................................................................................................................................... 17

1
INTRODUCTION

Il est possible de résoudre un problème physique ou mathématique de n façons en


utilisant une multitude d’approches numérique ou analytique. Dans le cadre du cours de
« METHODES NUMERIQUES », nous avons étudies les différentes méthodes de recherche
qu’un étudiant devra implémenter pour optimiser les résultats de son mémoire de fin d’année
ainsi que les conditions d’utilisations des différents algorithmes et de priorisation d’une
méthode par rapport à une autre (notamment les problèmes de convergence et d’erreur entre
autres). Ce séminaire s’est clôturé par la production de ce rapport rédigés suivant trois grands
axes : la première partie qui contient la synthèse du séminaire. Dans la deuxième, il était
question de programmer sous Matlab quelques méthodes de résolution et d’intégration des
équations différentielles et en fin la troisième partie consistait à utiliser les macro-commandes
Matlab pour maximiser les fonctions soumises aux contraintes d’inégalités.

2
PARTIE 1 : SYNTHESE DU SEMINAIRE

3
A. Synthèse de la journée du jeudi 12 Mai 2022

1. Interpolation et approximation

1.1. Approximation d’une fonction par une autre

1.2. Approximation polynomiale au sens des moindres carrés

4
2. Détermination du polynôme d’interpolation

2.1. Polynôme d’interpolation de Newton

2.2. Polynôme d’interpolation de Lagrange

3. Résolution des systèmes non linéaires : méthode de Newton-Raphson

5
B. Synthèse de la journée du jeudi 19 Mai 2022

1. Méthodes analytiques d’optimisation

1.1. Fonctions soumises à des contraintes d’égalités

1.2. Fonctions soumises à des contraintes d’inégalités : Les conditions de Karush-

Kuln-Tucker(KKT)

6
2. Méthodes numériques d’optimisation

3. Programmation linéaire

7
PARTIE 2 : PROGRAMMATION SOUS MATLAB
1. Programmer dans la résolution des équations différentielles
a. La méthode de Newton
On souhaite résoude le système d’equation differentielle suivante en utilisant la méthode de
Newton :
y = x12 + x22 – 4 ; y = x12 + x22 – 2 ; avec x £ [-10, -10] et tolérance = -1.0000exp (-0.5)
Pour le faire, on déclare la fonction F(x) dans le script F.m

Puis on déclare la fonction jacobienne lié à la fonction F :


JF(x) = [2x1 + 2x22 – 4 ; y = x12 + x22 – 2] ; dans le script JF(x) :

Et en fin on déclare le programme de Newton lié à la fonction de Newton.

8
Le résultat est visible dans la console : on peut voir que x1 = -1.4142 et x2=-1.4142 à la trois
cent huitième itération.

b. La méthode de Regular-Falsi
Soit la fonction f(x) = 𝑥 + 2ln⁡(⁡𝑥) ou x est un réel positif :
On souhaite approximer la solution de l’équation f(x)=0.
𝑎∗𝑓(𝑏)−𝑏∗𝑓(𝑎)
On commence par calculer c par l’expression : 𝑐 = ; les valeurs de a, b, k et eps
𝑓(𝑏)−𝑓(𝑎)

étant connues et évalues à :


a=0.5; b=1.0; c=a; k=0; eps=1.0e-5;
On compare ensuite f(c) avec f(a) et f(b) pour déterminer l’intervalle de la solution et on
recommence le calcul de c itérativement jusqu'à ce que : |xn – xn-1| < ε.
- Démonstration sous Matlab

9
Après exécution : Sol_regfal = 0.703468124700322 lorsque le Nombre_iter = 6.

c. La méthode de Newton Rapson


Soit la fonction F(x) = log(x) – x2 + 2 :

Nous allons tracer le graphe f([a,b]) à l’aide de la méthode Newton Raphson et interpréter les
résultats obtenus sachant que a, b, x0 et ep sont connus.

10
11
Lorsque le nombre d’itérations N=7, x ne varie plus et on remarque que la figure 1 qui
représente f([a,b]) croit jusqu’à 1, tandis que la figure 2 représentant f_prime([a,b]) est
strictement décroissante

12
2. Programmer dans l’intégration des équations différentielles
Nous allons mettre en œuvre un algorithme pour résolution les équations différentielles en
utilisant la méthode de Range Kutta puis nous allons comparer les résultats avec les méthodes
de résolution des équations différentielles ordinaires.

Soit l’équation différentielle y=y/(1+x2) avec y(0)=1 et x £ [0, 0.4] :

2.1. La méthode de Range Kutta


Résolvons l’équation différentielle ci-dessus sous Matlab en utilisant la méthode de Range
Kutta d’ordre 4 :

2.2. Les méthodes de résolution des équations différentielles ordinaires (ODE)


Résolvons cette équation en utilisant les algorithmes des méthodes de résolution des
équations différentielles ordinaires (ODE) : l’algorithme d’Euler

13
2.3. Comparons la solution obtenue avec la méthode de Range Kutta à celle obtenu à
l’aide de la méthode d’Euler

Méthode Solution Précision Complexité


x = 0 : 0.200000000000000 : 0.400000000000000
Range Kutta y = 1.000000000000000 : 1.218225337385224 Elevée/Bonne Elevé
1.463022370903997
x = 0 : 0.200000000000000 : 1.400000000000000
Euler y = 1.000000000000000 : 1.200000000000000 Moyenne/A-B Faible
1.430769230769231

14
PARTIE 3 : EXERCICES D’APPLICATION
1. Exercice 6.6.3.34
En utilisant la macro-commande linprog, trouvons le maximum de la fonction :

f(x) = 4x1 + 3x2 Soumise aux contraintes :

3𝑥1 + 4𝑥2⁡ ≤ 12

3𝑥1 + 3𝑥2⁡ ≤ 10

2𝑥1 + 𝑥2⁡ ≤ 4

𝑥1 + 𝑥2⁡ ≥ 1

A𝑣𝑒𝑐⁡⁡ ∶ ⁡⁡⁡⁡𝑥𝑖 ≥ 0⁡∀𝑖

Réponses : x1 = 0.8 ; x2 = 2.4 ; f = 10.4 ;

15
2. Exercice 6.6.3.37
En utilisant la macro-commande fmincon, trouvons le maximum de la fonction :

f(x) = 4x1 + 5x2 Soumise aux contraintes :

2𝑥1 + 𝑥2⁡ ≤ 6

𝑥1 + 2𝑥2⁡ ≤ 5

𝑥1 + 𝑥2⁡ ≥ 1

𝑥1 + 4𝑥2⁡ ≥ 2

A𝑣𝑒𝑐⁡⁡⁡⁡ ∶ ⁡⁡𝑥𝑖 ≥ 0⁡∀𝑖

Réponses : x1 = 2.33 ; x2 = 1.33 ; f = 16 ;

16
CONCLUSION

Au terme de ce séminaire et de la production de ce rapport, nous avons étudiés une


multitude de méthodes analytiques et numériques d’optimisation ainsi que les aspects
décisionnels que nous devons observés lors du choix d’une méthode. Nous avons également
programmé dans la résolution et l’intégration des équation différentielles les méthodes les plus
utilisés (les méthodes de Newton, Regular-Falsi, Newton Rapfson et Range Kutta entre autres).
Et pour clôturer, nous avons utilisé les macro-commandes Matlab (fmincon, linprog et fminunc
entre autres) pour résoudre les problèmes d’optimisation (de maximisation) des fonctions
soumises aux contraintes d’égalités ou d’inégalités. Ainsi après avoir mené à bien nos
recherches et obtenus des résultats satisfaisants, nous pouvons affirmés avoir compris au moins
à 70% le cours de « METHODES NUMERIQUES ».

17

Vous aimerez peut-être aussi