when I use "fgoalattain" to solve multi- goal optimization as follows
[x,fval,attainfactor,exitflag]=fgoalattain(@myfun,x0,goal,weight,[],[],
[],[],lb,ub)
I find that the optimized results fval hold invariant.
Last, the results of the program are
"Optimization terminated: magnitude of search direction less than
2*options.TolX
and maximum constraint violation is less than options.TolCon.
Active inequalities (to within options.TolCon = 1e-006):
lower upper ineqlin ineqnonlin
6 3
7
8
x =
50.0000 50.0000 50.0000 50.0000 50.0000 0
-0.0000 0.0000 0.7935 0.4149
fval =
1.0e+004 *
0.0017 0.2294 1.7479 0.0643
attainfactor =
1.7477e+004
exitflag =
4
How can I obtain a good result?
From the information you have provided, my initial suggestion to you would
be to try a different value of x0 (if you haven't done so already). This may
help for a couple of reasons:
- I notice that one of the goal constraints is active at the initial value
you chose. This may mean that the quadratic subproblem may not be able to
improve on the supplied x0 and the algorithm will terminate.
- The initial value you chose may actually be a (local) minimum of the
problem solved by fgoalattain and a change of x0 may help you diagnose this.
Also, I've noticed that there is a fairly wide variation in the scale of
your objective function values. In particular, fval(1) O(10) and fval(3) is
O(10000). It may be helpful to rescale fval so that each element varies on a
similar scale.
Hope this helps.
Best regards,
Paul
<lami...@gmail.com> wrote in message
news:c888c9aa-fcbc-4f69...@i24g2000prf.googlegroups.com...