2016-09-28 10 views
1

私は(Matlabを使って)その最大値を見つけるために最適化する関数を持っています。シミュレーションモデルの関数部分であり、したがってMatlabスクリプトファイルに格納されます。機能の使用状況の正常な場合には、私はfminbndをコマンドを使用して、機能の負を取る最大化を行うことができますMatlabスクリプトファイルの関数の最大値はどうですか?

注意。その結果

G(X)= -f(x)は

例えば

しかし、私はスクリプト関数の(または最大関数を見つける関数の-veを使って)maximaを見つける方法を探しています。

答えて

2

あなたが探しているものを正しく理解していれば、いくつかの入力変数を取り、結果を生成する一連のコマンドがありますが、これらのコマンドはMATLAB関数ではなくスクリプトファイル内にあります。コマンドを関数に書き直すのではなく、fminbndを実行しますか?

簡単な質問をして、コードを関数に入れたいのはなぜですか?何らかの理由で、あなたのスクリプトを実行し結果を返す 'コンテナ'関数を構築することはできないと仮定します。あなたはその後、containerFunction代わりfminbndをから呼び出すことができます

function result = containerFunction(myScriptName, inputData) 

% Input Arguments: 
% myScriptName : string, filename (not extension), e.g. 'myScript' 
% inputData : any data compatible with the script defined in myScriptName 

% Output Arguments: 
% result : must be created by the script defined in myScriptName 

eval(myScriptName); 

:のようなもの。

関連する問題