simplex法に範​囲制約を加えて多変数​関数の最小値を求める​方法

조회 수: 7 (최근 30일)
kazuma hamano
kazuma hamano 2017년 10월 17일
답변: mizuki 2017년 10월 17일
fminsearchに適用されているシンプレックス探索法に範囲制約を加えて、多変数関数の最小値を求めることはできますか? fminconに適用されているいるような、数値勾配や解析勾配による最小化ではなく、直接探索法によって多変数関数の最小値を求めたいです。
  댓글 수: 3
michio
michio 2017년 10월 17일
Global Optimization Toolbox の patternsearch 関数などいかがでしょう。
kazuma hamano
kazuma hamano 2017년 10월 17일
お返事ありがとうございます。
まず最初にx1, x2に初期値を適当に与えて、x1', x2'を算出します。算出したx1', x2'と誤差が小さくなるx1, x2を求めるために、matlabの最適化関数を用いたいと考えています。
私の現在のプログラムでは、初期値x1とx1’の誤差は大きく出ますが、初期値x2とx2'の誤差が小さく出るように計算されています。
しかし実際には、与えた初期値x2も最適解とは異なるので、x2も変動させて最適解を求めたいと考えています。その時、数値勾配や解析勾配を用いて最小化を行うと、x2の変動が小さくなってしまうため、シンプレックス法を用いて最適解を求めたいです。

댓글을 달려면 로그인하십시오.

채택된 답변

mizuki
mizuki 2017년 10월 17일
File Exchange で提供されている FMINSEARCHBND はいかがでしょうか。

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 非線形最小二乗法 (曲線近似)에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!