19章 条件付き極値



studentパッケージのextremaコマンドを用いると、条件付き極値を求めることができます。
例えば、条件g(x,y)=x2+(y2/4)=1の下での関数f(x,y)=xyの極値を求めるには次のように入力します。

>with(student):

>extrema(x*y,x2+y2/4=1,{x,y},'s')
(条件付き極値を計算)


>s
(極値点の候補を表示)


注意 extrema(極値を求めたい関数、制約条件、変数、's')の形で入力します。
出力結果はラグランジュの乗数法を用いて計算されており、極値点の候補はsに入れられています。

 等位集合g(x,y)=1の近傍上での z=f(x,y)のグラフを表示して、上で得た結果の詳細を調べてみましょう。

>plot3d(piecewise(x2+y2/4>0.9 and x2+y2/4<1.1 , x*y,none), x=-2..2,y=-2..2,grid=[100,100])


注意 関数f(x,y)=piecewise(条件、a(x,y),b(x,y))は



という関数を表します。

実習19.1 関数f(x,y)=e-(x+y-2)2とg(x,y)=x3-3xy+y3について、以下の問いに答えなさい。
(1) 条件g(x,y)=0 の下でのf(x,y)の極値を求めなさい。
(2) 条件f(x,y)=1 の下でのg(x,y)の極値を求めなさい。

[正解例]