exhaustive search algorithm Consept

2 ビュー (過去 30 日間)
Nourhan Elsayed
Nourhan Elsayed 2020 年 10 月 26 日
コメント済み: Nourhan Elsayed 2020 年 10 月 29 日
Dear all
i am doing an optimization model for a system, and i want to find the optimum for different system configurations. then i has to run the optimization prblem several times each time with different parameters and then compare the results of each run to get out the optimum.
i have done this through for loop. it works very well and very fast. and then code compare the result of each loop resuslt. my question is
since, the outer for loop passes every group of new parameters to the inner fmincon optimization problem, with reference to the concept of exhaustive search algorithm, is my method concidered as exhaustive search methode,

回答 (2 件)

Tarunbir Gambhir
Tarunbir Gambhir 2020 年 10 月 29 日
It depends on if you are optimising your model using every possible parameter value with all the combinations among different parameters. If you are sure that your program feeds in all the possible combinations of model parameters, then yes it can be considered as an exhaustive search method.
  2 件のコメント
John D'Errico
John D'Errico 2020 年 10 月 29 日
Note that fmincon is the optimizer used.
Nourhan Elsayed
Nourhan Elsayed 2020 年 10 月 29 日
fmincon is used for differnt variables and different function inside the for loop

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


John D'Errico
John D'Errico 2020 年 10 月 29 日
The method you are using is comonly called a multi-start method. It is generally NOT an exhaustive search, although that depends on the optimizations performed and the parameter space involved.
If your parameter space is a continuous one and you do not have known bounds on the derivatives of your function, then in fact it can be proven that no search method on such a problem can be exhaustive.
If your problem has only discrete variables on a finite sample space, then yes, your scheme MAY be considered to be exhaustive, if it truly fully searches the sample space. But even for a discrete problem, what you are doing can fail to exhaustively search the space. However, since I read from your question that you are using fmincon, and since fmincon cannot handle discrete variables, then no, your search is NOT an exhaustive search.
  1 件のコメント
Nourhan Elsayed
Nourhan Elsayed 2020 年 10 月 29 日
Ok, Thank You John D'Errico for your reply. i am using fmicon for other parameters different from the variables involved in the for loop. for example
F1 = F(x1, x2)
F2 = f( y1 , y2, y3, y4, x1, x2)
x1 and x2 are system parameters and they can be any value from a specefic set
so, [x1 x2] belongs to {[1 1], [1 2], [2 1], [2 2]} and cannot be any number outside this set.
F2 is to be optimized by changing "y" for a fixed "x" value. by another word, for every set of [x1 x2] , the seconf function is optimized to find optimum y using fmincon. and that to be repeated for all possible values of x . so i make a for loop to choose x from a defined set and , inside the for loop, run fmincon solver for F2.

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

カテゴリ

Help Center および File ExchangeDirect Search についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by