Thread Subject: fmincon with a discontinuous objective function

Subject: fmincon with a discontinuous objective function

From: Richard Kenefic

Date: 4 Jun, 2007 12:12:52

Message: 1 of 7

I'm trying to solve a minimization problem where the objective
function is multimodal and can become discontinuous. I've got a
particle swarm method that seems to work well, and I want to compare
with a standard technique. So, I'm trying fmincon from the
optimization toolbox. The problem is that for the instance I try,
the function hangs up at the 22nd iteration and never comes back.

Is there a way to diagnose what's happened inside fmincon and force a
return? I suspect that a dicontinuity emerged that trapped fmincon in
some sort of loop.

Thanks!

Subject: fmincon with a discontinuous objective function

From: John D'Errico

Date: 4 Jun, 2007 17:36:54

Message: 2 of 7

Richard Kenefic wrote:
>
>
> I'm trying to solve a minimization problem where the objective
> function is multimodal and can become discontinuous. I've got a
> particle swarm method that seems to work well, and I want to
> compare
> with a standard technique. So, I'm trying fmincon from the
> optimization toolbox. The problem is that for the instance I try,
> the function hangs up at the 22nd iteration and never comes back.
>
> Is there a way to diagnose what's happened inside fmincon and force
> a
> return? I suspect that a dicontinuity emerged that trapped fmincon
> in
> some sort of loop.
>
> Thanks!

I have a little workshop in my garage,
wherein I keep hammers, tools primarily
designed to drive nails into wood. I
also have screwdrivers there, which are
primarily designed to drive screws.

The other day I found myself with a
hammer in one hand and a screw in the
other, and a need to fasten something.
So I just hammered the screw in. It
worked that day, so I figured I would
throw away those pesky screwdrivers.
Now I use my hammer for all tasks.

I'll admit that I have noticed that
occasionally this results in poorly
driven screws. Is there a better hammer
that I should use, or perhaps I'm just
not yet skillfull enough in my use of
the hammer for these tasks?

Fmincon is designed to minimize a
continuous, differentiable objective
function. It might occasionally succeed
on discontinuous objectives, but it is
not an appropriate tool for that
purepose.

John

Subject: fmincon with a discontinuous objective function

From: us

Date: 4 Jun, 2007 19:30:25

Message: 3 of 7

John D'Errico:
<SNIP ...
     john d'errico was a railroad man,
     he worked from six 'till five,
     'raise ''em up bullies and let ''em drop down,
     i''ll beat you to the bottom or die.'

     john d'errico said to his captain:
     'you are nothing but a common man,
     Before that steam drill shall beat me down,
     i''ll die with my hammer in my hand.'

     ...more upon request...

a hint to the OP:
     hum this gently, VERY gently...
     then - think...

us

Subject: fmincon with a discontinuous objective function

From: Marcus M. Edvall

Date: 4 Jun, 2007 21:51:21

Message: 4 of 7

Hi Richard,

You can try some global optimization solvers in TOMLAB: glcDirect,
glcCluster, LGO (3 options), OQNLP, GENO and some more.

Best wishes, Marcus
Tomlab Optimization Inc.
 <http://tomopt.com/tomlab/>

Subject: fmincon with a discontinuous objective function

From: Richard Kenefic

Date: 5 Jun, 2007 08:56:35

Message: 5 of 7

John,

Thanks for your humor. I'm well aware of what I'm doing here -- at
the insistance of SEVERAL reviewers, who seem unaware of the class of
evolutionary algorithms and why they are used. I've managed to drive
that screw by limiting the number of function evaluations and
iterations. The results were predictable.

Rich

Subject: fmincon with a discontinuous objective function

From: Richard Kenefic

Date: 5 Jun, 2007 09:05:06

Message: 6 of 7

Marcus M. Edvall wrote:
>
>
> Hi Richard,
>
> You can try some global optimization solvers in TOMLAB: glcDirect,
> glcCluster, LGO (3 options), OQNLP, GENO and some more.
>
> Best wishes, Marcus
> Tomlab Optimization Inc.
> <http://tomopt.com/tomlab/>
  
Marcus,

Thanks for the link -- I'll check it out, but don't have any budget
to purchase software. Are these methods useful for objective
functions with discontinuities?

Rich

Subject: fmincon with a discontinuous objective function

From: Marcus M. Edvall

Date: 5 Jun, 2007 11:02:11

Message: 7 of 7

Hi Richard,

Well, maybe that will depend on the results. The demos are no limit
and free:
 <http://tomopt.com/scripts/register.php>

Yes, they are all suitable for problems with disconts - better yet if
you can model it with binary variables.

Best wishes, Marcus
Tomlab Optimization Inc.
 <http://tomopt.com/>

>
> Thanks for the link -- I'll check it out, but don't have any budget
> to purchase software. Are these methods useful for objective
> functions with discontinuities?
>
> Rich

Tags for this Thread

Add a New Tag:

Separated by commas
Ex.: root locus, bode

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.

rssFeed for this Thread

Contact us at files@mathworks.com