<html> <head> <title>Lagrange.html</title> <!-- Created by Maple V Release 5.1, IBM INTEL NT --> </head> <body bgcolor="FFFFFF"> <a name="MapleAutoBookmark3"> <p align=left> <b><font color=#800080 size=4> Exemple 1</font></b> </p> <p align=left> <font color=#000000>Soit la fonction f dfinie par </font> <img src="images/Lagrange6.gif" width=185 height=50 alt="[Maple Math]" align=middle> <font color=#000000>. Optimisons cette fonction sur un disque de rayon 1 centr  l'origine. Puisque la fonction f est continue sur un domaine ferm et born, la fonction f atteint son maximum et son minimum avec certains points de son domaine.</font> </p> <p align=left> </p> <p align=left> <font color=#000000>Commenons par crer la fonction f.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>f:=(x,y)-&gt;2*x^2-y+y^2+5;</font></b> </p> <p align=center> <img src="images/Lagrange7.gif" width=213 height=29 alt="[Maple Math]"> </p> <p align=left> <tt>&gt; </tt> </p> <p align=left> <font color=#000000>Dans un mme graphique, superposons le trac de la surface d'quation </font> <img src="images/Lagrange8.gif" width=80 height=32 alt="[Maple Math]" align=middle> <font color=#000000> et celui du domaine ferm d'optimisation.</font> </p> <p align=left> <font color=#000000>Pour obtenir le trac de la frontire du domaine, soit le trac de l'quation </font> <img src="images/Lagrange9.gif" width=91 height=50 alt="[Maple Math]" align=middle> <font color=#000000>, paramtrisons en posant </font> <img src="images/Lagrange10.gif" width=81 height=32 alt="[Maple Math]" align=middle> <font color=#000000> et </font> <img src="images/Lagrange11.gif" width=75 height=32 alt="[Maple Math]" align=middle> <font color=#000000>.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>Surface:=plot3d([x,y,f(x,y)],x=-2..2,y=-2..2):<br> Contrainte:=spacecurve([sin(t),cos(t),0],t=0..2*Pi,color=orange,thickness=3):<br> Domaine:=plot3d([x,y,0],x=-2..2,y=-2..2,style=PATCHNOGRID,color=plum):<br> Domaine_optimisation:=plot3d([x,y,0],x=-1..1,y=-sqrt(1-x^2)..sqrt(1-x^2),style=PATCHNOGRID,color=orange):<br> display([Surface,Contrainte,Domaine,Domaine_optimisation],axes=framed,orientation=[35,65]);</font></b> </p> <p align=center> <img src="images/Lagrange12.gif" width=388 height=288 alt="[Maple Plot]"> </p> <p align=left> <font color=#000000>Pour mieux se convaincre que la fonction possde effectivement des extrma absolus avec des points du disque, projettons la frontire de ce disque sur la surface.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>Contrainte_S:=spacecurve([sin(t),cos(t),f(sin(t),cos(t))],t=0..2*Pi,color=orange,thickness=2):<br> L:=seq(plots[spacecurve]([[cos(k*Pi/12),sin(k*Pi/12),0],[cos(k*Pi/12),sin(k*Pi/12),f(cos(k*Pi/12),sin(k*Pi/12))]],<br>  color=orange,thickness=1),k=0..24):<br> display([Surface,Contrainte,L,Contrainte_S,Domaine,Domaine_optimisation],axes=framed,<br>          style=patchnogrid,<br>          orientation=[53,63]);</font></b> </p> <p align=center> <img src="images/Lagrange13.gif" width=388 height=288 alt="[Maple Plot]"> </p> <p align=left> <tt>&gt; </tt> </p> <p align=left> <font color=#000000>En modifiant, avec la souris, l'orientation de cette surface, il est facile de se convaincre que la fonction f possde effectivement un maximun absolu et un minimum absolu sur ce domaine ferm. Mais, graphiquement, il est peut tre mme assez difficile de localiser sur la portion en cause de la surface, ces minimum et maximum absolus: sont-ils  l'intrieur ou sur le bord ? </font> </p> <p align=left> </p> <p align=left> <b><font color=#000000 size=4>I. Optima sur les points intrieurs du domaine: points critiques</font></b> </p> <p align=left> </p> <p align=left> <font color=#000000>Commenons notre analyse avec les points intrieurs de ce disque. Recherchons donc les points critiques de la fonction f.</font> </p> <p align=left> </p> <p align=left> <font color=#000000>Rsolvons alors le systme </font> <b><font color=#000000>S</font></b> <font color=#000000>: </font> <img src="images/Lagrange14.gif" width=118 height=32 alt="[Maple Math]" align=middle> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>fx:=D[1](f);<br> fy:=D[2](f);</font></b> </p> <p align=center> <img src="images/Lagrange15.gif" width=130 height=20 alt="[Maple Math]"> </p> <p align=center> <img src="images/Lagrange16.gif" width=162 height=20 alt="[Maple Math]"> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>solve({fx(x,y)=0,fy(x,y)=0},{x,y});</font></b> </p> <p align=center> <img src="images/Lagrange17.gif" width=108 height=45 alt="[Maple Math]"> </p> <p align=left> <font color=#000000>Bien sr, ce n'est pas un systme trs difficile  rsoudre. Effectivement, on peut le faire sans l'aide de Maple, mais ce n'est pas l la question. On a donc  l'intrieur du disque, qu'un seul point critique. Nous contrlerons ce point plus tard.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>Points_critiques:=[0,1/2];</font></b> </p> <p align=center> <img src="images/Lagrange18.gif" width=180 height=45 alt="[Maple Math]"> </p> <p align=left> </p> <p align=left> <b><font color=#000000 size=4>II. Optima sur les points frontires: mthode des multiplicateurs de Lagrange</font></b> </p> <p align=left> </p> <p align=left> <font color=#000000>Affichons seulement la projection de la frontire du disque sur cette surface.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>display([Contrainte,Domaine,Domaine_optimisation,Contrainte_S],<br>          axes=framed,<br>          style=patchnogrid,<br>          orientation=[35,65]);</font></b> </p> <p align=center> <img src="images/Lagrange19.gif" width=388 height=288 alt="[Maple Plot]"> </p> <p align=left> <tt>&gt; </tt> </p> <p align=left> <font color=#000000>En modifiant l'orientation du graphique avec la souris, il semble que cette fonction possde sur la frontire du disque, un maximum absolu atteint avec deux points (</font> <i><font color=#000000>x</font></i> <font color=#000000>,</font> <i><font color=#000000>y</font></i> <font color=#000000>) diffrentes et un minimum absolu atteint avec un seul point.</font> </p> <p align=left> </p> <p align=left> <font color=#000000>Pour appliquer la mthode des multiplicateurs de Lagrange afin d'optimiser la fonction f sur le bord, nous limiterons donc le domaine d'optimisation de la fonction f  celui de la frontire du disque, soit le cercle de rayon 1. La contrainte </font> <img src="images/Lagrange20.gif" width=85 height=32 alt="[Maple Math]" align=middle> <font color=#000000> dans la mthode des multiplicateurs de Lagrange sera donc l'quation du cercle unit.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>g:=(x,y)-&gt;x^2+y^2-1;</font></b> </p> <p align=center> <img src="images/Lagrange21.gif" width=180 height=29 alt="[Maple Math]"> </p> <p align=left> <font color=#000000>Formons maitenant la fonction F dfinie par </font> <img src="images/Lagrange22.gif" width=194 height=32 alt="[Maple Math]" align=middle> <font color=#000000>. Le paramtre </font> <img src="images/Lagrange23.gif" width=25 height=32 alt="[Maple Math]" align=middle> <font color=#000000> est appel multiplicateur de Lagrange.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>F:=(x,y)-&gt;f(x,y)+lambda*g(x,y);</font></b> </p> <p align=center> <img src="images/Lagrange24.gif" width=222 height=20 alt="[Maple Math]"> </p> <p align=left> <font color=#000000>Rsolvons maintenant le systme S:</font> <img src="images/Lagrange25.gif" width=279 height=32 alt="[Maple Math]" align=middle> <font color=#000000>.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>Eq1:=diff(F(x,y),x)=0;<br> Eq2:=diff(F(x,y),y)=0;<br> Eq3:=g(x,y)=0;<br> Sol:=solve({Eq1,Eq2,Eq3},{x,y,lambda});</font></b> </p> <p align=center> <img src="images/Lagrange26.gif" width=157 height=20 alt="[Maple Math]"> </p> <p align=center> <img src="images/Lagrange27.gif" width=189 height=20 alt="[Maple Math]"> </p> <p align=center> <img src="images/Lagrange28.gif" width=162 height=29 alt="[Maple Math]"> </p> <p align=center> <img src="images/Lagrange29.gif" width=619 height=45 alt="[Maple Math]"> </p> <p align=left> <font color=#000000>Explicitons tous les rsultats prcdents  l'aide de la macro-commande </font> <!-- HelpHyperlink topic=allvalues --> <u><font color=#008080>allvalues</font></u> <!-- /HelpHyperlink --> <font color=#000000>.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>Sol:=`union`(allvalues({Sol})); </font></b> </p> <p align=center> <img src="images/Lagrange30.gif" width=742 height=45 alt="[Maple Math]"> </p> <p align=left> <font color=#000000>numrons tous les points de la frontire  contrler. On pourrait, bien sr, tout aussi bien tablir cette liste manuellement.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>P:=Listage(Sol);</font></b> </p> <p align=center> <img src="images/Lagrange31.gif" width=309 height=45 alt="[Maple Math]"> </p> <p align=left> <font color=#000000>Ajoutons le point critique  la liste des points  tester. Donnons  cette liste le nom Points_C.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>Points_C:=P,Points_critiques;</font></b> </p> <p align=center> <img src="images/Lagrange32.gif" width=407 height=45 alt="[Maple Math]"> </p> <p align=left> <font color=#000000>Calculons les optima correspondant  ces cinq points.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>printf(`\n                       Points  tester      |      Valeurs de f    |\n`); <br> seq(printf("%40a    | %15a      |\n", [Points_C][k],f(op(1,op(k,[Points_C])),op(2,op(k,[Points_C])))),k=1..nops([Points_C]));</font></b> </p> <p align=left> </p> <p align=left> <tt><pre><font color=#0000FF size=2>                       Points  tester      |      Valeurs de f    |</font></pre></tt> </p> <p align=left> <tt><pre><font color=#0000FF size=2>                                 [0, -1]    |               7      |</font></pre></tt> </p> <p align=left> <tt><pre><font color=#0000FF size=2>                     [1/2*3^(1/2), -1/2]    |            29/4      |</font></pre></tt> </p> <p align=left> <tt><pre><font color=#0000FF size=2>                    [-1/2*3^(1/2), -1/2]    |            29/4      |</font></pre></tt> </p> <p align=left> <tt><pre><font color=#0000FF size=2>                                  [0, 1]    |               5      |</font></pre></tt> </p> <p align=left> <tt><pre><font color=#0000FF size=2>                                [0, 1/2]    |            19/4      |</font></pre></tt> </p> <p align=left> </p> <p align=left> <font color=#000000>Reste finalement  conclure.</font> </p> <p align=left> <font color=#000000>Le minimum absolu est atteint avec le point critique </font> <img src="images/Lagrange33.gif" width=60 height=58 alt="[Maple Math]" align=middle> <font color=#000000>  et vaut </font> <img src="images/Lagrange34.gif" width=36 height=58 alt="[Maple Math]" align=middle> <font color=#000000> et le maximum absolu vaut </font> <img src="images/Lagrange35.gif" width=36 height=58 alt="[Maple Math]" align=middle> <font color=#000000> et est atteint en </font> <img src="images/Lagrange36.gif" width=103 height=64 alt="[Maple Math]" align=middle> <font color=#000000> et en </font> <img src="images/Lagrange37.gif" width=116 height=64 alt="[Maple Math]" align=middle> <font color=#000000>.</font> </p> <p align=left> </p> <p align=left> <font color=#000000>Terminons cet exemple en illustrant ces optima sur la surface.</font> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>Points_optima:=[[0, 1/2,f(0,1/2)],[1/2*sqrt(3), -1/2,f(1/2*sqrt(3), -1/2)],[-1/2*sqrt(3), -1/2,f(-1/2*sqrt(3), -1/2)]];<br> </font></b> </p> <p align=center> <img src="images/Lagrange38.gif" width=431 height=45 alt="[Maple Math]"> </p> <p align=left> <tt>&gt; </tt> <b><font color=#FF0000>Points:=pointplot3d(Points_optima,symbol=circle,color=navy):<br> display([Contrainte,Domaine,Domaine_optimisation,Surface,Points,Contrainte_S],style=patchnogrid,axes=framed,orientation=[70,60]);</font></b> </p> <p align=center> </p> <p align=center> <img src="images/Lagrange39.gif" width=388 height=288 alt="[Maple Plot]"> </p> <p align=left> <tt>&gt; </tt> </p> <p align=left> <font color=#000000>Question: Peut-on imaginer ici, un disque ferm de rayon r centr au point (0,0,0) dont le rayon sera assez petit de telle sorte que la fonction ne puisse possder de points critiques  l'intrieur de ce disque ? Si oui, cela constiturerait un exemple de fonction o les extrma absolus seraient situs exclusivement sur la frontire de ce domaine ferm.</font> </p> <p align=left> </p> </body> </html> 
