Re: how to solve this kind of optimization problem
- From: spellucci@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx (Peter Spellucci)
- Date: Mon, 22 Oct 2007 14:04:41 +0000 (UTC)
In article <1193060120.312468.296760@xxxxxxxxxxxxxxxxxxxxxxxxxxx>,
Sam <hollowspook@xxxxxxxxx> writes:
Hi, thanks for your reply.
I am sorry that I make a mismake in my last post. The new constrain
whould be:
sum(k(x[i],x[i+1]))<=50; i = 1, 2, 3,...99;
where k(x[i],x[i+1])=1 if x[i]~=x[i+1] or
k(x[i],x[i+1])=0 if x[i]==x[i+1].
Also the exact meaning of this is that we expect the number of changes
on x[i] is less than a constant value. For example, if
x[1]=x[2]=x[3]=...=x[99]~=x[100], then sum(k(x[i],x[i+1]))= 1 in this
case.
??? you have a vector of 100 variables but want it to have at most 50 different
components ???
this would mean a terrible combinatorical optimization problem
and the methods of continuous optimization appear here in
the solution of subproblems at most.
think about this for 4 components: and sum <=2
cases x1=x2=x3=x4
or (!!)
x1=x2=x3 , x3~-x4
or
x1=x3=x4 , x2~-x4
......
or
x1=x2 and x3=x4
or
x1=x3 and x2=x4
or
..............
the constraints in continuous optimization problems are "and" constraints!
there must be a different way to formulate this .... hopefully
hth
peter
.
On 10 22 , 5 25 , spellu...@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
(Peter Spellucci) wrote:
In article <1193022469.259298.26...@xxxxxxxxxxxxxxxxxxxxxxxxxxx>, Sam <hollowsp...@xxxxxxxxx> writes:
>Hi, there.
>
>I wish I can find some help in this forum.
>
>First I have an optimization problem as follows.
>
>min f(x[1], x[2], x[3], x[4],..., x[99], x[100])
>s.t. h(x[1], x[2], x[3], x[4],..., x[99], x[100]) = 0;
> g-<g(x[1], x[2], x[3], x[4],..., x[99], x[100]) <g+;
> x-<x[i]<x+, i =1, 2, 3,..., 100;
>
>This can be solved by interior-point method.
>
>However suppose that there is a new constraint on x now.
>sum(k(x[i],x[i+1]))<=50; i = 1, 2, 3,...99;
>where k(x[i],x[i+1])=0 if x[i]~=x[i+1] and k(x[i],x[i+1])=0 if
>x[i]==x[i+1]
something is a misprint here
maybe you meant "=1" if x[i] not= x[i+1]
? no x[i] should currently change by more than 50 or the total sum?
anyway: a discontinuous constraint like your cannot be used within
nonlinear optimizeers which not only assume continuity but even
C2 - smoothness (otherwise they might terribly fail)
if you want to avoid a too large change in the current x[i]
- whatever its value might be in the given bounds - then you
could do this only by going into the code:
an trust region optimizer would allow this by setting the maximum
trust region radius -
or you could for example try
sqrt ( sum( (x[i]-x[i+1])^2 ) ) <= 50
this is also unsmooth by only on the diagonal in R^n, so its not quite
probable that this will have a bad influence
>
>The physical meaning of this new constraint is that we expect the
>change on x[i] is less than a constaint value, which is 50 in this
>example.
>
>How to deal with this new constraint? Can this new optimization
>problem still be solved by interior point method? Please do me a
>favour.
>
>Thanks in advance.
>
- Follow-Ups:
- References:
- how to solve this kind of optimization problem
- From: Sam
- Re: how to solve this kind of optimization problem
- From: Peter Spellucci
- Re: how to solve this kind of optimization problem
- From: Sam
- how to solve this kind of optimization problem
- Prev by Date: Re: how to solve this kind of optimization problem
- Next by Date: Re: how to solve this kind of optimization problem
- Previous by thread: Re: how to solve this kind of optimization problem
- Next by thread: Re: how to solve this kind of optimization problem
- Index(es):
Relevant Pages
|
|