Optimization of an simple problem with multi parameters
Show older comments
Hello,
I just want to do any easy optimization with matlab, but i need a tip how to do it.
Here is the question:
I have 3 different parameters (a,b,c) which are effecting the result and one result (d). I need to minimize the result by changing the paramaters. How can i do it matlab?
Example:
a=50 b=100 c= 90 -----> d=45
a=80 b=70 c= 60 -----> d=23
a=20 b=65 c= 40 -----> d=58
a=30 b=134 c= 93 -----> d=71
a=40 b=150 c= 36 -----> d=62
a=54 b=100 c= 24 -----> d=25
a=? b=? c=? -------> Min(d) ?
thank you
Answers (1)
Matt J
on 1 Oct 2012
0 votes
Use an Optimization Toolbox function if you've got it
Otherwise, try the FMINSEARCH command.
5 Comments
econgrad
on 2 Aug 2013
Matt Thank you for your reply to this question, I also have a similar problem, can you please tell me if fminsearch can actually solve this? besides is it possible to solve this type of problems with fmincon?
Matt J
on 2 Aug 2013
econgrad - whether an algorithm will deal successfully with a minimization problem depends on the specific form and properties of the problem. It may also depend on whether you have a good initial guess, if local minima are present.
econgrad
on 3 Aug 2013
The problem that I have is: max ln(1+a*x1+b*x2). Now for each x1,x2 I have a unique a,b values. My problem is to find the x1 and x2 which maximizes the problem with corresponding a and b. My initial guess of x1 and x2 is provided from the actual data. And I have few constraints so would like to use fmincon.
As Roger told you here,
we would have to see the full form of the function you're maximizing (and the constraints) to know whether fmincon is applicable. ln(1+a*x1+b*x2) is obviously not the full form, because you say that a,b are further functions of x1,x2. So you really have
max ln(1+a(x1,x2)*x1+b(x1,x2)*x2)
We have to know what the dependences a(x1,x2) and b(x1,x2) look like. For one thing, fmincon will only solve 2nd order smooth problems, so we need to know if a() and b() satisfy those smoothness conditions.
econgrad
on 11 Aug 2013
Thanks for your reply, actually I have something like this: a=a(x1,x2,c1,c2) and b=b(x1,x2,c1,c2). When x1 and x2 changes, c1 and c2 would also change and that change has to obtained by finding the fixed points of a(x1,x2,c1,c2) and b(x1,x2,c1,c2). After finding the new c1,c2 by fixed point iteration, I get a new a(x1,x2,c1,c2) & b(x1,x2,c1,c2).
Categories
Find more on Solver Outputs and Iterative Display in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!