拘束のある問題
提供: Internet Web School
目次 |
等式拘束のある問題
陰関数定理とラグランジュ乗数
以下の問題を考える.
UNIQ7ebd0a3173f67040-MathJax-173-QINUとするとき,
半径1の円周
UNIQ7ebd0a3173f67040-MathJax-174-QINU
上の点UNIQ7ebd0a3173f67040-MathJax-175-QINUでUNIQ7ebd0a3173f67040-MathJax-176-QINUの最大にするものを求めよ.
関数の極値条件
実数値関数UNIQ7ebd0a3173f67040-MathJax-177-QINUがUNIQ7ebd0a3173f67040-MathJax-178-QINUで極小値または極大値をとり,かつ,UNIQ7ebd0a3173f67040-MathJax-179-QINUで微分可能であれば,
UNIQ7ebd0a3173f67040-MathJax-180-QINUのUNIQ7ebd0a3173f67040-MathJax-181-QINUでの微分係数はUNIQ7ebd0a3173f67040-MathJax-182-QINUである。
UNIQ7ebd0a3173f67040-MathJax-183-QINU
陰関数
半径1の円の方程式
UNIQ7ebd0a3173f67040-MathJax-184-QINU
に注目する。判りやすいように,
UNIQ7ebd0a3173f67040-MathJax-185-QINU としておく.
UNIQ7ebd0a3173f67040-MathJax-186-QINU とすると, UNIQ7ebd0a3173f67040-MathJax-187-QINUではUNIQ7ebd0a3173f67040-MathJax-188-QINUの方程式を満たすUNIQ7ebd0a3173f67040-MathJax-189-QINUについては UNIQ7ebd0a3173f67040-MathJax-190-QINU という関係が成り立っている.
このUNIQ7ebd0a3173f67040-MathJax-191-QINUという関数は,UNIQ7ebd0a3173f67040-MathJax-192-QINU式の中には出てこない.UNIQ7ebd0a3173f67040-MathJax-193-QINUからこのように間接的に導き出される関数を陰関数と呼ぶ.
一般化すれば特定の条件のもとに
UNIQ7ebd0a3173f67040-MathJax-194-QINUという式から陰関数UNIQ7ebd0a3173f67040-MathJax-195-QINUが定義される。
上の例では UNIQ7ebd0a3173f67040-MathJax-196-QINU
しかし,何時でも上の例のように,UNIQ7ebd0a3173f67040-MathJax-197-QINUから陰関数UNIQ7ebd0a3173f67040-MathJax-198-QINUが定義されるわけではない.
陰関数定理
ある領域DUNIQ7ebd0a3173f67040-MathJax-199-QINUで関数UNIQ7ebd0a3173f67040-MathJax-200-QINUが連続でかつ,UNIQ7ebd0a3173f67040-MathJax-201-QINUについて偏微分可能で, その偏導関数
UNIQ7ebd0a3173f67040-MathJax-202-QINU
UNIQ7ebd0a3173f67040-MathJax-203-QINU
もUNIQ7ebd0a3173f67040-MathJax-204-QINUについて連続とする。
D内の1点UNIQ7ebd0a3173f67040-MathJax-205-QINUで
UNIQ7ebd0a3173f67040-MathJax-206-QINU
であり,
UNIQ7ebd0a3173f67040-MathJax-207-QINU
とする. このとき,UNIQ7ebd0a3173f67040-MathJax-208-QINUを含む開区間UNIQ7ebd0a3173f67040-MathJax-209-QINUとその上の連続関数UNIQ7ebd0a3173f67040-MathJax-210-QINUが存在し,
1) 開区間UNIQ7ebd0a3173f67040-MathJax-211-QINU上でUNIQ7ebd0a3173f67040-MathJax-212-QINU
2) UNIQ7ebd0a3173f67040-MathJax-213-QINU
3) 開区間UNIQ7ebd0a3173f67040-MathJax-214-QINU上で,
UNIQ7ebd0a3173f67040-MathJax-215-QINU
上の定理でUNIQ7ebd0a3173f67040-MathJax-216-QINUの役目を反対にすれば,UNIQ7ebd0a3173f67040-MathJax-217-QINU となる陰関数の存在が示される.
ラグランジュ乗数法
関数UNIQ7ebd0a3173f67040-MathJax-218-QINUが,制約条件 UNIQ7ebd0a3173f67040-MathJax-219-QINU の元にUNIQ7ebd0a3173f67040-MathJax-220-QINUで極値(極大値か極小値)をとるとする。
UNIQ7ebd0a3173f67040-MathJax-221-QINUがUNIQ7ebd0a3173f67040-MathJax-222-QINUについて微分可能な関数で, 関数UNIQ7ebd0a3173f67040-MathJax-223-QINUはUNIQ7ebd0a3173f67040-MathJax-224-QINUが上の陰関数定理を適用できる条件を満たしているものとする。 UNIQ7ebd0a3173f67040-MathJax-225-QINUの近傍で関数UNIQ7ebd0a3173f67040-MathJax-226-QINUが存在して,UNIQ7ebd0a3173f67040-MathJax-227-QINUのその近傍では UNIQ7ebd0a3173f67040-MathJax-228-QINU が成り立ち,UNIQ7ebd0a3173f67040-MathJax-229-QINU,UNIQ7ebd0a3173f67040-MathJax-230-QINUも成り立っている. UNIQ7ebd0a3173f67040-MathJax-231-QINUの役目を反対にすれば,UNIQ7ebd0a3173f67040-MathJax-232-QINU となる陰関数を用いることになるが議論は全く同様に できる.
関数UNIQ7ebd0a3173f67040-MathJax-233-QINUはUNIQ7ebd0a3173f67040-MathJax-234-QINUで極値(極大値か極小値)をとるから
UNIQ7ebd0a3173f67040-MathJax-235-QINUもUNIQ7ebd0a3173f67040-MathJax-236-QINUで極値を取る.
極値条件により
UNIQ7ebd0a3173f67040-MathJax-237-QINU
である.
このUNIQ7ebd0a3173f67040-MathJax-238-QINUについての微分を求めるとUNIQ7ebd0a3173f67040-MathJax-239-QINUは合成関数であるから
UNIQ7ebd0a3173f67040-MathJax-240-QINU
UNIQ7ebd0a3173f67040-MathJax-241-QINUであるからUNIQ7ebd0a3173f67040-MathJax-242-QINU式を上のUNIQ7ebd0a3173f67040-MathJax-243-QINU式に代入し
UNIQ7ebd0a3173f67040-MathJax-244-QINU
という変数を使うと,
UNIQ7ebd0a3173f67040-MathJax-245-QINU
また
UNIQ7ebd0a3173f67040-MathJax-246-QINU
から
UNIQ7ebd0a3173f67040-MathJax-247-QINU
すなわちUNIQ7ebd0a3173f67040-MathJax-248-QINUという新しい変数を使って
UNIQ7ebd0a3173f67040-MathJax-249-QINU
という関数を造ると:
関数UNIQ7ebd0a3173f67040-MathJax-250-QINUが制約条件UNIQ7ebd0a3173f67040-MathJax-251-QINU を充たすという条件の下に UNIQ7ebd0a3173f67040-MathJax-252-QINUで極値(極大値か極小値)をとる という条件からUNIQ7ebd0a3173f67040-MathJax-253-QINUについての制約のない場合の極値条件
UNIQ7ebd0a3173f67040-MathJax-254-QINU
が導かれる.制約条件付きの極値問題から,UNIQ7ebd0a3173f67040-MathJax-255-QINUという人工的な変数を使って
UNIQ7ebd0a3173f67040-MathJax-256-QINU の制約条件のない場合の極値条件が導かれる.
ただしこの議論は「その点が最大(小)値を与える」UNIQ7ebd0a3173f67040-MathJax-257-QINU 「その点が極値を与える」UNIQ7ebd0a3173f67040-MathJax-258-QINU 「その点でのUNIQ7ebd0a3173f67040-MathJax-259-QINU」
という必要条件の連鎖であるので注意が必要である.
「UNIQ7ebd0a3173f67040-MathJax-260-QINU」は必要条件であるから, これが満たされても,極値かどうかチェックの必要があり,さらにはUNIQ7ebd0a3173f67040-MathJax-261-QINUの極値を与えるUNIQ7ebd0a3173f67040-MathJax-262-QINUが求められたとしても, それが最大(小)値を与えるのか確かめる必要がある。
また,少なくともUNIQ7ebd0a3173f67040-MathJax-263-QINUとUNIQ7ebd0a3173f67040-MathJax-264-QINUがUNIQ7ebd0a3173f67040-MathJax-265-QINUについて微分可能であることも必要である.
ここで使われたUNIQ7ebd0a3173f67040-MathJax-266-QINUはラグランジュ乗数と呼ばれる. 上の問題に適用すると
UNIQ7ebd0a3173f67040-MathJax-267-QINU
拘束条件UNIQ7ebd0a3173f67040-MathJax-268-QINU を充たし,UNIQ7ebd0a3173f67040-MathJax-269-QINUの極値を与える UNIQ7ebd0a3173f67040-MathJax-270-QINUが存在すると仮定すれば,
UNIQ7ebd0a3173f67040-MathJax-271-QINU または UNIQ7ebd0a3173f67040-MathJax-272-QINU であり,
陰関数の存在条件 UNIQ7ebd0a3173f67040-MathJax-273-QINU または UNIQ7ebd0a3173f67040-MathJax-274-QINU が成り立っている.
そこで,
UNIQ7ebd0a3173f67040-MathJax-275-QINU
とおけば
UNIQ7ebd0a3173f67040-MathJax-276-QINU
UNIQ7ebd0a3173f67040-MathJax-277-QINU式から UNIQ7ebd0a3173f67040-MathJax-278-QINU であり,
UNIQ7ebd0a3173f67040-MathJax-279-QINU式から
UNIQ7ebd0a3173f67040-MathJax-280-QINU
これをUNIQ7ebd0a3173f67040-MathJax-281-QINU 式に代入して
UNIQ7ebd0a3173f67040-MathJax-282-QINU
よって
UNIQ7ebd0a3173f67040-MathJax-283-QINU または UNIQ7ebd0a3173f67040-MathJax-284-QINU
UNIQ7ebd0a3173f67040-MathJax-285-QINU のときUNIQ7ebd0a3173f67040-MathJax-286-QINU であり,UNIQ7ebd0a3173f67040-MathJax-287-QINU
UNIQ7ebd0a3173f67040-MathJax-288-QINU のときUNIQ7ebd0a3173f67040-MathJax-289-QINU であり,UNIQ7ebd0a3173f67040-MathJax-290-QINU
従って
等式拘束条件
UNIQ7ebd0a3173f67040-MathJax-291-QINU
の下でUNIQ7ebd0a3173f67040-MathJax-292-QINU の
最大値はUNIQ7ebd0a3173f67040-MathJax-293-QINUのときでUNIQ7ebd0a3173f67040-MathJax-294-QINU
Microsoft Excel のソルバーで解くこともできる.
データの入力とソルバーのパラメータは以下の通りである.解析には非線形問題を選択する.
ソルバーの出力は以下の通りであり前期の解析解と同じである.
上記の議論を一般化したものが以下である.
UNIQ7ebd0a3173f67040-MathJax-295-QINU
がUNIQ7ebd0a3173f67040-MathJax-296-QINUでUNIQ7ebd0a3173f67040-MathJax-297-QINU個の制約条件
UNIQ7ebd0a3173f67040-MathJax-298-QINU
のもとでの極少(極大)値をとるものとする.さらにUNIQ7ebd0a3173f67040-MathJax-299-QINU個のUNIQ7ebd0a3173f67040-MathJax-300-QINU次元 ベクトル
UNIQ7ebd0a3173f67040-MathJax-301-QINU
が一次独立とする.これは前項のUNIQ7ebd0a3173f67040-MathJax-302-QINU式の陰関数の存在条件 UNIQ7ebd0a3173f67040-MathJax-303-QINU に相当する.
UNIQ7ebd0a3173f67040-MathJax-304-QINU個のUNIQ7ebd0a3173f67040-MathJax-305-QINU次元 ベクトルからなるUNIQ7ebd0a3173f67040-MathJax-306-QINU行列 UNIQ7ebd0a3173f67040-MathJax-307-QINU の階数がUNIQ7ebd0a3173f67040-MathJax-308-QINU であることと同値である.
このとき,一変数関数の場合と同様,以下が成立つ.すなわち, UNIQ7ebd0a3173f67040-MathJax-309-QINU次元のラグランジュ乗数ベクトル
UNIQ7ebd0a3173f67040-MathJax-310-QINU が存在し,
UNIQ7ebd0a3173f67040-MathJax-311-QINU
はUNIQ7ebd0a3173f67040-MathJax-312-QINUで停留条件を充す.
すなわち
UNIQ7ebd0a3173f67040-MathJax-313-QINU
が成りたつ.
不等式拘束のある問題
前項では,等式拘束問題を扱った.この項では不等式拘束問題を扱う. 先ず,UNIQ7ebd0a3173f67040-MathJax-314-QINUの部分集合
UNIQ7ebd0a3173f67040-MathJax-315-QINU
を定義しておく.この(正錐)UNIQ7ebd0a3173f67040-MathJax-316-QINUを使って,UNIQ7ebd0a3173f67040-MathJax-317-QINUの 順序(大小)を
UNIQ7ebd0a3173f67040-MathJax-318-QINU
で定義する.
UNIQ7ebd0a3173f67040-MathJax-319-QINUからUNIQ7ebd0a3173f67040-MathJax-320-QINUへの微分可能な写像
UNIQ7ebd0a3173f67040-MathJax-321-QINU で定義されるものとする.
不等式制約
UNIQ7ebd0a3173f67040-MathJax-322-QINU
について,この項では以下のクーン・タッカーの条件が成立つものとする.
クーン・タッカーの条件
UNIQ7ebd0a3173f67040-MathJax-323-QINU を充たす任意のUNIQ7ebd0a3173f67040-MathJax-324-QINUについて
UNIQ7ebd0a3173f67040-MathJax-325-QINU
となる UNIQ7ebd0a3173f67040-MathJax-326-QINUが存在する.
ただし,
UNIQ7ebd0a3173f67040-MathJax-327-QINU
ここで, UNIQ7ebd0a3173f67040-MathJax-328-QINU は順序(大小関係)を
UNIQ7ebd0a3173f67040-MathJax-329-QINU
定義する場合,
UNIQ7ebd0a3173f67040-MathJax-330-QINU
と同値になる.
停留条件
以上のクーン・タッカーの条件下で,
微分可能な写像
UNIQ7ebd0a3173f67040-MathJax-331-QINU
が不等式制約UNIQ7ebd0a3173f67040-MathJax-332-QINU のもとで
UNIQ7ebd0a3173f67040-MathJax-333-QINU で極小(極大)値をとるものとすると,UNIQ7ebd0a3173f67040-MathJax-334-QINU次元のラグランジュ乗数ベクトル
UNIQ7ebd0a3173f67040-MathJax-335-QINU が存在し,
UNIQ7ebd0a3173f67040-MathJax-336-QINU
は,UNIQ7ebd0a3173f67040-MathJax-337-QINUで極値条件(停留条件)を充たす.
すなわち
UNIQ7ebd0a3173f67040-MathJax-338-QINU
が成りたつ.
さらにUNIQ7ebd0a3173f67040-MathJax-339-QINUについては,
UNIQ7ebd0a3173f67040-MathJax-340-QINU
が成立つ.
UNIQ7ebd0a3173f67040-MathJax-341-QINU
は
UNIQ7ebd0a3173f67040-MathJax-342-QINU
と同値になる.

