Optimization problem - solving problem within a loop

I have a function in which I am using a loop and also discretisation in time. It is solving a PDE using Fully implicit backward method. I want to know how to define the objective function as the values are changing within the loop with time. Also how do I specify the variables which need to be modified for optimisation.
Thank you.

回答 (1 件)

Yogesh Khurana
Yogesh Khurana 2019 年 7 月 29 日

0 投票

You can use Optimization Expressions for defining objective functions and its variables inside a for-loop. Refer to the following link for more information:
Hope it helps!

1 件のコメント

Muzammil Ali
Muzammil Ali 2019 年 7 月 29 日
I have two variables to optimise and I put it in the following form:
ratio = optimvar('ratio',1,1,'LowerBound',0,'UpperBound',1);
Dsw = optimvar('Dsw',1,1,'LowerBound',0,'UpperBound',1e-9);
But I get the following error:
Undefined function 'exp' for input arguments of type 'optim.problemdef.OptimizationExpression'.
Error in drying_optimisation_function (line 409)
DwsA=Dsw(1)*(exp(ratio(1)*(1-1/(1-((1-cf./(1+cf))*rhodropA/rhosolid))))*exp(-1.39e5*(exp(-3.32*(1-cf./(1+cf))))/8.314*(1/Tp(k)-1/298)));

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeGet Started with Optimization Toolbox についてさらに検索

製品

リリース

R2018a

質問済み:

2019 年 7 月 9 日

コメント済み:

2019 年 7 月 29 日

Community Treasure Hunt

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

Start Hunting!

Translated by