Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Thread Subject:
Why global optimization toolbox give me optimization point that not fit my constraint function?

Subject: Why global optimization toolbox give me optimization point that not fit my constraint function?

From: Marco Wu

Date: 12 Oct, 2011 03:17:29

Message: 1 of 2

 Dear all,

 Please give me some guideline to understand what it means? The 1st part is the output from the global optimizaation toolbox GlobalSearch function. The 2nd part is the constraint result using the optimization point given by the GlobalSearch function. Why global optimization toolbox give me optimization point that not fit the constraint? Please read the 1st element of the of array c in the 2nd part. Do I miss understand something???

====================================
Num Pts Best Current Threshold Local Local
Analyzed F-count f(x) Penalty Penalty f(x) exitflag Procedure
                                            First-order Norm of
 Iter F-count f(x) Feasibility optimality step
    0 12 1.108039e+005 6.711e-001 1.766e+005
    1 24 6.244663e+003 2.456e-001 1.228e+005 1.233e+000
    2 37 4.890842e+003 7.571e-002 8.258e+004 2.638e-001
    3 58 4.890081e+003 6.782e-002 1.384e+004 1.443e-002

Local minimum found that satisfies the constraints.

Optimization completed because the objective function is non-decreasing in
feasible directions, to within the selected value of the function tolerance,
and constraints were satisfied to within the selected value of the constraint tolerance.

<stopping criteria details>

       0 58 4890 4890 1 Initial Point

GlobalSearch stopped because it analyzed all the trial points.

The local solver ran once and it converged with a positive local solver exit flag.


===============================================
My constraint function and result

>> [c, ceq] = superellipse_const_ver3_1(x)

c =

    0.0678 -0.9308 -0.4223 -0.2641 -0.4294

ceq =

     []

Subject: Why global optimization toolbox give me optimization point that

From: Alan Weiss

Date: 12 Oct, 2011 12:12:50

Message: 2 of 2

On 10/11/2011 11:17 PM, Marco Wu wrote:
> Dear all,
>
> Please give me some guideline to understand what it means? The 1st part
> is the output from the global optimizaation toolbox GlobalSearch
> function. The 2nd part is the constraint result using the optimization
> point given by the GlobalSearch function. Why global optimization
> toolbox give me optimization point that not fit the constraint? Please
> read the 1st element of the of array c in the 2nd part. Do I miss
> understand something???
>
> ====================================
> Num Pts Best Current Threshold Local Local Analyzed F-count f(x) Penalty
> Penalty f(x) exitflag Procedure
> First-order Norm of
> Iter F-count f(x) Feasibility optimality step
> 0 12 1.108039e+005 6.711e-001 1.766e+005
> 1 24 6.244663e+003 2.456e-001 1.228e+005 1.233e+000
> 2 37 4.890842e+003 7.571e-002 8.258e+004 2.638e-001
> 3 58 4.890081e+003 6.782e-002 1.384e+004 1.443e-002
>
> Local minimum found that satisfies the constraints.
>
> Optimization completed because the objective function is non-decreasing
> in feasible directions, to within the selected value of the function
> tolerance,
> and constraints were satisfied to within the selected value of the
> constraint tolerance.
>
> <stopping criteria details>
>
> 0 58 4890 4890 1 Initial Point
>
> GlobalSearch stopped because it analyzed all the trial points.
>
> The local solver ran once and it converged with a positive local solver
> exit flag.
>
>
> ===============================================
> My constraint function and result
>
>>> [c, ceq] = superellipse_const_ver3_1(x)
>
> c =
>
> 0.0678 -0.9308 -0.4223 -0.2641 -0.4294
>
> ceq =
>
> []

Many Optimization Toolbox calls use RELATIVE stopping criteria. They
look at the final first-order optimality measure, or constraint
violation, relative to those values at the initial point.

You could re-run fmincon starting at the final point to try to get a
more polished solution, where the first-order optimality and the
constraint violations would be further reduced.

Alan Weiss
MATLAB mathematical toolbox documentation

Tags for this Thread

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us