2017-06-04 13 views
-2

私はfunction UFamily = CalcUFamily(hh,hw)と呼ばれる関数をmatlabに持っています。機能の価値は、hhとhw(家族の夫婦の勤務時間)によって決まります。私は、関数UFamilyを最大化するhhとhwを得たいと思っています。Matlabの関数を最大化

どうすればいいですか?私はfminconを動作させることができません。

ありがとうございました! :)

+0

' CalcUFamily' – Dan

+0

'さh =を[ 1000 1000]。 %開始値 lb = [0 0]; %hの下限% ub = [3500 3500]; h 「CalcUFamily」は、次のように計算されます。非常に長いコードですが、世帯内の女性と男性の労働時間に基づいています。 – KGB91

+0

このコードを編集することができます。このコードを編集することができます。このようにコメントをコード化することはできません。 – Dan

答えて

0

関数fminconを最小にする関数は、入力としてh(1x2)を使用し、関数CalcUFamilyは2つの入力hhとhwを必要とします。以下のような何かを行うことができます:あなたは `fmincon`を使用しようとした方法のあなたのコードを追加する必要があり、ほぼ間違いなく(をコードしていない場合)に関する詳細な情報を追加する必要が

myFun = @(h) -CalcUFamily(h(1), h(2)); % function to minimize with one input 
Uoptimal = fmincon(myFun, [1000 1000], [], [], [], [], lb, ub); 
+0

ありがとう!男性と女性で1時間から3,500時間のテストを別々に行えますか? – KGB91

+0

これはあなたの評価方法、つまりCalcUFamily関数がスコアをどのように計算するかに関係しているので、私はこれに答えることはできません。 –

+0

私は以下を取得しました: エラーメッセージのエラー(行6) Uoptimal = fmincon(myFun、[1000 1000]、[]、[]、[]、[]、lb、ub); 原因: 初期のユーザー指定の目的関数の評価に失敗しました。 FMINCONは続行できません。 ' 他の機能にコード全体が必要ですか?長いですが、必要があれば投稿できます。 – KGB91

関連する問題