★ ラグランジュ乗数法を数値計算では? ★

7982. ラグランジュ乗数法を数値計算では? usao 2005/10/17 (月) 18:52
└7983. Re: ラグランジュ乗数法を数値計算では? kkk 2005/10/17 (月) 19:37
 └8031. Re^2: ラグランジュ乗数法を数値計算では? usao 2005/10/20 (木) 14:40


7982. ラグランジュ乗数法を数値計算では? usao  2005/10/17 (月) 18:52
非線形の最小二乗法をNewton法やMarquardt法のような方法を用いて数値計算で解く(最適なパラメータを推定する)のですが,パラメータには複雑な(非線形の)制約条件が付いています.
いろいろ調べたところ,そのような場合にはラグランジュ乗数法という方法が使えそうなのですが,そのラグランジュ乗数λを数値計算のプログラムの上でどのように扱えばいいのかがわかりません.
(変数としてパラメータに加える? 適当な値の定数とする?
 定数とするとペナルティ法と呼ばれている方法と同じ??)

問題の概要:
最小化したい関数f(p),制約条件g(p)=0
(pは複数個のパラメータ)
これをラグランジュ乗数法では
h(p) = f(p) + λ*g(p)
という新しい関数h(p)を最小化すればよいということなのですが,
λの実際の扱い方がわからない.

どなたかご存知の方おられましたらご教授ください.

     [このページのトップへ]


7983. Re: ラグランジュ乗数法を数値計算では? kkk  2005/10/17 (月) 19:37
ラグランジュの未定乗数法で調べれば分かりやすいと思います。

変数としてλを加え,変数が増える代わりに制約条件がなくなった極値問題に変換するテクニックです。

> 非線形の最小二乗法をNewton法やMarquardt法のような方法を用いて数値計算で解く(最適なパラメータを推定する)のですが,パラメータには複雑な(非線形の)制約条件が付いています.
> いろいろ調べたところ,そのような場合にはラグランジュ乗数法という方法が使えそうなのですが,そのラグランジュ乗数λを数値計算のプログラムの上でどのように扱えばいいのかがわかりません.
> (変数としてパラメータに加える? 適当な値の定数とする?
>  定数とするとペナルティ法と呼ばれている方法と同じ??)
>
> 問題の概要:
> 最小化したい関数f(p),制約条件g(p)=0
> (pは複数個のパラメータ)
> これをラグランジュ乗数法では
> h(p) = f(p) + λ*g(p)
> という新しい関数h(p)を最小化すればよいということなのですが,
> λの実際の扱い方がわからない.
>
> どなたかご存知の方おられましたらご教授ください.

     [このページのトップへ]


8031. Re^2: ラグランジュ乗数法を数値計算では? usao  2005/10/20 (木) 14:40
> 変数としてλを加え,変数が増える代わりに制約条件がなくなった極値問題に変換するテクニックです。

それはなんとなくわかるのですが,追加したλを実際に
数値計算でどう扱うのかがわからないのです.

> > h(p) = f(p) + λ*g(p)
> > という新しい関数h(p)を最小化
することを数値計算で行う場合,
λを「変数」として扱うと,f(p)の値を無視して
λを-∞方向に発散させるような
結果が得られてしまうように思うのですが…
(そもそもλの初期値もわからない)

     [このページのトップへ]


● 「統計学関連なんでもあり」の過去ログ--- 035 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る