PROGRAMMATION SCIENTIFIQUE EN C PRO-1027. Résolution de système d’équations non- linéaires (racines d’équations) u Méthode de la bissection u Analyse.

Slides:



Advertisements
Présentations similaires
Eléments d'algèbre linéaire
Advertisements

3. Variantes de l’algorithme
2. Méthodes du simplexe et son analyse.
3. Analyse et estimation du mouvement dans la vidéo
4. Descripteurs du contenu
Section VI Structures répétitives (suite)
Traitements d'images et Vision par ordinateur
PROGRAMMATION SCIENTIFIQUE EN C
Algorithmique et Programmation
RECONNAISSANCE DE FORMES
ASI 3 Méthodes numériques pour l’ingénieur
TRAITEMENT D’IMAGE SIF-1033.
Concepts avancés en mathématiques et informatique appliquées
Continuité Montage préparé par : André Ross
PROGRAMMATION SCIENTIFIQUE EN C
Systèmes d’équations linéaires
Rappel... Solution itérative de systèmes linéaires (suite et fin).
Optimisation non linéaire sans contraintes
La fonction quadratique
Courbes de Hermite Michael E. Mortenson, Geometric Modeling. Wiley, 1997, 523p.
Courbes de Bézier.
Optimisation-Identification et Cast3M
PROGRAMMATION SCIENTIFIQUE EN C
PROGRAMMATION SCIENTIFIQUE EN C
PROGRAMMATION SCIENTIFIQUE EN C
PROGRAMMATION SCIENTIFIQUE EN C
PIF-6003 Sujets spéciaux en informatique I
SUJETS SPÉCIAUX EN INFORMATIQUE I
RECONNAISSANCE DE FORMES
SUJETS SPÉCIAUX EN INFORMATIQUE I
SUJETS SPÉCIAUX EN INFORMATIQUE I
Les fonctions leurs propriétés et.
Technique de points de contrôle: Formes de Bézier
Programmation linéaire en nombres entiers : les méthodes de troncature
l’algorithme du simplexe
Géométrie épipolaire (deux vues)
Rappel... Valeurs propres et vecteurs propres. Définitions;
PROGRAMMATION SCIENTIFIQUE EN C
Programmation linéaire en nombres entiers
PROGRAMMATION SCIENTIFIQUE EN C
Résolution d’un problème de diffusion 1D
Probabilités et Statistiques Année 2010/2011
INF-1019 Programmation en temps réel
CHAPITRE III Calcul vectoriel
Chapitre 9 La transformée de Laplace
7.4 VECTEURS PROPRES Cours 22. Au dernier cours nous avons vus ✓ Les cisaillements ✓ Les projections orthogonales ✓ Les projections obliques.
PROGRAMMATION SCIENTIFIQUE EN C PRO Résolution de système d’équations non- linéaires (racines d’équations) u Introduction u Méthode de recherche.
SÉRIE DE TAYLOR cours 28.
- 5 - Optimisation linéaire et non-linéaire
PROGRAMMATION SCIENTIFIQUE EN C PRO Approximation de fonctions et régression u Approximation linéaire –Méthode du moindre carré u Travail pratique.
Méthode des moindres carrés (1)
Post-optimisation, analyse de sensibilité et paramétrage
2. Méthode du simplexe et son analyse.
Interpolation et Approximation
Résolution des équations différentielles
Jacques Paradis Professeur
Concepts avancés en mathématiques et informatique appliquées MAP-6014.
PROGRAMMATION SCIENTIFIQUE EN C PRO Approximation de fonctions et régression u Approximation linéaire –Méthode du moindre carré u Exemple.
Partie II : Segmentation
PIF-6003 Sujets spéciaux en informatique I
Les fonctions Les propriétés. Chaque fonction possède ses propres caractéristiques: Ainsi l’analyse de ces propriétés permet de mieux cerner chaque type.
1. Méthode du simplexe et son analyse.
PROGRAMMATION SCIENTIFIQUE EN C
PROGRAMMATION SCIENTIFIQUE EN C PRO Résolution de système d’équations non-linéaires (racines d’équations) u Introduction u Méthode de recherche.
Pierre Joli Cours de Mathématique Pierre Joli
MAXIMUM ET MINIMUM D’UNE FONCTION
M. BENJELLOUN : 2005 Le but final est de programmer un jeu où l'ordinateur choisira un nombre aléatoire entre 0 et 100 que vous devez deviner.
PROGRAMMATION SCIENTIFIQUE EN C
Transcription de la présentation:

PROGRAMMATION SCIENTIFIQUE EN C PRO-1027

Résolution de système d’équations non- linéaires (racines d’équations) u Méthode de la bissection u Analyse de la convergence de la méthode de bissection u Exemple de recherche –Recherche des zéros par la méthode de la bissection –Recherche de plusieurs zéros

Méthodes de la bissection u La méthode de la bissection permet la localisation d’une seule racine dans un intervalle donné u Conditions requises –La fonction f(x) est continue sur l’intervalle [a,b] –SI f(a)f(b) une racine dans l’intervalle u Pour une précision équivalente, cette méthode est généralement plus rapide (convergence)

Méthodes de la bissection u Étapes de la méthodes de bissection –Pour un intervalle [a,b], calculer la position du cen- tre de l’intervalle par: c = 1/2(a+b) = a+(b-a)/2 –Calculer f(a), f(b) et f(c) –Calculer f(a)f(c) et f(c)f(b) –Vérifier la convergence »Si les critères de convergence sont satisfaits, afficher la valeur de la racine » Sinon modifier les extrémités de l’intervalle, répéter les étapes précédentes

Méthodes de la bissection

u La méthode de la bissection converge si une racine se trouve dans un intervalle donné et trouve une seule racine si le nombre de racines dans un inter- valle est impair

