Vous êtes sur la page 1sur 99

ABDELKADER BENHARI

METHODES NUMERIQUES

Daprs les historiens, le calcul numrique remonte au moins au troisime millnaire avant notre re. Il est `a lorigine favorise par le besoin deffectuer des mesures dans dfrents domaines de la vie courante, notamment en agriculture, commerce, architecture, gographie et navigation ainsi quen astronomie. Il semble que les Babyloniens (qui peuplaient lactuelle Syrie/Iraq) sont parmi les premiers `a raliser des calculs algbriques et gomtriques alliant complexit et haute prcision. Surtout, ils donnent une importance et un sens au placement relatif des chiffes constituant un nombre, cest- - dire `a introduire la notion de base de dnombrement, en loccurrence, la base sexagsimale que nous avons ni par adopter dans certains domaines. Ils se distinguent ainsi dautres civilisations, mme bien plus rcentes, qui dveloppent des mthodes plus lourdes, en introduisant une plthore de symboles. Il y a environ 3500 ans, les populations de la valle de lIndus (rgions de lInde et du Pakistan) introduisent les notions de zro et emploient les nombres ngatifs. Il adaptent galement le systme de comptage Babylonien au systme dcimal qui est le ntre aujourdhui. Ces premiers outils de calcul sont largement dvelopp par la suite par les Grecs, puis transmis en Europe par lintermdiaire des civilisations musulmanes peuplant le bassin mditerranen.

Tables de matires
INTRODUCTION ................................................................................................................................. 6 COMPLEXIT...................................................................................................................................... 9 NP-COMPLTUDE.......................................................................................................................... 12 PARTIE ENTIRE ............................................................................................................................. 14 ALGORITHME D'HRON ............................................................................................................... 17 ALGORITHME D'ARCHIMDE .................................................................................................... 18 CALCUL DU NOMBRE D'EULER.................................................................................................. 19 CALCUL DE LA FACTORIELLE (FORMULE DE STIRLING) ................................................ 20 SYSTMES D'QUATIONS LINAIRES ...................................................................................... 21 UNE QUATION UNE INCONNUE .......................................................................................... 21 DEUX QUATIONS DEUX INCONNUES ................................................................................ 21 TROIS QUATIONS TROIS INCONNUES ............................................................................... 22 N QUATIONS N INCONNUES ................................................................................................ 23 POLYNMES ..................................................................................................................................... 24 RGRESSIONS ET INTERPOLATIONS ....................................................................................... 27 RGRESSION LINAIRE UNE VARIABLE EXPLICATIVE .................................................. 27 DROITE DE RGRESSION ........................................................................................................ 28 MTHODE DES MOINDRES CARRS..................................................................................... 29 ANALYSE DE LA VARIANCE DE LA RGRESSION BIVARIE ........................................ 31 RGRESSION LINAIRE UNE VARIABLE EXPLICATIVE FORCE PAR L'ORIGINE 39 RGRESSION LINAIRE MULTIPLE .......................................................................................... 40 RGRESSION LOGISTIQUE (LOGIT) .......................................................................................... 46 COEFFICIENT DE CORRLATION (DTERMINATION) GNRALIS ................................ 53 INTERPOLATION POLYNOMIALE ............................................................................................. 54 COURBES DE BZIER (SPLINE) .............................................................................................. 54 MTHODE D'EULER .................................................................................................................. 59 POLYNME DE COLLOCATION ............................................................................................. 60 RECHERCHE DES RACINES ......................................................................................................... 63 MTHODE DES PARTIES PROPORTIONNELLES ..................................................................... 64

A.BENHARI

MTHODE DE LA BISSECTION ................................................................................................... 65 MTHODE DE LA SCANTE (REGULA FALSI) ........................................................................ 66 MTHODE DE NEWTON ............................................................................................................... 67 AIRES ET SOMMES DE RIEMANN............................................................................................... 71 MTHODE DES RECTANGLES .................................................................................................... 71 MTHODE DES TRAPZES .......................................................................................................... 73 PROGRAMMATION LINAIRE .................................................................................................... 73 ALGORITHME DU SIMPLEXE ..................................................................................................... 80 MTHODES DE MONTE-CARLO.................................................................................................. 85 GNRATION DES VARIABLES ALATOIRES ........................................................................ 86 CALCUL D'UNE INTGRALE ....................................................................................................... 88 CALCUL DE PI ................................................................................................................................ 89 MODLISATION ............................................................................................................................. 90 BOOTSTRAPPING ............................................................................................................................ 93 DICHOTOMIE.................................................................................................................................... 98 BIBLIOGRAPHIE .............................................................................................................................. 99

A.BENHARI

MTHODES NUMRIQUES Complexit NP-Compltude Partie entire Algorithme d'Hron Algorithme d'Archimde Calcul du nombre d'Euler Systmes d'quations linaires Une quation une inconnue Deux quations deux inconnues Trois quations trois inconnues N quations n inconnues Polynmes Rgressions et interpolations Rgression linaire une variable explicative Droite de rgression Mthodes des moindres carrs Analyse de la variance de la rgression bi varie Rgression linaire une variable explicative force par l'origine Rgression linaire multiple Rgression logistique Coefficient de corrlation (dtermination) gnralis Interpolation polynmiale Courbes de Bzier Mthodes d'Euler Polynme de collocation Recherche de racines Mthodes des parties proportionnelles Mthode de la bissection Mthode de la scante (Regula Falsi) Mthode de Newton Aires et sommes de Riemann Mthode des rectangles Mthode des trapzes Programmation linaire Algorithme du simplexe Mthodes de Monte-Carlo Gnration de variables alatoires Calcul d'une intgrale Calcul de Pi Modlisation Bootstrapping Dichotomie Analyse en composantes principales (A.C.P.) Analyse factorielle des correspondances (A.F.C.)
A.BENHARI 4

Khi-2 Mthode des diffrences finies Rseaux de neurones formels Modle de neurone Fonctions de transfert Architecture de rseau Algorithmes gntiques Codage et population initiale Les oprateurs Oprateur de slection Oprateur de croisement Oprateur de mutation

A.BENHARI

INTRODUCTION

'analyse numrique est une discipline des mathmatiques. Elle s'intresse tant aux

fondements thoriques qu' la mise en pratique des mthodes permettant de rsoudre, par des calculs purement numriques, des problmes d'analyse mathmatique. Dfinition: "L'analyse numrique" est l'tude des algorithmes permettant de rsoudre les problmes de mathmatiques continues (distingues des mathmatiques discrtes). Cela signifie qu'elle s'occupe principalement de rpondre numriquement des questions variable relle ou complexe comme l'algbre linaire numrique sur les champs rels ou complexes, la recherche de solutions numriques d'quations diffrentielles et d'autres problmes lis survenant dans les sciences physiques et l'ingnierie. Certains problmes de mathmatique continue peuvent tre rsolus de faon exacte par un algorithme. Ces algorithmes sont appels alors "mthodes directes". Des exemples sont l'limination de Gauss-Jordan pour la rsolution d'un systme d'quations linaires et l'algorithme du simplexe en programmation linaire (voir plus loin). Cependant, aucune mthode directe n'est connue pour certains problmes (et il est mme dmontr que pour une classe de problmes dits "NP complets", il n'existe aucun algorithme fini de calcul direct en temps polynomial). Dans de tels cas, il est parfois possible d'utiliser une mthode itrative pour tenter de dterminer une approximation de la solution. Une telle mthode dmarre depuis une valeur devine ou estime grossirement et trouve des approximations successives qui devraient converger vers la solution sous certaines conditions. Mme quand une mthode directe existe cependant, une mthode itrative peut tre prfrable car elle est souvent plus efficace et mme souvent plus stable (notamment elle permet le plus souvent de corriger des erreurs mineures dans les calculs intermdiaires). L'utilisation de l'analyse numrique est grandement facilite par les ordinateurs. L'accroissement de la disponibilit et de la puissance des ordinateurs depuis la seconde moiti du 20me sicle a permis l'application de l'analyse numrique dans de nombreux domaines scientifiques, techniques et conomiques, avec souvent des effets rvolutionnaires. Lors de simulations numriques de systmes physiques, les conditions initiales sont trs importantes dans la rsolution d'quations diffrentielles (voir les diffrents chapitres du site ou apparaissent des effets chaotiques). Le fait que nous ne puissions les connatre avec exactitude fait que les rsultats des calculs ne peuvent jamais tre parfaitement exacts (nous le savons trs bien pour la mto qui en est l'exemple connu le plus flagrant). Cet effet est une consquence des rsultats de la physique fondamentale (base sur des mathmatiques pures) qui dmontre que l'on ne peut connatre parfaitement un systme en y effectuant des mesures
A.BENHARI 6

puisqu'elles perturbent directement ce dernier (principe d'incertitude de Heisenberg) et elles font l'objet de la thorie du Chaos (classique ou quantique).

Avec les nouveaux outils informatiques disposition en ce dbut du 21me sicle, il est devenu pratique et passionnant de connatre les mthodes numriques afin de s'amuser dans certains logiciels (OpenGL, 3D Studio Max, Maple, Matlab, Mathematica, Comsol, etc.) simuler sous forme graphique 2D ou 3D des systmes physiques. Remarques: Beaucoup de mthodes numriques utilises en informatique se basent sur des raisonnements qui ont dj t tudis dans d'autres sections de ce site et sur lesquelles nous ne reviendrons pas. Ce chapitre tant la limite entre l'ingnierie et la mathmatique applique, nous avons dcid de donner parfois des exemples d'applications des outils dvelopps.

Dfinition: Un "algorithme" est une suite finie de rgles appliquer dans un ordre dtermin un nombre fini de donnes pour arriver, en un nombre fini d'tapes (dont la quantit, ou rciproquement le temps d'excution est dfinie par le terme "cot"), un certain rsultat, et cela indpendamment du type de donnes Les algorithmes sont intgrs dans des calculateurs par l'intermdiaire de "programmes". Dfinition: Un "programme" est la ralisation (l'implmentation) d'un algorithme au moyen d'un langage donn (sur une architecture donne). Il s'agit de la mise en oeuvre du principe. Axiomes de la programmation (anecdotique): A1. Plus nous crivons de code, plus nous produirons d'erreurs

A.BENHARI

A2. Il n'existe pas de programmes sans de possibles erreurs (d au programme lui-mme, l'lectronique sous-jacente ou le plus souvent l'utilisateur mme) Basiquement voici la dmarche minimale suivre lors du dveloppement d'un produit informatique (au niveau du code): M1. Auditer les besoins prsents et anticiper les besoins futurs M2. Dfinir les objectifs M3. Calculer la faisabilit, le risque d'erreur, la dure ncessaire au dveloppement M4. Crer les algorithmes en langage formel (cela comprend la gestion des erreurs!) M5. Optimiser la complexit et contrler les algorithmes M6. Choix d'une stratgie de dveloppement (modulable ou autre) M7. Traduire les algorithmes dans la technologie choisie (ce choix est un sujet assez sensible...) Remarque: Il faudrait dans l'tape (7) respecter les normes de nommage et de reprsentation du code ainsi que les conventions (traditions) de frquence d'insertion des commentaires. M8. Tests (maintenance prventive) Remarque: Le dbogage (la gestion des erreurs) d'un programme et les tests de fonctionnement doivent prendre autant, voire plus, de temps que le dveloppement du programme lui-mme. Lors du dveloppement d'un programme scientifique, il peut tre intressant, voire mme rigoureux de s'attarder la notion de "complexit" de ce dernier. Sans aller trop loin, voyons un peu de quoi il s'agit:

A.BENHARI

COMPLEXIT La complexit d'un algorithme est la mesure du nombre d'oprations fondamentales qu'il effectue sur un jeu de donnes. La complexit est donc exprime comme une fonction de la taille du jeu de donnes. Les hypothses permettant un calcul de cette complexit sont: H1. (les quatre oprations fondamentales ont le mme cot) une opration arithmtique une opration arithmtique

H2. Un accs mmoire

H3. Un contrle de comparaison H4. Un seul processeur

Nous notons Dn l'ensemble des donnes de taille n et T(n) le cot (en temps) de l'algorithme sur la donne ou le jeu de donnes de taille n. - La "complexit au meilleur" est donne par la fonction:
Tmin ( n) = min C ( d )
d Dn

C'est le plus petit temps qu'aura excuter l'algorithme sur un jeu de donnes (de lignes de code) de taille fixe, ici n dont le cot (la dure) d'excution est C(d). C'est une borne infrieure de la complexit de l'algorithme sur un jeu de donnes de taille n. - La "complexit au pire":
Tmax ( n) = max C ( d )
d Dn

C'est le plus grand temps qu'aura excut l'algorithme sur un jeu de donnes de taille fixe, ici n. Il s'agit donc d'un maximum, et l'algorithme finira toujours avant d'avoir effectu oprations. Cependant, cette complexit peut ne pas reflter le comportement usuel de l'algorithme, le pire cas pouvant ne se produire que trs rarement, mais il n'est pas rare que le cas moyen soit aussi mauvais que le pire cas. - La "complexit moyenne":
d Dn

C (d )
Dn

Tmoy (n) =

Il s'agit de la moyenne des complexits de l'algorithme sur des jeux de donnes de taille n (en toute rigueur, il faut bien videmment tenir compte de la probabilit d'apparition de chacun des jeux de donnes). Cette moyenne reflte le comportement gnral de l'algorithme si les cas extrmes sont rares ou si la complexit varie peu en fonction des donnes. Cependant, la complexit en pratique sur un jeu de donnes particulier peut tre nettement plus importante
A.BENHARI 9

que la complexit moyenne, dans ce cas la complexit moyenne ne donnera pas une bonne indication du comportement de l'algorithme. En pratique, nous ne nous intressons qu' la complexit au pire, et la complexit moyenne Dfinition: Un algorithme est dit "algorithme optimal" si sa complexit est la complexit minimale parmi les algorithmes de sa classe. Comme nous l'avons fait sous-entendre prcdemment, nous nous intressons quasi exclusivement la complexit en temps des algorithmes. Il est parfois intressant de s'intresser d'autres de leurs caractristiques, comme la complexit en espace (taille de l'espace mmoire utilis), la largeur de bande passante requise, etc. Pour que le rsultat de l'analyse d'un algorithme soit pertinent, il faut avoir un modle de la machine sur laquelle l'algorithme sera implment (sous forme de programme). Nous prenons habituellement comme rfrence, la "machine accs alatoire (RAM)" et processeur unique, o les instructions sont excutes l'une aprs l'autre, sans oprations simultanes et sans processus stochastiques (contrairement aux possibles machines quantiques futures). Les algorithmes usuels peuvent tre classs en un certain nombre de grandes classes de complexit dont l'ordre O varie d'une certaine manire: - Les algorithmes sublinaires dont la complexit est en gnral de l'ordre O(log(n)) - Les algorithmes linaires en complexit O(n) et ceux en complexit en O(n log(n)) sont considrs comme rapides. - Les algorithmes polynomiaux en O(nk) pour k > 3 sont considrs comme lents, sans parler des algorithmes exponentiels (dont la complexit est suprieure tout en n) que l'on s'accorde dire impraticables ds que la taille des donnes est suprieure quelques dizaines d'units. Remarque: Une bonne complexit est du type O(nk) pour k 3 . Une mauvaise complexit est du type O(en ), O(n!) ou O(n n ) . Exemples: E1. valuation d'un polynme:
P( x) = a0 + a1 x + a2 x 2 + ... + an x n

L'valuation directe de la valeur de P(x) conduit une complexit

Nous devons Horner un algorithme plus performant qui utilise une factorisation du polynme sous la forme:
A.BENHARI 10

Nous pouvons facilement montrer que cette factorisation maintient le mme nombre d'additions ( n) mais rduit le nombre de multiplications (n). La complexit qui en dcoule est donc O(n). Le gain est incontestablement important. De plus, cette factorisation vite tout calcul de puissance. E2. Un autre exemple connu de complexit algorithmique est la recherche d'une information dans une colonne trie. Un algorithme simple appel "recherche dichotomique" consiste prendre la cellule au milieu de la colonne et de voir si nous y trouvons la valeur recherche. Sinon, la recherche doit continuer dans la partie suprieure ou infrieure du tableau (cela dpend de l'ordre lexicographique). L'algorithme est rcursif et permet de diminuer par deux, chaque tape, la taille de l'espace de recherche. Si cette taille, initialement, est de n cellules dans la colonne, elle est de n/2 l'tape 1,
n n2 l'tape 2, et plus gnrale k l'tape k. 2 2

Au pire, la recherche se termine quand il n'y a plus qu'une seule cellule de la colonne explorer, autrement dit quand k est tel que n < 2k . Nous en dduisons le nombre maximal d'tapes: c'est le plus petit k tel que n < 2k , soit log 2 ( n) < k , soit:
Tmax ( n) = k = log 2 ( n)

comparer avec une recherche squentielle dans une colonne de 25000 donnes dont la complexit linaire est O(n) soit 2'000 alors qu'avec la mthode dichotomique, nous avons une complexit sublinaire log 2 (25000) = 15 . Le gain est donc considrable! E3. Soit A et B deux matrices carres de dimension n. Les principales oprations sur ces matrices ont les complexits suivantes (nous laisserons le soin au lecteur de vrifier car c'est vraiment trivial): - Lecture (itrations): O(n2) - Calcul de la trace: tr ( A) = aii O(n)
i =1 n

- Addition: A + B = C tel que cij = aij + bij O(n ) - Multiplication: A.B = C tel que cij = aik .bkj O (n3 )
k =1 n

- Dterminant (par la mthode directe de Cramer). Nous renvoyons le lecteur au chapitre d'Algbre Linaire pour le dtail des mthodes de calcul du dterminant d'une matrice. Nous pouvons alors montrer que la complexit d'un dterminant d'ordre n est n multiplications, n-1 additions plus n fois la complexit d'un dterminant d'ordre n-1. Par cumul, nous arrivons :
A.BENHARI 11

En faisant l'hypothse que l'ordinateur utilis effectue une opration lmentaire en 109 secondes (ce qui est dj une bonne machine). Nous obtenons alors les temps de calculs suivants pour plusieurs valeurs de n: n t
Tableau: 1 - Temps de calcul d'un dterminant

10

15

20

50

d'o la ncessit de faire un calcul de complexit avant de mettre l'algorithme en route ( moins que vous ne travailliez exclusivement pour les gnrations futures, condition qu'il y en ait encore...). Finalement, pour rsumer un peu, nous distinguons quelques types de complexits classiques: O(1) indpendant de la taille de la donne, O(log(n)), complexit logarithmique, O(n) complexit linaire, O(n log(n)), complexit quasi-linaire, O(n2), complexit quadratique, O(n3), complexit cubique, O(kn) complexit exponentielle, O(n!), complexit factorielle. NP-COMPLTUDE Nous allons introduire pour la culture gnrale le concept de NP-compltude, c'est--dire que nous allons tenter de dfinir sans trop de formalisme (comme l'habitude) la classe des problmes dit "NP-complets". Ces problmes sont ceux pour lesquels personne l'heure actuelle ne connat d'algorithme efficace (i.e. seulement des algorithmes exponentiels). Ce sont des problmes vraiment difficiles par opposition ceux pour lesquels nous connaissons des algorithmes de complexit polynomiale. Dfinitions: D1. Les problmes de "classe P" sont de bons problmes dans le sens o le calcul de leur solution est faisable dans un temps raisonnable avec un algorithme complexit polynomiale. Plus formellement, ce sont les problmes pour lesquels nous pouvons construire une machine dterministe (voir la remarque aprs les dfinitions) dont le temps d'excution est de complexit polynomiale (le sigle "P" signifiant "Polynomial Time"). D2. Les problmes de "classe E" sont des problmes dans le sens o le calcul de leur solution est faisable dans un temps exponentiel par nature du type . Plus formellement, ce sont les problmes pour lesquels nous pouvons construire une machine dterministes dont le temps d'excution est de complexit exponentielle (le sigle "E" signifiant "Exponential Time"). D3. Les problmes de la "classe NP" sont ceux pour lesquels nous pouvons construire une machine de Turing non dterministe (voir la remarque aprs les dfinitions) dont le temps d'excution est de complexit polynomiale (le sigle "NP" provient de "Nondeterministic Polynomial time" et non de "Non Polynomial"). Remarque: Contrairement aux machines dterministes qui excutent une squence d'instructions bien dtermine, les machines non dterministes ont la remarquable capacit de
A.BENHARI 12

toujours choisir la meilleure squence d'instructions qui mne la bonne rponse lorsque celle-ci existe. Il va sans dire qu'une telle machine ne peut pas exister autrement que dans l'esprit d'un thoricien ( moins qu'avec les ordinateurs quantiques...)! Nanmoins, comme nous le verrons par la suite, ce concept abstrait n'est pas sans intrt et constitue en fait la base de toute la thorie de la NP-compltude. Il importe de remarquer ce stade de la discussion que la classe P est incluse dans la classe NP, nous crivons , car si nous pouvons construire une machine dterministe pour rsoudre efficacement (en un temps au pire polynomial) un problme, nous pouvons certainement (du moins dans notre esprit) en construire une non dterministe qui rsout aussi efficacement le mme problme. Par ailleurs, il ne faut pas croire que ce concept de divination optimale qu'est la machine dterministe permet de tout rsoudre puisqu'il existe en informatique thorique d'autres types de problmes n'appartenant pas la classe NP qui sont les problmes indcidables. Pour savoir si un problme donn appartient ou non la classe NP, il s'agit simplement de l'exprimer sous la forme dont la rponse est soit OUI, soit NON. Le problme appartient alors la classe NP si par dfinition, nous arrivons dmontrer l'aide d'un algorithme de complexit polynomiale que n'importe quelle instance OUI du problme est bel et bien correcte. Nous n'avons pas nous proccuper des instances NON du problme puisque la machine non dterministe, par dfinition, prend toujours la bonne dcision (lorsque celle-ci existe). Par exemple, le problme consistant trouver un cycle hamiltonien (cycle qui passe une et une seule fois par tous les sommets du graphe - voir chapitre de Thorie Des Graphes) dans un graphe appartient NP puisque, tant donn un cycle, il est trivial de vrifier en temps linaire qu'il contient bien une et une seule fois chaque sommet. Un autre exemple de problme difficile des mathmatiques est la factorisation d'un entier en produit de facteurs premiers. Nous ne savons pas ce jour s'il existe un algorithme polynomial qui russisse cette opration. Autrement dit, nous ne savons pas si ce problme est dans P. En revanche, tant donns des nombres premiers il est trivial de vrifier que

: ce problme est donc dans NP. Il semblerait (nous n'avons pas vrifi ce rsultat et ni la possibilit de le faire) que la complexit du meilleur algorithme de factorisation en nombres premiers soit du type:

il resterait donc du travail faire (si un internaute pouvait nous fournir les dtails qui ont amen ce rsultat, nous sommes preneurs). Remarque: Si un problme est dans NP, alors il existera un algorithme en temps exponentiel pour le rsoudre mais le contraire n'est pas toujours vrai (il faut donc tre prudent). Parmi l'ensemble des problmes NP, il en existe un sous-ensemble qui contient les problmes les plus difficiles: nous les appelons les problmes "NP-complet" N.P.C. Ainsi, un problme
A.BENHARI 13

NP-complet possde la proprit que tout problme dans NP peut tre transform en celui-ci en temps polynomial. La raison essentielle pour laquelle les problmes NPC sont les plus difficiles parmi les problmes de NP est que ces premiers peuvent toujours servir comme des sous-routines pour solutionner ces derniers. Cette rduction un ou des sous-routines assez facilement faisable puisque ralisable, si elle existe, en temps polynomial. Un problme NPC est donc complet en ce sens qu'il contient l'essentiel de la complexit des problmes appartenant NP, et qu'une solution polynomiale ce problme implique une solution polynomiale tous les problmes NP. Autrement formul, les problmes NPC ont une complexit exponentielle et ils ont tous la mme classe de complexit (modulo les polynmes). Finalement, ce qu'il importe de bien comprendre et de retenir de toute cette thorie, son ide matresse, est que si nous trouvons un jour un algorithme de complexit polynomiale pour un seul de ces problmes vraiment difficiles que sont les problmes NPC, alors d'un seul coup NP devient gal P et tous les problmes difficiles deviennent faciles ! Pour rsumer, tre dans P, c'est trouver une solution en un temps polynomial, tandis qu'tre dans NP, c'est prouver en un temps polynomial qu'une proposition de rponse est une solution du problme. Ainsi, tout problme qui est dans P se trouve dans NP. Un champ de recherche majeur des mathmatiques actuelles est l'investigation de la rciproque: a-t-on P=NP? Autrement dit, peut-on trouver en un temps polynomial ce que l'on peut prouver en temps polynomial? Remarque: Ce problme est si important en informatique qu'il fait partie (arbitrairement) des 7 problmes du millnaire, dont la rsolution est prime 1 million de dollars par le Clay Mathematic Institute. Passons maintenant l'tude de quelques applications types des mthodes numriques dont il est trs souvent fait usage dans l'industrie. Nous irons du plus simple au plus compliqu et sans oublier que beaucoup de mthodes ne se trouvant pas dans ce chapitre peuvent parfois tre trouves dans d'autres sections du site! PARTIE ENTIRE Le plus grand entier infrieur ou gal un nombre rel x est par [x], qui se lit "partie entire de x". Ainsi, le nombre M est entier si et seulement si [M]=M. De mme, le naturel A est divisible dans l'ensemble des naturels par le naturel B si et seulement si:

Nous notons aussi {x} pour dsigner la partie fraction de x; on a ainsi:

A.BENHARI

14

Soit P1.

. Alors nous avons les proprits suivantes: , , o

P2. P3. P4. P5.

, lorsque , si

si

si

P6.

si

P7. Si , alors [x / a] reprsente le nombre d'entiers positifs infrieurs ou gaux x qui sont divisibles par a. Dmonstrations: La premire partie de P1 est simplement la dfinition de [x] sous forme algbrique. Les deux autres parties sont des rarrangements de la premire partie. Dans ce cas, nous pouvons crire

Pour P2, la somme est vide pour et, dans ce cas, on adopte la convention selon laquelle la somme vaut 0. Alors, pour , la somme compte le nombre d'entiers positifs n qui sont plus petits ou gaux x. Ce nombre est videmment [x]. La dmonstration de P3 sera suppose vidente. Pour prouver P4, nous crivons: , o n et m sont des entiers et o et . Alors:

En crivant
A.BENHARI

, o

, nous avons
15

o Il s'ensuit que:

0 si et on obtient la dmonstration P5. Pour dmontrer P6, nous crivons:

-1 si

, et:

. Nous obtenons ainsi:

puisque

. Par ailleurs:

et nous avons ainsi le rsultat. Pour la dernire partie, nous observons que, si qui sont divisibles par a, il suffit de prouver que sont tous les entiers positifs . Puisque , alors:

c'est--dire:

soit le rsultat attendu. C.Q.F.D. Remarque: La mthode d'arrondi de valeurs relles est donne dans le chapitre d'conomtrie.
A.BENHARI 16

ALGORITHME D'HRON Soit calculer la racine carre:

Il existe un algorithme dit "algorithme d'Hron" qui permet de calculer la valeur de cette racine carre. Dmonstration:

Nous obtenons alors la relation:

C.Q.F.D. Exemple: Soit calculer:

Nous prenons Itration 1 2 3 4 5

: xi /2 5 2.750 1.82954 1.59800 1.58122 A/2xi 0.5 0.90 1.3664 1.5644 1.5810 xi+1 5.50 3.659 090 909 3.196 005 083 3.162 455 624 3.162 277 665 cart ~2.3 ~0.49 ~0.033 ~0.0002 ~0.5 10-8

Tableau:2 - Itrations pour l'algorithme d'Hron

Dans le cas de la racine cubique, la dmonstration est semblable et nous obtenons:

A.BENHARI

17

Signalons encore que le lecteur pourra trouver dans le chapitre de Thorie des Nombres la mthode utilise pendant l'antiquit (du moins une analogie) et utilisant les fractions continues. ALGORITHME D'ARCHIMDE Le calcul de la constante universelle "pi" note est trs certainement le plus grand intrt de l'algorithmique puisque l'on retrouve cette constante un peu partout en physique et mathmatique (nous pouvons vous conseiller un trs bon ouvrage sur le sujet). Nous rappelons que nous n'en avons pas donn la valeur ni en gomtrie, ni dans les autres sections de ce site jusqu' maintenant. Nous allons donc nous attacher cette tche. Nous dfinissons en gomtrie le nombre dit "pi", quelque soit le systme mtrique utilis (ce qui fait son universalit), comme le rapport de la moiti du primtre d'un cercle par son rayon tel que:

Nous devons le premier algorithme du calcul de cette constante Archimde (287-212 av. J.C.) dont voici la dmonstration. Dmonstration: Soit un n-polygone inscrit dans un cercle:

Figure:1 - Principe illustr de l'algorithme d'Archimde

Le principe de l'algorithme d'Archimde est le suivant: Soit le primtre d'un polygone rgulier de n cts inscrit dans un cercle de rayon 1/2. Archimde arrive par induction que:

Nous avons pour primtre d'un n-polygone:


A.BENHARI 18

et Avec:

Donc:

Il suffit d'un ordinateur ensuite et de plusieurs itrations pour valuer avec une bonne prcision la valeur de . videmment, on utilise l'algorithme d'Hron pour calculer la racine... C.Q.F.D. Remarque: Il existe un trs grand nombre d'algorithmes pour calculer dessus, sans tre la plus esthtique, est historiquement la premire. CALCUL DU NOMBRE D'EULER Parmi la constante , il existe d'autres constantes mathmatiques importantes qu'il faut pouvoir gnrer l'ordinateur (de nos jours les valeurs constantes sont stockes telles quelles et ne sont plus recalcules systmatiquement). Parmi celles-ci, se trouve le "nombre d'Euler" not e (cf. chapitre d'Analyse Fonctionnelle). Voyons comment calculer ce nombre: Soit la srie de Taylor, pour une fonction indfiniment drivable f donne par : . Celle prsente ci-

Comme :

A.BENHARI

19

nous avons:

Donc en rsum:

Cette relation donne un algorithme pour calculer l'exponentielle prcision.

un ordre n donne de

Remarque: Pour diminuer la complexit de cet algorithme, la factorielle peut tre calcule avec la formule expose ci-aprs. CALCUL DE LA FACTORIELLE (FORMULE DE STIRLING) videmment, la factorielle pourrait tre calcule avec une simple itration. Cependant, ce genre de mthode gnre un algorithme complexit exponentielle ce qui n'est pas le mieux. Il existe alors une autre mthode: Soit, la dfinition de la factorielle:

Et d'aprs les proprits des logarithmes:

Si n est trs grand (mais alors trs...) alors:

Lorsque , la limite infrieure est ngligeable et alors (approximation qui nous est trs utile dans le chapitre de Mcanique Statistique):

Aprs une petite simplification lmentaire, nous obtenons:

A.BENHARI

20

Cette dernire relation est utile si l'on suppose bien videmment que la constante d'Euler est une valeur stocke dans la machine... SYSTMES D'QUATIONS LINAIRES Il existe de nombreuses mthodes de rsolution de systmes d'quations linaires. La plupart d'entre elles ont t mises au point pour traiter des systmes particuliers. Nous en tudierons une, appele la "mthode de rduction de Gauss", qui est bien adapte la rsolution des petits systmes d'quations (jusqu' 50 inconnues). Remarques: R1. La validit de certaines des oprations que nous allons effectuer ici pour rsoudre les systmes linaires se dmontrent dans le chapitre traitant de l'Algbre Linaire. Au fait, pour tre bref, le tout fait appel des espaces vectoriels dont les vecteurs-colonnes sont linairement indpendants. R2. Les systmes admettent une solution si et seulement si (rappel) le rang de la matrice augmente est infrieur ou gal au nombre d'quations . UNE QUATION UNE INCONNUE Considrons le cas le plus simple: celui d'une quation une inconnue:

a et b sont les coefficients de l'quation et x en est l'inconnue. Rsoudre cette quation, c'est dterminer x en fonction de a et b. Si a est diffrent de 0 alors:

est la solution de l'quation. Si a est nul et si b est diffrent de 0 alors l'quation n'admet pas de solutions. Si a et b sont nuls, alors l'quation possde une infinit de solutions. DEUX QUATIONS DEUX INCONNUES Un systme (linaire) de deux quations deux inconnues s'crit:

sont les coefficients du systme d'quations, inconnues.

et

en sont les

Remarque: Les notations usites ci-dessus n'ont rien voir avec le calcul tensoriel. Pour rsoudre le systme, nous procdons comme suit:
A.BENHARI 21

l'aide de manipulations algbriques (addition ou soustraction des diffrentes galits entre elles - manipulations autorises par l'indpendance linaire des vecteurs-lignes) nous transformons le systme en un autre donn par:

Ensuite, nous rsolvons l'quation

, ce qui donne:

Nous en dduisons:

La transformation entre les deux systmes:

s'effectue simplement en multipliant chaque coefficient de la premire galit par et en soustrayant les rsultats obtenus des coefficients correspondants de la seconde galit. Dans ce cas, l'lment est appel "pivot".

TROIS QUATIONS TROIS INCONNUES Examinons encore le cas des systmes de trois quations trois inconnues:

Nous pouvons par la suite des oprations lmentaires (cf. chapitre d'Algbre Linaire) rduire le systme linaire prcdent en le systme suivant:

et ensuite rsoudre l'quation:

A.BENHARI

22

puis la deuxime:

et enfin:

Revenons la transformation des systmes. Elle s'effectue en deux tapes: 1. Dans la premire, nous choisissons et comme pivot et nous liminons les coefficients

de la manire suivante: il faut multiplier chaque coefficient de la premire galit par et soustraire les rsultats obtenus de la deuxime galit, ainsi devient nul. De et en soustrayant les

mme, en multipliant les coefficients de la premire quation par rsultats obtenus de la troisime galit,

disparat. Le systme d'quation s'crivant alors:

2. La deuxime tape consiste traiter le systme de deux quations deux inconnues form des deuxime et troisime galits du systme prcdent, et ce, en choisissant comme pivot. Cette mthode de rsolution peut paratre complique, mais elle a l'avantage de pouvoir tre gnralise et tre applique la rsolution de systmes de n quations n inconnues. N QUATIONS N INCONNUES Pour simplifier l'criture, les coefficients seront toujours nots de chaque tape du calcul. et non pas , etc. lors

Soit le systme linaire (nous pourrions trs bien le reprsenter sous la forme d'une matrice augmente afin d'allger les critures):

A.BENHARI

23

Il faut choisir

comme pivot pour liminer s'effectue en prenant

. Ensuite, l'limination de

comme pivot. Le dernier pivot considrer est bien . Le systme prend alors la forme:

videmment

, il permet d'liminer

En rsolvant d'abord la dernire quation, puis l'avant-dernire et ainsi de suite jusqu' la premire. Cette mthode, appele "mthode de rsolution de Gauss" ou encore "mthode du pivot" doit cependant tre affine pour viter les pivots de valeur 0. L'astuce consiste permuter l'ordre dans lequel sont crites les quations pour choisir comme pivot le coefficient dont la valeur absolue est la plus grande. Ainsi, dans la premire colonne, le meilleur pivot est l'lment tel que:

Il est amen par change des premire et j-me lignes. L'limination du reste de la premire colonne peut alors tre effectue. Ensuite, on recommence avec les n-1 quations qui restent. POLYNMES L'ensemble des polynmes et coefficients rels a t tudi dans le chapitre d'Analyse Fonctionnelle en dtails. Nous allons ici traiter de l'aspect numrique de quelques problmes lis aux polynmes. Mis part l'addition et la soustraction de polynmes que nous supposerons comme triviaux (optimisation de la complexit mis part comme le schma de Horner), nous allons voir comment multiplier et diviser deux polynmes. Voyons d'abord comment multiplier deux polynmes: Soit:
A.BENHARI 24

alors:

avec:

C'tait simple... Un tout petit peu plus difficile maintenant: la division euclidienne des polynmes . Reprenons:

mais en imposant cette fois-ci

La division s'crira donc nous le savons:

avec

ou sinon

Il est connu d'avance que nous avons bien videmment: et deg(r(x))<m. Nous avons donc par dfinition q(x) qui est le quotient de la division et r(x) le reste de la division euclidienne de f(x) par g(x). Rien ne nous interdit donc de poser de la manire la plus gnrale qui soit:

A.BENHARI

25

Exemple: Soit:

donc:

Nous avons donc:

Ensuite:

et enfin:

Donc de manire gnrale:

comme:

le premier reste est donc:

A.BENHARI

26

Ensuite:

Le deuxime reste est alors:

etc. Nous continuons jusqu' ce que RGRESSIONS ET INTERPOLATIONS Les rgressions (ou "interpolations") sont des outils trs utiles aux statisticiens, ingnieurs, informaticiens souhaitant tablir une loi de corrlation entre deux (ou plus) variables dans un contexte d'tudes et d'analyse ou d'extrapolation. Il existe un grand nombre de mthodes d'interpolation: de la simple rsolution d'quations du premier degr (lorsque uniquement deux points d'un mesure sont connus) aux quations permettant d'obtenir partir d'un grand nombre de points des informations essentielles l'tablissement d'une loi (ou fonction) de rgression linaire, polynomiale ou encore logistique. RGRESSION LINAIRE UNE VARIABLE EXPLICATIVE Nous prsentons ici deux algorithmes (mthodes) utiles et connus dans les sciences exprimentales (nous en avons dj parl lors de notre tude des statistiques). L'objectif ici est de chercher exprimer la relation linaire entre deux variables x et y indpendantes: - x est la variable indpendante ou "explicative". Les valeurs de x sont fixes par l'exprimentateur et sont supposes connues sans erreur - y est la variable dpendante ou "explique" (exemple: rponse de l'analyseur). Les valeurs de y sont entaches d'une erreur de mesure. L'un des buts de la rgression sera prcisment d'estimer cette erreur. Nous cherchons une relation de la forme:
A.BENHARI 27

C'est l'quation d'une droite, d'o le terme de "rgression linaire" avec a qui est appel dans ce cadre d'tude: "coefficient de rgression". DROITE DE RGRESSION Il existe aussi une autre manire commune de faire une rgression linaire du type:

qui consiste se baser sur les proprits de la covariance et de l'esprance (cf. chapitre de Statistiques) et trs utilise entre autres en finance (mais aussi dans n'importe quel domaine o l'on fait un peu de statistiques). Soit x, y deux variables dont l'une dpend de l'autre (souvent c'est y qui dpend de x) nous avons selon la proprit de linarit de la covariance qui est, rappelons-le:

la relation suivante:

Il vient donc pour la pente (nous rutiliserons cette relation lors de l'tude du rendement d'un portefeuille selon le modle de Sharpe dans le chapitre d'conomtrie):

et pour l'ordonne l'origine nous utilisons les proprits de l'esprance dmontres dans le chapitre de Statistiques:

ce qui donne b sous la forme:

A.BENHARI

28

MTHODE DES MOINDRES CARRS , ne se situent pas Du fait de l'erreur sur y, les points exprimentaux, de coordonnes exactement sur la droite thorique. Il faut donc trouver l'quation de la droite exprimentale qui passe le plus prs possible de ces points. La "mthode des moindres carrs" consiste chercher les valeurs des paramtres a, b qui rendent minimale la somme des carrs des carts ei rsiduels (SSr: Sum of Squared Residuals) entre les valeurs observes et les valeurs calcules thoriques de :

o n est le nombre de points et:

d'o autrement crit:

Cette relation fait apparatre la somme des carrs des carts comme une fonction des paramtres a,b. Lorsque cette fonction est minimale (extrmale), les drives par rapport ses paramtres s'annulent:

Remarque: Cette mthode de recherche de minimum (optimisation) est nomme "mthode des multiplicateurs de Lagrange" dans le monde de l'conomtrie. Dans notre exemple grandeur scalaire qui fait office de multiplicateur de Lagrange. Soit aprs simplification: est la

Le systme ci-dessus est dit appel "systme des quations normales". C'est un systme linaire de deux quations deux inconnues. Notons pour simplifier:
A.BENHARI 29

Le systme devient :

De la deuxime quation, nous tirons :

En remplaant dans la premire, nous obtenons :

De l nous avons :

Ainsi, l'expression de la pente et de l'ordonne l'origine de l'quation recherche est:

A.BENHARI

30

Remarque: C'est la mthode utilise par MS Excel lors de l'utilisation de la fonction REGRESSION( ). Il faut remarquer que la pente a est la forme discrte de:

Le terme b, soit l'ordonne l'origine peut tre obtenu avec la fonction ORDONNEE.ORIGINE( ) de MS Excel et a avec la fonction PENTE( ) et l'ensemble avec la fonction DROITEREG( ). ANALYSE DE LA VARIANCE DE LA RGRESSION BIVARIE Nous avons donc maintenant pour la droite des moindres carrs:

soit sous forme discrte:

ainsi que par construction de la mthode la relation suivante:

Maintenant, nous faisons l'hypothse que chaque valeur mesure est entache d'un rsidu tel que:

Soit en soustrayant les deux dernires relations:

Maintenant, passons par un rsultat intermdiaire. Rappelons que nous avons obtenu plus haut:

A.BENHARI

31

En remplaant b par sa valeur:

nous avons alors:

Multipliant la deuxime relation ci-dessus par

et retranchant de la premire, nous obtenons:

Soit aprs rarrangement:

Revenons maintenant :

Si nous mettons le tout au carr et en sommant pour toutes les observations, nous avons:

soit:

Or, nous venons de montrer avant que le double produit tait nul. Donc:

Cette dernire relation est appele "quation d'analyse de la variance". En fait, il s'agit de sommes de carrs. Il faudrait diviser par n pour obtenir des variances. Cette dernire relation s'crit aussi souvent:

A.BENHARI

32

o SCT est la "somme des carrs totale", SCE la "somme des carrs explique" et SCR la "somme des carrs rsiduelle". Cette dernire relation se trouve galement souvent sous la forme suivante dans la littrature:

Notons maintenant les linaire a priori":

sans erreurs d'une manire diffrente et appelons cela le "modle

Il est effectivement important dans la pratique de diffrencier le modle a priori qui ne prend pas en compte les erreurs du modle rel entach d'erreurs! Nous avons alors:

souvent not dans la littrature sous la forme plus pdagogique suivante:

qui est simple une autre manire d'crire:

et il vient alors immdiatement la relation importante dans la pratique pour calculer les rsidus (connaissant les valeurs calcules et les valeurs mesures):

Il est important de se rappeler (ou de constater) que les relations ci-dessus entre SCT, SCE et SCR ne sont valables que dans le cas d'un modle linaire! Rappelons maintenant que dans le chapitre de Statistiques, nous avions dmontr que le coefficient de corrlation s'exprimait par:

soit explicitement:
A.BENHARI 33

Montrons que ceci est gal (notation souvent utilise dans la littrature spcialise):

Remarque: Cette formulation du coefficient de corrlation est extrmement utile car, car contrairement la formulation statistique, cette dernire se gnralise immdiatement la rgression linaire multiple que nous verrons un peu plus loin. Dmonstration: Nous partons donc de:

et puisque nous avons montr que:

Donc:

C.Q.F.D.
A.BENHARI 34

Nous admettrons que, pour un individu i prlev au hasard dans la population, sans erreur, et que

est connu

est une ralisation d'une variable alatoire que nous noterons dornavant

et la droite thorique des moindres carrs s'crira maintenant:

o est par hypothse un rsidu identiquement distribu et indpendant pour chaque point i selon une loi Normale centre (de moyenne nulle et d'cart-type gal pour tout k) tel que: et donc:

o nous avons le rsidu qui est donc donn par la diffrence entre l'ordonne thorique et l'ordonne mesure:

et puisque

alors il vient immdiatement que:

Les hypothses prcdentes concernant les moments des rsidus sont appeles "hypothses de Gauss-Markov" et l'hypothse particulire d'galit des variances s'appelle comme nous l'avons vu dans le chapitre de Statistique "l'homoscdasticit". Nous avons de par la proprit de l'esprance :

Alors sous les hypothses ci-dessus, nous allons montrer que a et b sont des estimateurs sans biais de et et qu'il est possible d'estimer l'cart-type partir de SCR! Ce qui est un rsultat non ngligeable et important. Conformment au modle adopt, a est considrer maintenant comme une ralisation de la variable alatoire donne par:

A.BENHARI

35

et b comme une ralisation de la variable alatoire donne par:

Tenant compte de ce que:

nous pouvons mettre A sous la forme:

et B:

Nous en dduisons les esprances pour A:

A.BENHARI

36

et pour B:

Donc A et B sont bien des estimateurs sans biais de

Nous devons enfin calculer les variances de A et B en utilisant ses proprits et les hypothses sur les rsidus, nous avons:

Comme par hypothse nous avons tous les

qui sont gaux nous pouvons alors crire:

Soit:

et:

En rappelant la relation de Huyghens :


A.BENHARI 37

Nous avons finalement:

Le problme rside maintenant dans la dtermination de allons tre obligs de passer par un estimateur statistique.

. videmment pour ce faire nous

Nous savons que nous pouvons crire selon ce qui a t vu dans le chapitre de Statistique en ce qui concerne les estimateurs:

puisque la loi Normale est centre pour les rsidus donc ... et que le rsidu est une variable alatoire implicitement dpendante de la somme de deux variables alatoires que sont A et B d'o la minoration de deux fois l'erreur-standard. Indiquons aussi que dans la pratique nous notons frquemment ce dernier rsultat en mlangeant les notations de l'aspect alatoire et dterministe:

o SEE signifie en anglais "Standard Error of Estimate" (Erreur Standard de l'Estimation). Nous avons donc les estimateurs non biaiss des variances de A et de B:

Ce qui est sympa connaissant ces variances, c'est que nous pouvons aussi estimer la variance de la variable explique de notre rgression facilement (en utilisant les proprits de la variance vues dans le chapitre de Statistiques). Il serait intressant aussi de faire de l'infrence statistique sur l'esprance des paramtres A et B (donc la pente et l'ordonne l'origine) tant donn leur esprance empirique connue. Mais les dveloppements ncessitent une hypothse forte qui est l'indpendance des variables ( ) ce qui est peu acceptable en entreprise.
A.BENHARI 38

RGRESSION LINAIRE UNE VARIABLE EXPLICATIVE FORCE PAR L'ORIGINE Un cas trs frquent et demand dans les laboratoires (et globalement dans d'autres dpartements) des entreprises, est de forcer la rgression linaire passer par l'origine. Nous allons voir ici que l'approche est seulement une variante simplifie de la mthode des moindres carrs. Nous utilisons comme prcdemment:

o n est le nombre de points. Mais cette fois-ci, nous crivons:

d'o autrement crit:

Cette relation fait apparatre la somme des carrs des carts comme une fonction du paramtre a. Lorsque cette fonction est minimale (extrmale), les drives par rapport ses paramtres s'annulent:

Soit aprs simplification:

Enfin:

Vous pouvez vrifier aussi avec un tableur quelconque (MS Excel par exemple) que les calculs correspondent bien.

A.BENHARI

39

RGRESSION LINAIRE MULTIPLE Bien videmment, dans certaines situations la rgression linaire est trop simpliste ou simplement pas adapte. Le cas le plus typique qui nous concerne dans ce qui va suivre tant les situations o nous avons plusieurs variables explicatives. Le principe de la rgression linaire multiple est relativement simple. Nous voulons dterminer la variable explique y partir de p-1 variables explicatives relies par une loi linaire de la forme gnrale:

Dans un chantillon de n individus, nous mesurons Observations 1 2 n ... ... ... ...

pour

Au fait, pour estimer les paramtres

(valeurs estimes que nous noterons

afin de respecter cette fois-ci la tradition) l'approche est trs simple car elle consiste juste en une gnralisation de la mthode des moindres carrs que nous avons vu plus haut pour la rgression linaire simple. Donc en fin de compte nous rcrivons la relation du Sum of Squared Residuals vu plus haut en modifiant un tout petit peu puisque maintenant nous avons du multilinaire:

avec:

Donc il nous faut minimiser:

Le systme peut se rcrire:

A.BENHARI

40

Nous avons le vecteur des rsidus qui vaut donc:

Comme nous le savons, la mthode des moindres carrs consiste trouver le vecteur minimise:

qui

Soit explicitement:

a remarquer que nous avons:

et:

puisque chacun des lments de la multiplication est un simple vecteur. Nous avons alors (attention! ne pas oublier que certaines multiplications dans la relation suivre sont des produits scalaires!!!) la fonction quadratique multivarie de coefficients de vecteur:

Drivons cette dernire "fonction objet F" l'ordre du vecteur (il s'agit d'une drive intrieure composante par composante). Ce que nous crivons:

A.BENHARI

41

Maintenant, passons d'une criture vectorielle une criture matricielle pure:

Nous cherchons donc suivante:

qui annule cette drive. Donc nous devons rsoudre l'quation

Soit:

Rappelons avant d'aller plus loin que:

Donc:

Puisque l'algbre linaire est associative, crivons sans les parenthses:

A.BENHARI

42

Nous ne pouvons videmment pas simplifier droite et gauche par car comme il ne s'agit pas d'une matrice carre, ce terme est obligatoirement pas inversible. La seule chose que nous puissions faire c'est identifier les lments tels que:

impose forcment que:

Nous trouvons alors que si la matrice carre

est inversible alors:

Pour montrer que cela semble juste, retrouvons les rsultats de la rgression linaire simple:

donc avec

. Nous avons alors:

En utilisant la relation dmontre dans le chapitre d'Algbre Linaire pour calculer en toute gnralit l'inverse d'une matrice en :

A.BENHARI

43

Nous avons dans le cas prsent:

Nous avons donc:

vu que nous avons une matrice carre de dimension 2 seulement, le calcul des quatre dterminants se rduit au fait slectionner les composantes de :

Donc:

A.BENHARI

44

Donc un changement de notation prs pour les indices et les mesures exprimentales, nous retrouvons bien le rsultat que nous avions obtenu lors de notre tude de la rgression linaire simple qui tait (pour rappel...):

Maintenant, il nous faut un indicateur de qualit en ce qui concerne notre rgression multilinaire. Rappelons que dans le cadre de notre tude de la rgression linaire une variable explicative, nous avons dmontr que le coefficient de corrlation linaire pouvait tre crit sous la forme:

et au fait celui-ci est applicable aussi directement la rgression linaire multiple puisque qu'il ne prsuppose par le nombre de variables explicatives!!
A.BENHARI 45

Remarque: Le lecteur intress par la mise en pratique de ces rsultats pourra, au mme titre que pour la rgression simple, se rfrer au serveur d'exercices - section Mthodes Numriques - o il y a des exemples pratiques avec MS Excel. RGRESSION LOGISTIQUE (LOGIT) Bien souvent, les donnes statistiques disponibles sont relatives des caractres qualitatifs. Or, comme nous allons le voir, les mthodes d'infrence traditionnelles ne permettent pas de modliser et d'tudier ce type de caractres. Des mthodes spcifiques doivent tre utilises tenant compte par exemple de l'absence de continuit des variables traites ou de l'absence d'ordre naturel entre les modalits que peut prendre le caractre qualitatif. Ce sont ces mthodes spcifiques les plus usuelles qui seront l'objet du texte qui suit. Comme nous l'avons vu plus haut, la rgression linaire simple a donc pour but de modliser la relation entre une variable dpendante quantitative et une variable explicative quantitative. Lorsque la "variable de classe" Y expliquer est binaire (oui-non, prsence-absence,0-1,etc.) , qui nous approchons dans un premier temps celle-ci par une fonction de probabilit nous donne l'oppos la probabilit d'appartenir la classe , que nous nommerons "rgression logistique" ou encore "rgression logit" (trs souvent utilise dans le cadre des rseaux de neurones formels). Ensuite, dans une deuxime tape, nous dfinissons pour un cas binaire une valeur "cutoff". Par exemple, si nous prenons un cutoff de 0.5 alors les cas pour lesquels Remarques: R1. Au fait, la rgression logistique n'est qu'une simple loi de distribution de probabilits dans le cas qui nous intresse (nous verrons une autre rgression logistique dans le chapitre d'conomtrie lors de notre tude des sries temporelles et encore une autre dans le chapitre de Dynamique des Populations). R2. Il n'est videmment pas possible d'appliquer systmatiquement la rgression logistique n'importe quel type d'chantillon de donnes! Parfois il faut chercher ailleurs... R3. Lorsque le nombre de modalits est gal 2, nous parlons de "variable dichotomique" (oui-non) ou d'un "modle dichotomique", s'il est suprieur 2, nous parlons de "variables polytomiques" (satisfait-non satisfait-merveill). Considrons par exemple la variable dichotomique: fin des tudes. Celle-ci prend deux modalits (en cours, a fini). L'ge est une variable explicative de cette variable et nous cherchons modliser la probabilit d'avoir termin ses tudes en fonction de l'ge. Exemple: Pour construire le graphique suivant, nous avons calcul et reprsent en ordonnes, pour des jeunes d'ge diffrent, le pourcentage de ceux qui ont arrt leurs tudes. appartiendront la classe 1 (et inversement dans le cas contraire).

A.BENHARI

46

Figure: 57.2 - Partie de la population en tudes en fonction de l'ge

Mais comment obtenons-nous pareil graphique avec une variable dichotomique??? Au fait c'est relativement simple... Imaginez un chantillon de 100 individus. Pour ces 100 individus supposez pour un ge donn que 70% "a fini" et 30% "en cours". Eh bien la courbe reprsente simplement la proportion des deux classes pour l'ge donn. Il est mme parfois indiqu les grosseurs des classes avec des cercles sur toute la longueur des asymptotes horizontales pour bien signifier qu'il s'agit d'une variable dichotomique. Les points sont distribus selon une courbe en S (une sigmode): il y a deux asymptotes horizontales car la proportion est comprise entre 0 et 1. Nous voyons immdiatement qu'un modle linaire serait manifestement inadapt. Cette courbe voquera pour certains, juste titre, une courbe cumulative reprsentant une fonction de rpartition (d'une loi Normale par exemple, mais d'autres lois continues ont la mme allure). Ainsi, pour ajuster une courbe cette reprsentative, nous pourrions nous orienter vers la fonction de rpartition d'une loi Normale, et au lieu d'estimer les paramtres a et b de la rgression linaire, nous pourrions estimer les paramtres de la loi Normale (qui est trs similaire la loi logistique comme nous le dmontrerons plus loin). Nous parlons alors d'un "modle Probit". La loi qui nous intresse cependant est donc la loi logistique. Contrairement la loi Normale, nous savons calculer l'expression de sa fonction de rpartition dichotomique (probabilit cumule) qui est du type (c'est son premier avantage!):

pour une variable de prdiction x o P est donc la probabilit d'avoir un 1. Nous voyons immdiatement que cette dernire relation tant la primitive de la fonction de distribution (voir la dmo un peu plus bas), que prenant x de moins l'infini plus l'infini que nous avons bien 1. Il s'agit donc bien d'une fonction de rpartition! S'il y a plusieurs variables prdictives nous avons alors:

A.BENHARI

47

Lorsque nous optons pour cette fonction de rpartition de la loi logistique, nous obtenons le modle de rgression logistique ou "modle Logit" et c'est l son deuxime avantage le plus important: nous pouvons faire des statistiques sur une rgression linaire multiple! Ainsi, nous estimerons la probabilit cumule d'avoir fini ses tudes pour un individu d'ge x par (il existe plusieurs manires d'crire cette loi suivant les habitudes et le contexte):

il en dcoule la fonction de distribution:

Nous pouvons calculer aussi l'esprance de la fonction de distribution en appliquant ce qui a dj t vu au chapitre de Statistiques mais une partie de cette intgrale ne peut tre rsolue que numriquement par contre... si nous posons:

comme tant la variable alatoire alors nous pouvons calculer formellement:

qui aprs une intgration numrique donne 0. Nous obtenons alors aussi le rsultat suivant:

Ainsi, nous voyons que si nous posons:

Nous retombons sur une fonction de rpartition ayant parfaitement les mmes caractristiques qu'une loi Normale centre rduite (moyenne nulle et variance unitaire). Exemple: La fonction sigmode (de rpartition) est prsente ci-dessous pour
A.BENHARI 48

Figure: 57.3 - Illustration de la fonction sigmode

Les paramtres a, b sont ajusts selon le principe du maximum de vraisemblance (cf. chapitre de Statistiques). De plus, ces paramtres doivent gnralement tre ajusts de manire itrative, l'aide d'un programme auquel nous fournissons des valeurs initiales, et qui optimise ces valeurs de manire rcurrente (nous n'entrerons pas dans ces dtails qui dpassent le cadre thorique de ce site ce jour). La dernire relation:

peut par ailleurs tre transforme de la faon suivante :

d'o:

Ce que certains crivent aussi...:

Le rsultat de cette dernire transformation est appel "logit". Il est gal au logarithme de "l'odds" P/1-P. Donc lorsque les coefficients a et b ont t dtermins, l'expression prcdente permet de dterminer P connaissant x facilement (il s'agit de rsoudre une quation linaire) et
A.BENHARI 49

inversement! Par ailleurs, puisque x est une variable dichotomique les coefficients sont trs facilement interprtables. Remarque: L'odds est galement appel "cote" par analogie la cote des chevaux au Tierc. Par exemple, si un tudiant a 3 chances sur 4 d'tre reu, contre 1 chance sur 4 d'tre coll, sa cote est de 3 contre un 1, soit un odds=3. Revenons un peu sur l'odds car il est possible d'introduire la notion de fonction logistique en faisant la dmarche inverse de celle prsente ci-dessus (soit de commencer par la dfinition de l'odds pour aller jusqu'au logit) et ceci peut parfois mme s'avrer plus pdagogique. Supposons que nous connaissons la taille (hauteur) d'une personne pour prdire si la personne est un homme ou une femme. Nous pouvons donc parler de probabilit d'tre un homme ou une femme. Imaginons que la probabilit d'tre un homme pour une hauteur donne est 90%. Alors l'odds d'tre un homme est:

Dans notre exemple, l'odds sera de 0.90/0.10 soit 9. Maintenant, la probabilit d'tre une femme sera donc de 0.10/0.90 soit 0.11. Cette asymtrie des valeurs est peu parlante parce que l'odds d'tre un homme devrait tre l'oppos de l'odds d'tre une femme idalement. Nous rsolvons justement cette asymtrie l'aide du logarithme naturel. Ainsi, nous avons:

et Ainsi, le logit (logarithme de l'odds) est exactement l'oppos de celui d'tre une femme de par la proprit du logarithme:

Exemple: Imaginons qu'une banque souhaite faire un scoring de ses dbiteurs. Comme elle a plusieurs succursales (la banque) elle construit les tables de donnes (fictives...) suivantes pour chacune (toutes les succursales ne sont donc pas reprsentes): - 1re succursale: Montant crdit 27200 27700 28300 28400 29900
A.BENHARI

Pay 1 7 13 7 10
50

Non Pay 9 3 0 3 1

Tableau: 57.3 - Scoring dbiteurs par montant de crdit succursale 1

- 2me succursale: Montant crdit 27200 27700 28300 28400 29900 - 3me succursale: Montant crdit 27'200 27'700 28'300 28'400 29'900 Pay 1 6 7 7 9 Non Pay 8 2 1 2 0 Pay 0 4 6 5 8 Non Pay 8 2 3 3 0

Tableau: 57.4 - Scoring dbiteurs par montant de crdit succursale 2

Tableau: 57.5 - Scoring dbiteurs par montant de crdit succursale 3

Nous pouvons voir que la proportion totale des bons dbiteurs dans les trois succursales est de . Quand le crdit est infrieur 27'500, la proportion de bons dbiteurs est de . Quand le montant des crdits est infrieur 28'000 la proportion de bons dbiteurs est de . Quand le montant des crdits est infrieur 28'500, la proportion de bons dbiteurs est de , et pour des montants infrieurs 30'000 la proportion est de Nous poserons pour cette rgression logistique que est un bon risque de crdit et est un mauvais risque. Ensuite, nous crons le tableau suivant qui est un rcapitulatif des donnes de toutes les succursales: Montant crdit 27'200 27'700 28'300 28'400 29'900 Proportion P 0.0741 0.7083 0.8667 0.7037 0.9643

Tableau: 57.6 - Proportion des bons dbiteurs

Ce qui donne graphiquement en Kilo-francs:


A.BENHARI 51

Figure: 57.4 - Pourcentage cumul des bons dbiteurs en fonction du crdit

Une fois ceci fait, nous utilisons la transformation en logit:

Ce qui donne: Montant crdit KF 27'200 27'700 28'300 28'400 29'900 Logit -2.5257 0.8873 1.8718 0.8650 3.2958 Tableau: 57.7 - Proportion des bons dbiteurs et Logit Proportion P 0.0741 0.7083 0.8667 0.7037 0.9643

Une rgression linaire par la mthode des moindres carrs donne:

Figure: 57.5 - Logit des bons dbiteurs en fonction du crdit

avec pour quation:


A.BENHARI 52

La fonction logistique avec sa reprsentation vient alors immdiatement (les units de x sont en millier de francs!):

Ainsi, il est possible de dire dans cet exemple, qu'elle est la proportion P de bons ou mauvais payeurs en fonction d'une valeur de crdit X plus petite ou gale une certaine valeur donne. Puisque 0 est un mauvais risque de crdit, nous voyons que plus les crdits sont levs, moins le risque est gros (dans ce cas fictif...). Par ailleurs, avec un logiciel comme Minitab, la diffrence entre les calculs (grossiers) effectus ici la main et ceux effectus avec l'outil de rgression logistique binaire du logiciel sont de l'ordre de 10% (car videmment... Minitab utilise le concept des estimateurs de maximum de vraisemblance vus dans le chapitre de Statistiques pour dterminer les coefficients et la constante) COEFFICIENT DE CORRLATION (DTERMINATION) GNRALIS Nous avons vu plus haut ainsi que dans le chapitre de Statistiques plusieurs formulations du coefficient de corrlation linaire, qui mis au carr tait alors nomm coefficient de dtermination de Pearson. Nous avons galement vu dans le chapitre de Statistiques le coefficient de corrlation nonparamtrique de Spearman mais celui-ci aussi est uniquement valable dans le cadre d'une relation linaire (affine). Afin de gnraliser cela, une dfinition empirique plus gnrale a t donne (je n'en ai jamais vu la dmonstration ni le nom de la personne qui est l'origine de cette dfinition...):

A.BENHARI

53

Ainsi, pour n'importe quelle dpendance, on cherche les paramtres des quations souhaites avec les techniques de recherche oprationnelle (voir plus bas dans ce chapitre) les valeurs des coefficients de la fonction qui minimisent le coefficient de corrlation. Ainsi dans le cas particulier de la rgression linaire puisque nous avons:

Nous retrouvons alors:

INTERPOLATION POLYNOMIALE Il existe de nombreuses techniques d'interpolation de polynmes plus ou moins complexes et labores. Nous nous proposons ici d'en prsenter quelques-unes dans l'ordre croissant de difficult et de puissance d'application. COURBES DE BZIER (SPLINE) L'ingnieur russe Pierre Bzier (Peugeot), aux dbuts de la Conception Assiste par Ordinateur (C.A.O), dans les annes 60, a donn un moyen de dfinir des courbes et des surfaces partir de points. Ceci permet la manipulation directe, gomtrique, des courbes sans avoir donner d'quation la machine!! Le thme des Courbes de Bzier est une notion multiples facettes, vraiment trs riche, au croisement de nombreux domaines mathmatiques trs divers: Analyse, Cinmatique, Gomtrie Diffrentielle, Gomtrie Affine, Gomtrie Projective, Gomtrie Fractale, Probabilits, ... Les Courbes de Bzier sont par ailleurs devenues incontournables dans leurs applications concrtes dans l'industrie, l'infographie, ... Voil l'approche mathmatique de cette technique: D'abord, nous savons que l'quation d'une droite que nous noterons dans le domaine M (par respect de tradition) joignant deux points est:

A.BENHARI

54

Ce qui est juste puisque lorsque Donc

nous sommes en A et lorsque

nous sommes en B.

et le point M parcoure tout le segment [AB]. Par construction, si A et B taient reprsente le barycentre (centre de gravit) du

des masses physiques gales l'unit, systme pour un t donn.

Par dfinition, le segment [AB] est la "courbe de Bzier de degr 1" avec points de contrle A et B et les Polynmes 1-t et t sont les "polynmes de Bernstein de degr 1". Construisons maintenant une courbe paramtre en rajoutant une 2me tape ce qui prcde:

Figure: 57.6 - Courbe de Bzier avec un point supplmentaire

1re tape: - Soit - Soit 2me tape: - Soit M(t) le barycentre de ( ,1-t) ( ,t). que le barycentre de (A,1-t) et (B, t) et o le barycentre de (B,1-t) (C, t) et o dcrit [AB]. dcrit [BC].

Par construction, M(t) se situe donc la mme proportion du segment par rapport au segment [AB] ou par rapport au segment [BC].

La courbe obtenue est alors l'enveloppe des segments tangente la courbe est donc le segment .

: en tout point M, la

M(t) dcrit alors une Courbe de Bzier de degr 2, qui, par construction commence en A et se finit en C, et a pour tangentes [AB] en A et [BC] en C. C'est en fait un arc de parabole (que nous pourrions noter trs logiquement [ABC] ):

A.BENHARI

55

Figure: 57.7 - Arc de parabole [ABC]

Par le mme schma, nous pouvons dfinir une courbe de Bzier de n points C'est ce que nous appelons "l'algorithme de Casteljau". Ainsi, soit:

soit

Nous avons:

La rcurrence se terminant pour:

Ainsi, pour

nous avons trivialement:

Soit:

Ainsi, nous avons forcment avec deux points l'quation d'une droite. Considrons maintenant M(t) la courbe de Bzier d'ordre 3, nous avons donc les points dfinis par:

Nous avons par la relation de rcurrence:

A.BENHARI

56

o nous avons limin les termes contenant des points non dtermins. Nous avons donc:

Il vient alors:

Et donc:

Soit sous forme matricielle:

Par le mme raisonnement, nous avons pour une courbe de Bzier d'ordre 4:

Et l nous pouvons creuser un peu les coefficients en comparant les coefficients de Bzier des courbes d'ordre 2, 3 et 4.
A.BENHARI 57

D'abord, reprenons la courbe de Bzier prcdente:

Nous remarquons d'abord aisment la proportionnalit suivante:

et si on regarde de plus prs les coefficients, nous remarquons que nous avons aussi:

Il ne s'agit ni plus ni moins que du triangle de Pascal!! Et donc les constantes sont simplement les coefficients binomiaux donns par pour l'ordre n dans notre cas par:

Ainsi, les polynmes de Bernstein sont donns par:

et finalement les courbes de Bernstein par d'ordre n:

Au fait, si nous avions not plus haut la somme sous la forme suivante:

Nous aurions alors les polynmes de Bernstein qui seraient donns (ce qui est plus respectueux des traditions...):

C'est une relation trs pratique car elle permet de calculer facilement et rapidement le polynme correspondant une courbe de Bzier d'ordre n. Nous avons alors:
A.BENHARI 58

Remarque: Une courbe de Bzier est totalement modifie ds que l'on dplace un point de contrle. Nous disons alors que la mthode de Bzier est une "mthode globale". Un exemple trs connu des courbes de Bzier d'ordre 3 est l'outil Plume des produits phares Adobe Photoshop ou Adobe Illustrator. Effectivement, ces deux outils crent une succession de courbes de Bzier d'ordre 3 dont le point est dfini aprs coup la souris en utilisant des poignes appeles "torseurs" dans le langage de spcialistes Adobe... Voici un exemple pris d'un de ces logiciels fait avec un trac la plume de 5 points (soit 4 splines):

Figure: 57.8 - Exemples de splines avec un logiciel de dessin

Tant que l'utilisateur ne bouge pas les poignes de points alors tous les points sont aligns sur la droite. Nous avons alors l'impression d'avoir une spline d'ordre 2. MTHODE D'EULER Il s'agit l de la mthode numrique la plus simple (elle est triviale et dans l'ide assez proche de la mthode de Newton mme si leur objectif n'est pas le mme). En fait elle ne fournit une approximation (au sens trs large du terme) d'une fonction f(x) dont la drive est connue. Ici les points choisis sont quidistants, c'est--dire la valeur exacte et , la valeur approche. (h tant le "pas"). Nous notons

Il y a plusieurs mthodes pour procder (comme souvent): 1. Graphiquement: Nous nous dplaons d'un pas en en suivant le vecteur de pente f(x,y)

Par construction, nous savons que (nous adoptons une notation un peu particulire dans ce contexte):
A.BENHARI 59

qui correspond donc bien la pente (non instantan bien sr!) en intgrale" passant par ce point. D'o:

de la "courbe

2. Analytiquement: Nous remplaons dans la dernire relation par . Nous obtenons alors:

appele "quation aux diffrences pour la mthode d'Euler". L'application en est triviale et ne ncessite pas d'exemples particuliers. POLYNME DE COLLOCATION Soit une fonction connue sous forme explicite ou sous forme tabule, et supposons qu'un certain nombre de valeurs:

en sont donnes. Les points

sont appels les "points d'appui". et , c'est--

"Interpoler" f signifie estimer les valeurs de f pour des abscisses situes entre dire dans l'intervalle d'interpolation, par une fonction approximante "conditions de collocations" (rien voir avec votre colocataire !):

, qui vrifie les

Figure: 57.9 - Illustration du concept d'interpolation


A.BENHARI 60

La fonction p s'appelle "fonction de collocation" sur les . Lorsque p est un polynme, nous parlons de "polynme de collocation" ou de "polynme d'interpolation". "Extrapoler" f signifie approcher f(x) par p(x) pour des abscisses situes "hors" de l'intervalle d'interpolation. Remarque: Il va sans dire que l'interpolation est un outil trs important pour tous les chercheurs, statisticiens et autres. Quand nous connaissons un polynme de degr n en n+1 points, nous pouvons donc connatre par une mthode simple (mais pas trs rapide - mais il existe plusieurs mthodes) compltement ce polynme. Pour dterminer le polynme, nous allons utiliser les rsultats exposs prcdemment lors de notre tude des systmes d'quations linaires. Le dsavantage de la mthode prsente ici est qu'il faut deviner quel type de polynme nous avons affaire et savoir quels sont les bons points qu'il faut choisir... Un exemple particulier devrait suffire la comprhension de cette mthode, la gnralisation en tant assez simple (voir plus loin). Soit un polynme du second degr:

et nous avons connaissance des points suivants (dont vous remarquerez l'ingniosit des points choisis par les auteurs de ces lignes...):

Nous en dduisons donc le systme d'quations:

Systme qui une fois rsolu dans les rgles de l'art nous donne:

Voyons le cas gnral: Thorme: Soient polynme .


A.BENHARI 61

des points d'appui, avec

si

. Alors il existe un pour

de degr infrieur ou gal n, et un seul, tel que

Dmonstration: Posons:

Les conditions de collocation:

s'crivent donc:

Il s'agit d'un systme de n+1 quations n+1 inconnues. Son dterminant s'crit:

relation que nous appelons "dterminant de Vandermonde". Nous savons que si le systme une solution, le dterminant du systme doit tre non nul. Montrons par l'exemple (en reprenant un polynme du mme degr que celui que nous avons utilis plus haut) que le dterminant se calcule selon la relation suivante prcdente (le lecteur gnralisera par rcurrence): Donc dans le cas , nous considrons le dterminant:

qui correspond dont au systme (pour rappel):

A.BENHARI

62

Calculons ce dterminant suivant la colonne 1 (en faisant usage des cofacteurs comme dmontr dans le chapitre d'Algbre linaire):

Ce dernier polynme peut s'crire:

Ce qui s'crit:

Comme les sont dans l'nonc de notre problme tous diffrents tels que alors le systme a une solution unique! Ce qui prouve qu'il existe toujours alors un polynme d'interpolation. C.Q.F.D. RECHERCHE DES RACINES Bien des quations rencontres en pratique ou en thorie ne peuvent pas tre rsolues exactement par des mthodes formelles ou analytiques. En consquence, seule une solution numrique approche peut tre obtenue en un nombre fini d'oprations. variste Galois a dmontr, en particulier, que l'quation algbrique (sauf accident...) si ne possde pas de solution

est un polynme de degr suprieur 4.

Il existe un grand nombre d'algorithmes permettant de calculer les racines de l'quation avec une prcision thorique arbitraire. Nous n'en verrons que les principaux. Attention, la mise en oeuvre de tels algorithmes ncessite toujours une connaissance approximative de la valeur cherche et celle du comportement de la fonction prs de la racine. Un tableau des valeurs de la fonction et sa reprsentation graphique permettent souvent d'acqurir ces connaissances prliminaires. Si l'quation rsoudre est mise sous la forme reprsentant g et h. Les racines de l'quation points d'intersection des deux courbes. , nous traons les courbes tant donnes par les abscisses des

A.BENHARI

63

, il faut vrifier que la Remarque: Avant de rsoudre numriquement l'quation fonction f choisie satisfasse certaines contraintes. Il faut par exemple, que la fonction f soit strictement monotone au voisinage de la racine , lorsque la mthode de Newton est applique. Il est souvent utile, voire indispensable, de dterminer un intervalle [a,b] tel que: - f est continue sur unique, ou

MTHODE DES PARTIES PROPORTIONNELLES La mise en oeuvre, sur calculatrice, de cette mthode est particulirement simple. Les conditions vrifier tant seulement: - f est continue - f est monotone dans un voisinage de la racine Dans un petit intervalle, nous pouvons remplacer une courbe par un segment de droite. Il y a plusieurs situations possibles mais en voici une particulire gnralisable facilement n'importe quoi:

Figure: 57.10 - Approximation d'une courbe par un segment de droite

Sur cette figure, nous tirons l'aide des thormes de Thals :

d'o:

A.BENHARI

64

Si

, nous pouvons ngliger f(a) au dnominateur et il vient:

L'algorithme consiste donc raliser les tapes suivantes: 1. Choisir a et b, calculer f(a) et f(b) 2. Dterminer et f(x) . Si est assez petit, nous arrtons le calcul et affichons x

3. Sinon nous procdons comme suit: - Nous remplaons b par a et f(b) par f(a) - nous remplaons a par x et f(a) par f(x) - nous retournons au point (2) MTHODE DE LA BISSECTION La condition pralable satisfaire pour cette mthode est de trouver un intervalle que: 1. f(x) est continue sur [a,b] 2. Il faut encore fixer qui est dfini comme la borne suprieure de l'erreur admissible. tel

La mthode consiste appliquer successivement les 4 tapes suivantes: 1. Calcul de 2. Evaluation de f(x) 3. Si alors le travail est termin, il faut afficher x et f(x)

4. Sinon on procde comme suit: - on remplace a par x si - on remplace b par x si


A.BENHARI

ou
65

- on retourne en (1) L'tape (3) impose la condition pour l'arrt des calculs. Il est parfois prfrable de choisir un autre critre de fin de calcul. Celui-ci impose la solution calcule d'tre confine dans un intervalle de longueur contenant . Ce test s'nonce comme suit: 3'. Si , le travail est termin et est affich. Il est bien sr vident que

MTHODE DE LA SCANTE (REGULA FALSI)

Figure: 57.11 - Illustration de la mthode de la scante

Les conditions pralables sont les suivantes: Il faut dterminer un intervalle [a,b] tel que: 1. f(x) est continue sur [a,b] 2. Si est le point de coordonnes , alors les points La proportion suivante (Thals) est donc vraie: sont aligns sur la scante.

nous en dduisons:

A.BENHARI

66

La mthode consiste appliquer successivement les tapes suivantes: 1. Calcul de 2. valuation de 3. Si , le travail est termin. Il faut afficher

4. Sinon nous procdons comme suit: - nous remplaons a par - nous remplaons b par - nous retournons en (1) La condition (3) peut tre remplace par la condition: 3'. Si , alors le travail est termin et nous affichons si si ou

Remarque: Si l'intervalle [a,b] contient plusieurs racines, cette mthode converge vers l'une d'entre elles. Toutes les autres sont malheureusement perdues. MTHODE DE NEWTON Considrons la figure suivante:

Figure: 57.12 - Illustration de la mthode de Newton

Si

est une approximation de la racine

, nous remarquons que

en est une meilleure. est mais

est l'intersection de la tangente la courbe en encore une meilleure approximation de partir de


A.BENHARI

et de l'axe des abscisses. est obtenu de la mme manire que


67

La mthode de Newton consiste en la formalisation de cette constatation gomtrique. Pour utiliser cette technique, rappelons que si nous prenons une fonction f qui est drivable en , alors nous pouvons la rcrire sous la forme:

est la drive de f en

et

est une fonction qui tend vers 0 comme (c'est un terme correctif qui sous-tend la suite des

pour lorsque x tend vers termes du dveloppement de Taylor). En appliquant ce rsultat la rsolution de

, nous obtenons:

La fonction le terme

empche la rsolution de cette quation par rapport , l'quation se rcrit:

. En ngligeant

et se rsout aisment par rapport

Mais

ne satisfait pas, en gnral, l'galit est plus petit que

. Mais comme nous l'avons dj

soulign,

si la fonction f satisfait certaines conditions.

La mthode de Newton consiste remplacer l'quation:

par:

et rsoudre itrativement cette quation. Les conditions suivantes sont suffisantes pour assurer la convergence de la mthode: Dans un intervalle [a,b] comprenant 1. La fonction soit deux fois drivable
A.BENHARI 68

et

il faut que:

2. La drive f ' ne s'annule pas (monotonie) 3. La deuxime drive soit continue et ne s'annule pas (pas de point d'inflexion) Remarque: Il suffit souvent de vrifier les conditions (1) et (2) pour que le processus soit convergent. La condition (2) est vidente, en effet si de calcul (singularit). alors l'itration peut conduire une erreur

La condition (3) est moins vidente, mais le graphique suivant illustre un cas de nonconvergence. Dans ce cas, le processus une boucle calculant alternativement et .

Figure: 57.13 - Exemple de cas de non-covergence avec la mthode de Newton

Si la fonction f est donne analytiquement, sa drive peut-tre dtermine analytiquement. Mais dans bien des cas, il est utile, voire indispensable de remplacer diffrentiel: par le quotient

o h doit tre choisi suffisamment petit pour que la diffrence:

soit elle aussi suffisamment petite. L'itration s'crit alors:

A.BENHARI

69

Convergence de la mthode: Si la mthode de rsolution est convergente, l'cart entre et diminue chaque itration.

Ceci est assur, par exemple, si l'intervalle [a,b] contenant , voit sa longueur diminuer chaque tape. La mthode de Newton est intressante car la convergence est quadratique:

alors que la convergence des autres mthodes est linaire:

Considrons, par exemple, la mthode de la bissection vue prcdemment. chaque itration la longueur de l'intervalle [a,b] diminue de moiti. Ceci nous assure que l'cart rduit de moiti chaque tape du calcul: est

Pour dmontrer la convergence quadratique de la mthode de Newton, il faut utiliser les dveloppements limits de f et f ' au voisinage de :

Mais:

donc:

En soustrayant gauche et droite de l'galit et en mettant les deux termes du second membre au mme dnominateur, il vient:

A.BENHARI

70

et ds que

est assez petit, le dnominateur peut tre simplifi.

ce qui montre bien que la convergence est quadratique. AIRES ET SOMMES DE RIEMANN Considrons la figure suivante:

Figure: 57.14 - Illustration d'un intervalle sous une courbe

Nous dsirons calculer l'aire comprise entre l'axe x, la courbe de f et les droites d'quations et . Nous supposons dans ce cas que la fonction f est valeurs positives:

Ce problme, dans sa gnralit, est difficile voire impossible rsoudre analytiquement. Voici donc quelques mthodes numriques permettant le calcul approch de cette aire (ces mthodes sont utilises parfois dans les entreprises par les employs qui n'ont que des tableurs du type MS Excel ou OpenOffice Calc pour calculer des intgrales). MTHODE DES RECTANGLES Nous subdivisons l'intervalle en n sous-intervalles dont les bornes sont . Les

longueurs de ces sous-intervalles sont cts sont et .

. Nous construisons les rectangles dont les

A.BENHARI

71

Figure: 57.15 - Approche de l'intgrale de Riemann par des rectangles infrieurs

L'aire de ces rectangles vaut:

Si les

sont suffisamment petits,

est une bonne approximation de l'aire cherche. Nous et comme cts des rectangles.

pouvons recommencer cet exercice en choisissant Nous obtenons alors:

La figure correspondante est la suivante:

Figure: 57.16 - Approche de l'intgrale de Riemann par des rectangles suprieurs

Encore une fois, l'aire de ces rectangles approche l'aire cherche. Afin de simplifier la programmation, il est utile de choisir des intervalles de longueur identique:

A.BENHARI

72

Si nous avons n rectangles, h vaut alors

. Les aires

et

deviennent:

MTHODE DES TRAPZES Afin d'augmenter la prcision des calculs, il est possible de calculer:

Dans le cas o tous les intervalles sont de longueur gale,

vaut:

Il existe une foule d'autres mthodes permettant la rsolution de ce problme (dont la mthode de Monte-Carlo que nous verrons plus loin). Dans le cas o la fonction f n'est pas valeurs positives, nous ne parlons plus d'aire mais de "somme de Riemann". Les sommes calculer sont alors:

et:

Tous les calculs doivent tre conduits de la mme manire, mais les rsultats peuvent tre positifs, ngatifs ou nuls. PROGRAMMATION LINAIRE L'objectif de la programmation linaire (P.L.) est de trouver la valeur optimale d'une fonction linaire sous un systme d'quations d'ingalits de contraintes linaires. La fonction optimiser est baptise "fonction conomique" (utilise en conomie dans le cadre d'optimisations) et on la rsout en utilisant une mthode dite "mthode simplexe" (voir plus loin) dont la reprsentation graphique consiste en un "polygone des contraintes". Remarques:
A.BENHARI 73

R1. La programmation linaire est beaucoup utilise (pour ne citer que les cas les plus connus) dans la logistique (problme flot maximal dit aussi "problme de transport", la finance d'entreprise ou encore aussi en thorie de la dcision lorsque nous devons rsoudre un jeu stratgie mixte (voir le chapitre de Thorie de la dcision et des jeux pour un exemple pratique). C'est pour cette raison que MS Excel intgre un outil appel le "solveur" dans lequel il existe une option appele "modle suppos linaire" qui alors impose l'utilisation du modle du simplexe que nous allons voir ci-aprs (dans MS Excel 2010, celle-ci est nomme "Simplex PL"). R2. Dans le cadre de rsolution de problmes o interviennent des produits de deux variables, nous parlons alors logiquement "programmation quadratique". C'est typiquement le cas en conomtrie dans la modlisation des portefeuilles. C'est pour cette raison que MS Excel intgre un outil appel le "solveur" dans lequel il existe une option appele "estimation quadratique". R3. La programmation quadratique et linaire sont runies dans l'tude gnrale de ce que nous appelons la "recherche oprationnelle". La recherche oprationnelle a pour domaine l'tude de l'optimisation de processus quels qu'ils soient. Il existe de nombreux algorithmes s'inspirant des problmes du type exposs lors de notre tude de la programmation linaire. Nous nous attarderons en particulier sur l'algorithme le plus utilis qui est "l'algorithme du simplexe". Lorsque l'on peut modliser un problme sous forme d'une fonction conomique maximiser dans le respect de certaines contraintes, alors on est typiquement dans le cadre de la programmation linaire. Soit une fonction conomique Z telle que:

o les sont des variables qui influent sur la valeur de Z, et les les poids respectifs de ces variables modlisant l'importance relative de chacune de ces variables sur la valeur de la fonction conomique. Les contraintes relatives aux variables s'expriment par le systme linaire suivant:

Sous forme gnrale et matricielle ce genre de problme s'crit:

A.BENHARI

74

Voyons un exemple qui consiste rsoudre le problme simple suivant: Une usine fabrique 2 pices P1 et P2 usines dans deux ateliers A1 et A2. Les temps d'usinage sont pour P1 de 3 heures dans l'atelier A1 et de 6 heures dans l'atelier A2 et pour P2 de 4 heures dans l'atelier A1 et de 3 heures dans l'atelier A2. Le temps de disponibilit hebdomadaire de l'atelier A1 est de 160 heures et celui de l'atelier A2 de 180 heures. La marge bnficiaire est de 1'200.- pour une pice P1 et 1'000.- pour une pice P2. Quelle production de chaque type doit-on fabriquer pour maximiser la marge hebdomadaire? Le problme peut se formaliser de la faon suivante:

La fonction conomique tant:

maximiser. Rsolution graphique du problme (ou mthode du "polygone des contraintes"): les contraintes conomiques et de signe sont reprsentes graphiquement par des demi-plans. Les solutions, si elles existent, appartiennent donc cet ensemble appel "rgion des solutions admissibles":

A.BENHARI

75

Figure: 57.17 - Illustration d'un problme de recherche oprationnelle simple avec rgion des admissibles

Remarque: Dans le cas gnral, pour ceux qui aiment le vocabulaire des mathmaticiens..., la donne d'une contrainte linaire correspond gomtriquement la donne d'un demi-espace d'un espace n dimensions (n tant le nombre de variables). Dans les cas lmentaires, l'ensemble des points de l'espace qui vrifient toutes les contraintes est un convexe limit par des portions d'hyperplan (voir le cas 2 variables, facile illustrer). Si la fonction de cot est linaire, l'extremum est un sommet (facile voir). L'algorithme du simplex de base (voir plus loin) part d'un sommet et va au sommet d' ct qui maximise localement le cot. Et recommence tant que c'est possible. Pour trouver les coordonnes des sommets, on peut utiliser le graphique si les points sont faciles dterminer. Il s'agit donc de chercher l'intrieur de ce domaine (connexe), le couple la fonction conomique. maximisant

Or, l'quation Z est reprsente par une droite de pente constante (-1.2) dont tous les points fournissent la mme valeur Z pour la fonction conomique. En particulier, la droite passe par l'origine et donne une valeur nulle la fonction conomique. Pour augmenter la valeur de Z et donc la fonction conomique, il suffit d'loigner de l'origine (dans le quart de plan ) la droite de pente -1.2.

Pour respecter les contraintes, cette droite sera dplace, jusqu' l'extrme limite o il n'y aura plus qu'un point d'intersection (ventuellement un segment) avec la rgion des solutions admissibles.
A.BENHARI 76

Figure: 57.18 - Recherch de solutions graphiquement avec la droite de la fonction conomique

La solution optimale se trouve donc ncessairement sur le pourtour de la rgion des solutions admissibles et les parallles formes par la translation de la fonction conomique s'appellent les "droites isoquantes" ou "droites isocots"... Voyons maintenant comment rsoudre ce problme de manire analytique avant de passer la partie thorique. Nous avons donc le "systme canonique":

avec:

Nous introduisons d'abord la "variable d'cart" afin de transformer les 3 ingalits par des galits. Le systme d'quations devient alors une "forme standard":

A.BENHARI

77

Remarque: Il y a autant de variables d'cart que d'inquations! La situation peut se rsumer dans le tableau suivant (nous omettons la reprsentation de la variable d'cart dans le tableau-matrice qui ne sert qu' galiser les quations): Contraintes Total 3 6 Fonction conomique 1'200 4 3 1'000 160 180

Tableau: 57.8 - Reprsentation tabulaire du problme d'optimisation

Nous dterminons maintenant le pivot (voir plus loin la mthode du pivot), pour cela nous choisissons la colonne o le coefficient conomique est le plus grand. Ici c'est la colonne 1. Ensuite, nous effectuons les procdures suivantes: 1. Le pivot est remplac par son inverse 2. On divise les lments de la ligne du pivot (pivot exclu) par le pivot 3. On divise les lments de la colonne du pivot (pivot exclu) par le pivot mais on change leur signe ensuite 4. Pour les autres lments de la premire ligne: lment de la ligne 1 diminu de l'lment correspondant sur la ligne de pivot multipli par 3/6 (rapport des valeurs dans la colonne de pivot) Nous obtenons ds lors: Contraintes Total

Fonction conomique
Tableau: 57.9 - Reprsentation tabulaire du problme d'optimisation avec pivot

Ce qui donne:
A.BENHARI 78

Contraintes Total 0.5 0.166 Fonction conomique -200 2.5 0.5 400 70 30

Tableau: 57.10 - Reprsentation tabulaire du problme d'optimisation avec pivot calcul

Nous n'atteignons la solution optimale que lorsque tous les lments de la marge sont ngatifs ou nuls. Il faut donc continuer (car il reste 400 dans la colonne ) ... ici, on atteint dj l'optimum au troisime tableau, mais ce n'est pas une gnralit (le pivot est 2.5 cette fois). On recommence donc les oprations: Contraintes Total

Fonction conomique
Tableau: 57.11 - Reprsentation tabulaire du problme d'optimisation avec 2me pivot

Ce qui donne: Contraintes Total -0.2 0.266 Fonction conomique -120 0.4 -0.2 -160 28 16

Tableau: 57.12 - Reprsentation tabulaire finale du problme d'optimisation

Le processus est termin car tous les termes de la fonction conomique sont ngatifs. Le programme optimum est donc de et pour un rsultat de:

A.BENHARI

79

ALGORITHME DU SIMPLEXE Pour mettre en oeuvre cet algorithme, nous devons poser le problme sous une forme "standard" et introduire la notion de "programme de base" qui est l'expression algbrique correspondant la notion de "point extrme du polydre des programmes admissibles" tudie lors de la programmation linaire (not ci-aprs P.L.). En effet, nous verrons que la solution d'un problme du type P.L. si elle existe, peut toujours tre obtenue en un programme de base. La mthode du simplexe va donc consister trouver un premier programme de base puis construire une suite de programmes de base amliorant constamment la fonction conomique et donc conduisant l'optimum. Un problme de P.L. est donc mis sous sa "forme standard" s'il implique la recherche du minimum de la fonction objectif sous des contraintes ayant la forme d'quations linaires et de conditions de non ngativit des variables, c'est--dire s'il se pose sous la forme que nous avons vue lors de notre tude de la programmation linaire:

C'est--dire aussi, en utilisant des notations matricielles:

o les matrices correspondent, respectivement, aux coefficients des niveaux d'activit dans la fonction objectif, aux coefficients techniques des activits et aux seconds membres des contraintes. Nous allons voir maintenant comme un problme gnral de P.L. peut toujours tre ramen une forme standard. La notion de "variable d'cart" est essentielle pour effectuer cette "rduction". Chercher le maximum d'une fonction f(x) revient chercher le minimum de la fonction de signe oppos -f(x) . D'autre part, une contrainte qui se prsente comme une inquation:

peut tre remplace par l'quation:

A.BENHARI

80

impliquant une variable supplmentaire, contrainte de non-ngativit, .

, appele donc "variable d'cart", et soumise la

Bien videmment, dans un cas contraire tel o le systme est du type:

Nous crirons:

impliquant donc galement une variable supplmentaire et soumise la contrainte de nonngativit, .

Ce travail de mise en forme standard nous permet donc de retrouver un systme d'quations linaires rsoudre (nous avons vu prcdemment sur le site comme rsoudre ce genre de systme avec l'algorithme du pivot). La matrice A qui reprsente les composantes du systme d'quations peut s'exprimer dans diffrentes variantes en fonction de la base vectorielle choisie (voir le chapitre d'Analyse vectorielle dans la section d'algbre). Nous allons introduire la notion de "forme canonique utilisable" associe au choix d'une base et nous montrerons que cette reformulation du systme de contraintes va nous permettre de progresser vers l'optimum. La matrice A peut, aprs introduction des variables d'cart se dcompenser en deux sousmatrices , une contenant les variables initiales D et l'autre comportant les variables d'cart B tel que:

Remarque: Les variables d'cart sont des variables et non des constantes!! Il convient dans un systme o les variables sont au nombre de n tel qu'une quation du systme s'crirait:

d'ajouter une variable d'cart tel que:

o et sur chaque ligne m, la variable d'cart ajoute doit tre diffrente de celles dj insres dans le systme. C'est la raison pour laquelle nous pouvons dcomposer la matrice en deux-sous matrices.
A.BENHARI 81

Les colonnes de la matrice B sont bien videmment, par dfinition de la mthode, des colonnes units, linairement indpendantes. Ces colonnes forment une base de l'espace vectoriel des colonnes m lments (ou dimensions) - le nombre de lignes du systme. Nous appelons B la "matrice de la base". Les variables associes aux composantes colonnes de la matrice B seront ds maintenant appeles les "variables de bases". Dans ce cas, les variables de base sont donc essentiellement les variables d'cart . Les variables associes aux colonnes de la matrice D .

seront appeles les "variables hors-base"; il s'agit des variables

Remarque: Rappelons que dans l'expression de la fonction conomique, seules les variables hors-base apparaissent. En rsum, tout P.L. une fois mis sous forme standard est tel que: - il existe une sous-matrice carre de la matrice A des coefficients techniques, qui est appele matrice de base et qui est gale la matrice carre unit I de dimension (effectivement il y autant de variables d'cart que de lignes dans le systme d'quations original - au nombre de m - et autant de colonnes puisque chaque variable d'cart un indice diffrent). - les variables de base associes n'apparaissent pas dans l'expression de la fonction conomique. - le second membre des contraintes est constitu d'lments non ngatifs. Nous disons que le problme est mis sous "forme canonique utilisable associe la base B, correspondant aux variables de base ".

Remarque: Nous pouvons intervertir les matrices (et donc changer de base canonique) B et D (ce qui revient dire que la matrice des variables de base devient la matrice des variables hors-base et inversement). Il est maintenant commode d'introduire les notations suivantes:

qui sont respectivement les vecteurs des variables de base et le vecteur des variables horsbase. Ainsi, le systme d'quations dcrivant les contraintes peut s'crire indiffremment:

ou bien aussi:
A.BENHARI 82

Si la matrice B est une matrice de base, elle est non singulire et admet donc une matrice inverse . En multipliant cette quation, gauche et droite, par nous obtenons:

Le systme d'quations aura alors t mis sous une forme rsolue en

Pour obtenir une forme canonique utilisable associe la base B, correspondant aux variables de base, il ne reste plus qu' liminer les variables de base de l'expression de la fonction conomique. crivons cette fonction en sparant les vecteurs et , nous obtenons:

Nous pouvons alors facilement exprimer d'quations mis sous forme rsolue en

en fonction de

. En utilisant le systme

, nous avons dans un premier temps:

que nous substituons dans la fonction conomique, pour obtenir:

Nous regroupons les termes en

et nous avons:

Nous avons alors toujours systme d'quations mais ne comportant plus d'ingalits mais au contraire des galits !!! Reste plus qu' dmontrer que la solution de ce systme dit "programme base" par la mthode du pivot est optimale. Dfinition: nous appelons cot rduit de l'activit hors base j, le coefficient correspondant de la ligne .

Soit un problme de programmation linaire sous forme standard:

A.BENHARI

83

La matrice A m lignes (autant qu'il y a de contraintes) et n colonnes, avec . Si nous slectionnons m variables de base et si nous annulons les variables hors base, la matrice A:

et le systme se rduit :

La matrice B est de dimension . Si elle dfinit une base, elle admet une matrice inverse . Une solution du systme est donc:

Si l'expression est non ngative , nous avons une solution admissible qui vrifie les contraintes et que nous appellerons un programme de base:

Le problme de programmation linaire, s'crit aussi sous la forme suivante, que nous appelons "forme canonique utilisable associe au programme de base":

Dfinition: Nous appelons "cot rduit" de l'activit hors base j, le coefficient correspondant de chaque ligne j de l'expression partir des dveloppements effectus prcdemment nous pouvons noncer le rsultat suivant: Proposition 1: si dans la forme canonique utilisable associe un programme de base, tous les cots rduits sont alors le programme de base est optimal. Proposition 2: La solution d'un problme de P.L., si elle existe, peut toujours tre trouve en un programme de base. La dmonstration prcise de ce rsultat est assez dlicate. Nous pouvons cependant en avoir une intuition en considrant, une fois de plus, la notion de cot rduit. En effet, pour un programme de base donn, considrons la forme canonique utilisable associe la base. Sur cette forme nous pouvons vrifier que, ou bien le programme de base est optimal (tous les cots rduits sont ), ou bien que le programme de base peut tre amlior et remplac par un nouveau programme de base donnant z une valeur plus petite
A.BENHARI 84

(un cot rduit est ngatif et la variable hors-base associe peut tre augmente jusqu' ce qu'une ancienne variable de base s'annule). Comme il y a un nombre fini de programmes de base (au plus gal au nombre programme de base. ), la solution de P.L. se trouve ncessairement en un

MTHODES DE MONTE-CARLO La mthode de Monte-Carlo est un moyen trs efficace de contourner les problmes mathmatiques et physiques les plus complexes. Elle trouve ses applications dans des domaines varis dont voici quelques exemples: - Problmes de neutronique lis la bombe atomique - Calculs d'intgrales ou de paramtres divers de variables alatoires (finance, risque) - Rsolution d'quations elliptiques ou paraboliques - Rsolution de systmes linaires - Rsolution de problmes d'optimisation (recherche oprationnelle, gestion de projets) Il existe donc deux types de problmes qui peuvent tre traits par la mthode de MonteCarlo: les problmes probabilistes, qui ont un comportement alatoire, et les problmes dterministes, qui n'en ont pas. Pour ce qui est du cas probabiliste, il consiste observer le comportement d'une srie de nombres alatoires qui simule le fonctionnement du problme rel et en tirer les solutions. Pour le cas dterministe, le systme tudi est compltement dfini et on peut en principe prvoir son volution, mais certains paramtres du problme peuvent tre traits comme s'il s'agissait de variables alatoires. Le problme dterministe devient alors probabiliste et r solvable de faon numrique. On parle alors d'estimation de "Monte-Carlo" ou d'une approche de "MC labore". La dnomination de mthode de "Monte-Carlo" date des alentours de 1944. Des chercheurs isols ont cependant utilis bien avant des mthodes statistiques du mme genre: par exemple, Hall pour la dtermination exprimentale de la vitesse de la lumire (1873), ou Kelvin dans une discussion de l'quation de Boltzmann (1901), mais la vritable utilisation des mthodes de Monte-Carlo commena avec les recherches sur la bombe atomique. Au cours de l'immdiat aprs-guerre, Von Neumann, Fermi et Ulam avertirent le public scientifique des possibilits d'application de la mthode de Monte-Carlo (par exemple, pour l'approximation des valeurs propres de l'quation de Schrdinger). L'tude systmatique en fut faite par Harris et Hermann Khan en 1948. Aprs une clipse due une utilisation trop intensive pendant les annes 1950, la mthode de Monte-Carlo est revenue en faveur pour de nombreux problmes: en sciences physiques, en sciences conomiques, pour des prvisions lectorales, etc., bref, partout o il est fructueux d'employer des procds de simulation.

A.BENHARI

85

GNRATION DES VARIABLES ALATOIRES Le mieux pour comprendre la mthode de Monte-Carlo c'est de faire des exemples. Mais pour cela, il faut d'abord d'avoir un trs bon gnrateur de nombres alatoires (ce qui est trs difficile). Prenons comme exemple le gnrateur de Maple: >rand();

>restart;rand();

Nous voyons donc que la fonction par dfaut de gnrateur de nombres alatoires de Maple est utiliser avec la plus grande prudence puisqu'une rinitialisation du systme suffit retrouver des valeurs alatoires... gales. Il s'agit donc d'un "gnrateur pseudo-alatoire" permettant de faire des simulations appeles parfois "pseudo Monte-Carlo". Cependant il existe des libraires spcialises dans Maple tel que:
>restart;readlib(randomize):randomize():rand();

>restart;readlib(randomize):randomize():rand();

preuve a priori russie (au fait, il nous faudrait faire un beaucoup plus grand nombre d'essais afin de bien vrifier que le gnrateur ne suive pas une loi de distribution connue... ce qui n'est malheureusement jamais le cas). Les fonctions ALEA( ) et ALEA.ENTRE.BORNES( ) de MS Excel sont aussi des gnrateurs pseudo-alatoires dont voici un chantillon de 100 simulations (videmment dans MS Excel le graphique ci-dessous changera chaque fois que vous activerez la touche F9 du clavier):

A.BENHARI

86

Figure: 57.19 - Illustration d'une squence de nombres pseudo-alatoires avec MS Excel

Il peut malheureusement arriver avec les nombres pseudo-alatoires que les nombres gnrs se prsentent en grappes, c'est--dire en sries de nombres rapprochs les uns des autres, ce qui nuit l'efficacit de la simulation de Monte-Carlo. Une technique empirique consiste faire appel des squences de nombres gnrs sur la base d'algorithmes qui balaient coup sur l'intervalle [0,1]. Nous parlons alors de "nombres quasi-alatoires" permettant de faire des simulation appeles parfois "quasi Monte-Carlo". Avec MS Excel, il est possible de crer une fonction qui remplacera les gnrateurs pseudoalatoires que sont les fonctions ALEA( ) ou ALEA.ENTRE.BORNES( ). Voici donc un exemple de fonction en V.B.A. (Visual Basic for Application) qui gnre des nombres quasi-alatoires appels "squence de Faur": Function SequenceFaure(n) As Double Dim f As Double, sb As Double Dim i As Integer, n1 As Integer, n2 As Integer n1 = n sb = 1 / 2 Do While n1 > 0 n2 = Int(n1 / 2) i = n1 - n2 * 2 f = f + sb * i sb = sb / 2 n1 = n2 Loop SequenceFaure = f End Function Ce qui donnera la squence suivante pour un chantillon de 100 simulations:

A.BENHARI

87

Figure: 57.20 - Illustration d'une squence de nombres quasi-alatoires avec MS Excel

o nous voyons bien que la squence couvre bien la surface comprise 0 et 1 (nous disons alors qu'elle couvre plus rapidement la surface d'intgration). Cette technique est parfois apprcie car elle a pour avantage de conserver les valeurs de la simulation chaque fois que l'on relance la simulation (donc dans MS Excel le graphique ci-dessous ne changera pas quand vous activerez la touche F9 du clavier). Par contre les gnrateurs de squence ont une grande faiblesse: ils ne sont applicables ( ma connaissance du moins) que pour des problmes de simulations avec une seule et unique variable alatoire (typiquement du pricing d'options selon Black & Scholes). Effectivement si nous avons plusieurs variables alatoires (et c'est le cas le plus courant!), alors les variables sont artificiellement corrles (coefficient de corrlation 1) car elles parcourent toutes la surface comprise entre 0 et 1 de la mme manire. Donc une bonne simulation avec plusieurs variables est une simulation dont les variables traites ont un coefficient de corrlation qui tend vers zro. De plus, les gnrateurs de squence ncessitent des algorithmes qui sont trs gourmands lorsqu'il y a de nombreuses variables par rapport un gnrateur pseudo-alatoire, raison pour laquelle dans la majorit des situations, on prfrera cette bonne vieille mthode. Remarque: Se rfrer la norme internationale ISO 28640:2010 pour les ingnieurs ayant besoin d'implmenter des gnrateurs de nombres alatoires dans leurs logiciels. Une fois le gnrateur cr et test, nous pouvons voir quelques rsultats de la mthode de Monte-Carlo. Ainsi, dans le calcul des intgrales, celle-ci s'avre trs utile et trs rapide en termes de vitesse de convergence. CALCUL D'UNE INTGRALE Soit calculer l'intgrale d'une fonction f dfinie et positive sur l'intervalle [a,b]:

A.BENHARI

88

Soit:

Nous considrons le rectangle englobant de la fonction sur [a,b] dfini par les points . Nous tirons un grand nombre N de points au hasard dans ce rectangle. Pour chaque point, nous testons s'il est au-dessous de la courbe. Soit F la proportion de points situs au-dessus, nous avons:

L'algorithme Maple est donn par: intmonte:=proc(f,a,b,N) local i,al,bl,m,F,aleaabs,aleaord,estaudessous; m:=round(max(a,b)*10^4); al:=round(a*10^4); bl:=round(b*10^4); aleaabs:=rand(al..bl); aleaord:=rand(0..m); F:=0; for i from 1 to N do estaudessous:=(f(aleaabs()/10^4)-aleaord()/10^4)>=0; if estaudessous then F:=F+1; fi od: RETURN((b-a)*max(a,b)*F/N) end: Remarque: Pour appeler cette procdure, il suffit d'crire >intmonte(f,a,b,N) mais en remplaant le premier argument pass en paramtre par l'expression d'une fonction et les autres arguments par des valeurs numriques bien videmment. CALCUL DE PI Pour le calcul de le principe est le mme et constitue donc utiliser la proportion du nombre de points dans un quartier de cercle (cela permet de simplifier l'algorithme en se restreignant aux coordonnes strictement positives) inscrit dans un carr relativement au nombre de points totaux (pour tester si un point est l'extrieur du cercle, nous utilisons bien videmment le thorme de Pythagore) tel que:

L'algorithme Maple est donn par:

A.BENHARI

89

estalinterieur:=proc(x,y) x^2+y^2<1 end: calculepi:=proc(N) local i,F,abs,ord,alea,erreur,result; alea:=rand(-10^4..10^4); F:=0; for i from 1 to N do abs:=alea()/10^4;ord:=alea()/10^4; if estalinterieur(abs,ord) then F:=F+1; fi od; RETURN(4*F/N) end: MODLISATION L'application la plus courante de la mthode par Monte-Carlo est certainement l'tude de variables alatoires. Par ailleurs, cette mthode fait partie intgrante de la norme ISO 31010 de gestion du risque sous le nom "analyse de Monte-Carlo" tellement elle est courante et utile. De nombreuses entreprises font de la modlisation de Monte-Carlo avec un tableur comme MS Excel (mme les multinationales!) et dans une moindre mesure avec des logiciels comme @Risk, CrystalBall, TreeAge ou encore Isograph. Les avantages de mthode dans la modlisation de variables alatoires sont les suivants: - On peut intgrer n'importe quelle distribution dans une variable d'entre, y compris des empiriques! - Les modles sont trs simples dvelopper et peuvent tre tendus mesure des besoins - Toutes les influences ou relations se produisant dans la ralit peuvent tre reprsentes - L'analyse de la sensibilit peut tre applique - Les modles sont aisment comprhensibles et fournissent une mesure de l'exactitude d'un rsultat - De nombreux logiciels sont disponible et peu onreux Considrons un cas simple mais concret (trs utilis dans les entreprises) d'un petit projet de deux tches notes A et B qui se succdent sans marge libre. La dure de chacune des tches a t estime conformment la recommandation du Project Management Institute avec une loi beta (cf. chapitre de Statistiques) comme l'apprennent tous les responsables de projets lors de leur cursus de formation (cf. chapitre Techniques De Gestion). Pour cet exemple, la tche A a une dure optimiste de 5 jours et pessimiste 8 jours. La tche B une dure optimiste de 1 jour et pessimiste de 4 jours. Nous souhaiterions dans MS Excel l'aide d'une simulation de pseudo Monte-Carlo (bas donc obligatoirement sur une variable pseudo-alatoire) indiquer les trois informations traditionnelles minimales suivantes:
A.BENHARI 90

- Un tableau avec les 3 colonnes (dure de A, de B et somme des deux) de 10'000 simulations - La fonction de distribution de la somme des deux variables alatoires sous forme graphique - La convergence du 95me centile des 100 premires simulations (utile pour le sujet d'aprs). Nous construisons alors le tableau suivant sur 10'000 lignes (la capture d'cran ne prend que les premires...):

Figure: 57.21 - Mise en place d'une petite simulaiton de Monte-Carlo avec MS Excel

o toutes les cellules de la colonne A contiennent la fonction suivante (MS Excel 2010): =BETA.INVERSE.N(ALEA.ENTRE.BORNES(1;9999)/10000;3+RACINE(2);3RACINE(2);5;8) et toutes les cellules de la colonne B contiennent la fonction suivante (MS Excel 2010): =BETA.INVERSE.N(ALEA.ENTRE.BORNES(1;9999)/10000;3+RACINE(2);3RACINE(2);1;4) et enfin la colonne C contient la fonction suivante: =A2+B2
A.BENHARI 91

videmment les valeurs videmment dans MS Excel changeront chaque fois que vous activerez la touche F9 du clavier. Cela nous donne alors pour l'histogramme (dont je ne vais pas dtailler la construction car il s'agit d'un sujet lmentaire en bureautique):

Figure: 57.22 - Distribution obtenue de la somme des variables alatoires

et la convergence du 95me centile sur les 100 premires simulations (car le problme tant simple, le systme converge suffisamment rapidement pour ne pas avoir besoin d'en prendre plus de 100 pour l'exemple):

Figure: 57.23 - Illustration de la convergence du 95me centile

videmment dans MS Excel les graphiques ci-dessus changeront chaque fois que vous activerez la touche F9 du clavier. Remarques: R1. Dans le cas de simulations de variables alatoires, on peut dans les cas simples impliquant uniquement des sommes ou soustractions de variables alatoires, comme c'est le cas pour
A.BENHARI 92

l'exemple ci-dessus, dterminer l'esprance et l'cart-type du rsultat analytiquement en utilisant la proprit de linarit de l'esprance et de la variance (car normalement pour la variance de deux variables alatoires indpendantes, la covariance est nulle). En analysant la diffrence entre la valeur analytique et celle obtenue par la simulation numrique, on peut corriger le dcalage de certains autres indicateurs statistique par simple ajout ou soustraction du diffrentiel. On parle alors de la technique des "variables de contrle". Il existe d'autres techniques de rduction de la variance (ou in extenso: de l'cart-type) que la mthode de quasi Monte-Carlo permettant de rduire la variance des estimateurs de MonteCarlo dans certaines conditions particulires: 1. Une de ces techniques est l'usage des "variables antithtiques" qui consiste trs simplement (la programmation de cette technique est du niveau du lyce) dcoreller les simulations pour rendre la covariance entre les variables ngatives et ainsi de rduire la variance (puisque comme nous l'avons vu dans le chapitre de Statistiques, la variance de la somme de deux variables alatoires fait apparatre un terme de covariance). Malheureusement, cette technique fonctionne de manire satisfaisante qu'avec des distributions symtriques ce qui fait qu' ma connaissance elle n'est pas implmente dans les logiciels de simulation disponibles sur le march. 2. Il existe aussi la technique "d'chantillonnage stratifi" qui consiste dcouper l'espace des pr-images de la variables alatoires en intervalles rguliers (la programmation de cette technique est aussi du niveau du lyce). Cette technique fonctionne trs bien lorsque le nombre de simulations doit tre faible mais seulement dans le cas d'une une unique variable. Raison pour laquelle est n'est pas implmente ma connaissance dans les logiciels de simulation disponibles sur le march. 3. Il existe une gnralisation de l'chantillonage stratifi (la programmation de cette technique est aussi du niveau du lyce) pour les simulations comportant plusieurs variables et qui se nomme "Latin Hypercube" (abrg "LHS" pour Latin Hypercube Stratification). Cette technique assure donc que chaque n-uplet de variables alatoires (correspondant un espace n -dimensions) utilise une pr-image unique chaque itration, d'o le nom de la technique (Latin: faire rfrence aux carrs magiques o chaque valeur apparat de manire unique, Hypercube: car il s'agit d'une gnralisation n dimensions d'un carr magique). Certains logiciels de simulation disponibles sur le marchs implmentent cette technique (@Risk, CrystalBall). Pour rsumer, que ce soit la technique des gnrateurs de squence de Faur, des variables antithtiques, des variables de contrle, de l'chantillonage stratifi ou de Latin Hypercube mme si ces techniques sont toutes faciles programmer, la mtode utilisant les variables pseudo alatoires est privilgie car est la plus adapte la majorit des situations courantes de l'conomie mondiale. BOOTSTRAPPING En Statistiques, les techniques de bootstrap sont des mthodes d'Infrence statistique requrant des calculs informatiques relativement intensifs. L'objectif est de connatre certaines indications sur une statistique : son estimation bien sr, mais aussi la dispersion (variance, cart-type), des intervalles de confiance voire un test d'hypothse. Cette mthode est base sur des simulations, comme les mthodes de Monte-Carlo, la diffrence prs que le bootstrap ne
A.BENHARI 93

ncessite pas d'information supplmentaire que celle disponible dans l'chantillon. En gnral, il est bas sur de nouveaux chantillons obtenus par tirage avec remise partir de l'chantillon initial (on parle de rchantillonnage). Nous allons illustrer le principe du bootstrap (dit aussi "bootstrapping") sur l'exemple de l'intervalle de confiance de l'esprance d'une variable alatoire. Pour cet exemple, l'intervalle de confiance de l'esprance d'une variable alatoire est parfaitement dtermin partir de la moyenne et de la variance calcules sur l'chantillon (cf. chapitre de Statistiques). Nous considrons un chantillon de la variable alatoire compos de estimations:

La moyenne arithmtique de l'chantillon est:

et son cart-type (estimateur de maximum de vraisemblance non biais):

Comme nous sommes dans la situation d'une moyenne empirique connue et d'une variance empirique connue, pour faire le calcul d'un intervalle de confiance, nous avons alors dmontr dans le chapitre de Statistiques qu'il fallait utiliser:

o S est une autre notation traditionnelle dans certains domaines de la statistique pour la notation de l'cart-type empirique (cf. chapitre de Statistiques). Nous avons alors pour l'intervalle de confiance 95% de l'esprance:

Soit:

Ce qui donne:

A.BENHARI

94

L'intervalle de confiance peut tre galement calcul par bootstrap. Il est alors obtenu par l'algorithme suivant: partir de l'chantillon initial, nous simulons de nouveaux chantillons, appels "rpliques", de taille n, par tirages alatoires avec remise. Par exemple avec la srie prcdente, nous pourrions obtenir la rplique suivante:

dans laquelle certaines valeurs de l'chantillon initial ne figurent pas, et o d'autres apparaissent plusieurs fois. Plusieurs chantillons sont ainsi simuls. Nous pouvons ainsi former un nombre de rpliques (arrangements) gal

Pour chaque chantillon simul, une moyenne est calcule (plusieurs milliers de moyennes!). L'intervalle de confiance 95% est dfini sur cet ensemble de moyennes typiquement l'aide du calcul des centiles (via les fonctions d'un tableur ou d'un langage de programmation). videmment pour chaque ensemble de plusieurs milliers de valeurs, les centiles ne seront pas les mmes donc il est mme possible de crer un intervalle de confiance pour les centiles euxmmes! Il est trs facile (au mme titre que la mthode de Monte-Carlo) de crer des rpliques avec des tableurs (de type MS Excel) sans faire de la programmation informatique! En plus la technique du bootstrap est trs puissante car elle ne fait appel aucune hypothse sur la distribution statistique sous-jacente. Le domaine le plus courant et simple d'application du bootstrapping est la gestion de projets o lors de runions avec une dizaine de ressources chacune estime la dure d'une tche ou d'une phase. Le bootstrap peut donc tre appliqu tout estimateur autre que la moyenne, tel que la mdiane, le coefficient de corrlation entre deux variables alatoires ou la valeur propre principale d'une matrice de variance-covariance (pour l'analyse en composantes principales) et c'est l sa grande force!!! Effectivement, pour ces estimateurs, il n'existe pas de relation mathmatique qui dfinisse l'erreur-standard ou l'intervalle de confiance. Les seules mthodes applicables sont des "mthodes de rchantillonage" (resampling) comme en fait partie le bootstrapping. Exemple: Avec par exemple le tableau MS Excel 2007 et en s'interdisant de faire de la programmation VBA, nous construisons un petit tableau avec l'chantillon:

A.BENHARI

95

Figure: 57.24 - chantillon de base

Nous souhaiterions pouvoir dterminer un intervalle de confiance de la mdiane (nous faisons exprs de prendre un indicateur statistique pour lequel il n'existe pas d'intervalle de confiance analytique). Pour cela, nous calculons la mdiane de plusieurs milliers de rplications o chaque rplication correspond une ligne:

Figure: 57.25 - Mdianes de rpliques

avec la formule MS Excel suivante qu'il faut mettre dans F5 et tirer ensuite jusqu' la fin de la feuille:
A.BENHARI 96

=MEDIANE(INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1); INDEX($A$5:$A$14;ALEA.ENTRE.BORNES(1;10);1)) Nous pourrons donc en avoir 10 milliards pas plus... (comme MS Excel est limit un million de lignes, cela coupe net toute discussion...). Il suffit ensuite dans une cellule de votre choix de mettre: =CENTILE(F5:F2003;0.025) et dans une autre: =CENTILE(F5:F2003;0.975) ce qui avec 2'000 rplications donnera respectivement 7 et 29.5. Avec des connaissances lmentaires du tableur, il est possible de montrer graphiquement la convergence de la moyenne de la mdiane en fonction du nombre de rplications (ci-dessous avec les 100 premires rplications):

Figure: 57.26 - Convergence de la mdiance en fonction du nombre de rplications

videmment, ce graphique aura un aspect diffrent chaque fois que vous relancerez la simulation dans MS Excel en appuyant sur la touche F9 du clavier

A.BENHARI

97

DICHOTOMIE La dichotomie consiste pour un objet de taille N excuter un algorithme de faon rduire la recherche un objet de taille N/2. On rpte l'algorithme de rduction sur ce dernier objet. Ce type d'algorithme est souvent implment de manire rcursive. Lorsque cette technique est utilisable, elle conduit un algorithme trs efficace et trs lisible. Un exemple simple est la recherche de la racine d'une fonction continue (nous avons dj tudi diffrentes mthodes plus haut pour rsoudre ce genre de problmes). C'est--dire le point pour laquelle la fonction f s'annule. Supposons qu'une fonction soit croissante et continue sur un intervalle [a,b] et tel la racine cherche soit entre a et b. Nous avons donc par le fait que la fonction soit croissante dans l'intervalle:

et le fait que la racine se trouve dans l'intervalle:

Nous calculons:

Si alors la racine est dans l'intervalle sinon elle est dans l'intervalle . Nous avons donc ramen le problme une taille infrieure. Nous arrterons l'algorithme quand la prcision sera suffisante. L'algorithme Maple est donn par: zero:=proc(f,a,b,pre) local M; M:=f((a+b)/2); if abs(M)<pre then RETURN((a+b)/2) elif M>0 then zero(f,a,(a+b)/2,pre) else zero(f,(a+b)/2,b,pre) fi end: et ce ne sont que quelques exemples auxquels la mthode est applicable!!

A.BENHARI

98

BIBLIOGRAPHIE
[1] Numerical methods for Mathematics Science and Engineering,1992, J.H.Mathews,Press-Hall International Inc.,2ndedition [2] Numerical methods that work,1970,J.H.Mathews,Press-HallInternational Inc.,2ndedition [3] Analyse numrique pour ingnieurs,1995, A.Fortin, Ed.de l'Ecole Polytechnique de Montral [4] Mthodes numriques. Interpolation - Drives, 1959, J. Kuntzmann,Dunod [5] Introduction to numerical analysis,1956,F.B.Hildebrand,McGraw-Hill [6] Numerical analysis,1961,Z.Kopal,Chapman&HallLTD [7] Computing methods.Vol.I,1965,O.M.Blunn,BoothA.D.,PergamonPress LTD [8] Computing methods.Vol. II, 1965, O.M.Blunn,Booth A.D.,Pergamon PressLTD

A.BENHARI

99