Using maximum of optimisation variable as an upper bound for another variable
2 ビュー (過去 30 日間)
古いコメントを表示
Hello
I am trying to minimise a cost function where the investment cost is the the maximum value of an optimisation variable multiplied by the cost e.g.
Total cost=Cost per kW*MaxkW
However, matlab doesn't seem to like using an optimisation variable as a boundary condition.
Any solutions?
Thanks
Michael
0 件のコメント
採用された回答
その他の回答 (4 件)
Ted Shultz
2019 年 8 月 21 日
you can do a bounded obtimization using this file from filecentral: fminsearchbnd
0 件のコメント
Bruno Luong
2019 年 8 月 21 日
Not sure what you mean by "boundary condition" (there is no such thing in all optimization frameworks as far as I know), but take a look at fminmax
0 件のコメント
Naveen Venkata Krishnan
2019 年 10 月 7 日
Hello Micheal,
Based on the question, I understood the problem in this way , please correct me if am wrong :
"You want to minimize a cost function in such a way that optimization variable lies close to its upper boundary region ".
If this the requirment one way to do it to confine the search space of the optimizer close to upper boundary ( like giving the values of upper - ub and lower boundary - lb of the optimzation variable around the maximum value of the optimization variable ) .
Another way is by using an enforcement operator, i think the following IEEE paper may be of some help to you reg this.
0 件のコメント
Michael-Allan Millar
2019 年 10 月 7 日
1 件のコメント
Matt J
2019 年 10 月 7 日
Well, you don't have to "manually" pick. You would just do
[~,jmin]=min([Cost{:}]);
x=X{jmin};
参考
カテゴリ
Help Center および File Exchange で Get Started with Optimization Toolbox についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!