Méthodes de la bissection

Méthode de la bissection u Algorithme de la bissection BISSEC(float a, float b, int nbiterMAX, float delta, float eps) u = f(a) v = f(b) e = b-a imprimer a,b,u,v SI u*v > 0 ALORS imprimer un message indiquant l’absence d’une racine SINON nbiter = 0 w = MAXFLOAT TANT QUE nbiter delta ET |w| > eps FAIRE e = e/2 c = a+e w = f(c) imprimer nbiter, c, w, e

Méthode de la bissection u Algorithme de la bissection TANT QUE nbiter delta ET |w| > eps FAIRE e = e/2 c = a+e w = f(c) imprimer nbiter, c, w, e SI (u*w<0) ALORS b=c v=w SINON a=c u=w FIN SI nbiter++ FIN TANTQUE FIN SI

Méthode de la bissection u Cas ou les critères de convergence sont déficients Racines multiples ( échec sur le critère |f(c)| <  )

Méthode de la bissection u Cas ou les critères de convergence sont déficients Discontinuité ( échec sur le critère |b-a| <  )

Analyse de la convergence u Le critère de convergence peut être exprimé en valeur absolue par  a =  c k+1 - c k  k étant le nombre d’itérations u Il peut aussi être exprimé en pourcentage de l’erreur relative u La précision réelle de la solution est donnée

Analyse de la convergence u Exemple de convergence avec la fonction f(x) = 20 - x 2 = 0 u Avec comme solution c t = sur l’intervalle [0,6]

Analyse de la convergence u Exemple de convergence

Exemple de recherche u Utilisation de la méthode de bissection

Exemple de recherche u Utilisation de la méthode de bissection

Exemple de recherche u Recherche de plusieurs zéros (exemple) –Cherchons les valeurs et les vecteurs propres associés à une matrice A (ex: matrice de coefficients de corré- lation ou matrice variance-covariance) –Si nous avons une matrice A de n x n nous pouvons écrire – Où x est un vecteur propre de A et une valeur propre de A

Exemple de recherche u Recherche de plusieurs zéros (exemple) –Si nous avons une matrice A de n x n nous pouvons écrire – Pour que soit une valeur propre il faut que la solution de la dernière équation soit non nulle. Pour que x soit non nulle il faut que

Exemple de recherche u Recherche de plusieurs zéros (exemple) –Si nous considérons un cas d’ordre 3, nous obtenons – Le déterminant donne

Exemple de recherche u Recherche de plusieurs zéros (exemple) –Lorsque nous avons les valeurs propres, nous les substituons une à une dans (A- I) x = 0 pour trouver les vecteurs propres x

Exemple de recherche u Recherche de plusieurs zéros (exemple) –Les vecteurs propres désignent chacun des axes orthogonaux de variance maximale des données –De plus, les valeurs propres donnent une mesure de la variabilité des données selon chaque axe –Les vecteurs propres nous permettent alors par une transformation linéaire de passer d’un domaine où les données sont corrélées à un autre non corrélé

Exemple de recherche u Recherche de plusieurs zéros (exemple) x1x1 x2x2 * * * * * * * * * * * * * * * * * * * * * * * *

Exemple de recherche u Système d’équations linéaires Ax = 0 : –Si nous avons une matrice variance-covariance A de 2X2

Exemple de recherche u Algorithme de résolution SVD: matrice A de NXN for(i=1;i<=N;i++) for(j=1;j<=N;j++) u[i][j] = a[i][j]; svdcmp(u,N,N,w,v); wmax = 0.0; for(j=1;j wmax) wmax = w[j]; wmin = wmax; // trouver la valeur propre min. dans w for(j=1;j<=N;j++) if((w[j] < wmin) && w[j] != 0.0) {wmin = w[j]; minPos = j;} for(j=1;j<=N;j++) x[j]=v[j][minPos]; // x contient un vecteur propre

Exemple de recherche u Localiser des extremums de fonctions (ex: histogramme) –Calcul de l’histogramme d’une image contenant deux objets principaux for(j=0;j<Hauteur;j++) for(i=0;i<Largeur;i++) h[I[j][i]]++; // comptage des pixels de chaque couleur –Localisation des extremums »Estimation de la dérivée première de la fonction h[] »Détection des passages par zéro associés aux extremums »Localiser les deux maximums associés à la moyenne de chaque distribution de couleur des deux objets »Localiser ensuite le minimum entre ces deux maximums –Segmenter l’image en deux régions distinctes en utilisant un seuil correspondant au minimum

Exemple de recherche u Localiser des extremums de fonctions (ex: histogramme) –Localisation des extremums »Estimation de la dérivée première de la fonction h[]: Pour estimer la dérivée première d’une fonction, il faut convoluer la fonction avec un opérateur de dérivée première. Opération de convolution entre une fonction h() et un opérateur

Exemple de recherche u Localiser des extremums de fonctions (ex: histogramme) –Localisation des extremums »Opérateur de dérivée première (forme mathématique) DF/ 2 = 4  DF = 8  +1 Où   [0.5..(N-1)/8] Où DF  [5,7,9..N]

Exemple de recherche u Localiser des extremums de fonctions (ex: histogramme) –Segmenter l’image en deux régions distinctes en utilisant un seuil correspondant au minimum »Après avoir détecté les deux maximums et le minimum entre ces deux maximums à partir de la fonction dérivée g(x) »Segmentation de l’image avec le seuil S correspondant au minimum entre les deux maximums détectés à l’étape précédente. for(j=0;j<Hauteur;j++) for(i=0;i<Largeur;i++){ if( I[j][i] > seuil) I[j][i] = 255; else I[j][i] = 0; }