optimization strategy picking initial point, lower and upper bound?

2 visualizzazioni (ultimi 30 giorni)
Hi all,
I was wondering if there is any good strategy to redefine the starting point, lower bound and upper bound for each iteration of optimization using interior point.
For instances, I have 3 variables. I created a grid of 3x3x3 boxes. I start by using random generator between selected UB and LB, then pick the point [a,b,c] that is feasible, and the optimum out of other objective function's values. Then using this [a,b,c], I start the interior point, with the new UB and LB that is a box containing that [a,b,c]. Once get the optimum [a2,b2,c2], check if one of these variables touch the wall of the box, and if it is, penalize [a2,b2,c2] with a vector so that the new starting point is at the box where it wants to go to, with the corresponding new LB UB.
I tried this, but seems not much improvement here in terms of computational time. Any advise to improve? Thank you in advance.

Risposte (1)

John D'Errico
John D'Errico il 3 Mar 2017
It is rarely a good idea for someone who knows little about optimization to try to write their own code. Such code tends to be poor, slowly convergent, buggy, ugly in general. Since there are MANY good optimization tools available in MATLAB, written by professionals in the field, it simply is not a good idea to cobble up your own optimizer.
Were I you, I would consider one of several toolboxes for optimization in MATLAB. They should all serve your purpose.
Or you can use fminsearch if you don't have those toolboxes. If you need a bounded solver, then consider downloading my own fminsearchbnd from the file exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by