Solution of variable is out of bounds

Hi,

After running my Unit Commitment model, the solution I get is out of my defined bounds. How is this possible? Has it something to do with the kind of solver I use?

I declared the bounds as follows(MaxCap = 40 and MinCap = 15):

"semiint variable

ThermalGeneration(i) ;
ThermalGeneration.up(i) = MaxCapacityGenerator;
ThermalGeneration.lo(i) = MinCapacityGenerator;"

I get this result:

LOWER LEVEL UPPER MARGINAL

1 15.000 5.000 40.000 .
2 15.000 5.000 40.000 .
3 15.000 5.000 40.000 .
4 15.000 5.000 40.000 .
5 15.000 5.000 40.000 .
6 15.000 10.000 40.000 .
7 15.000 15.000 40.000 .
8 15.000 15.000 40.000 .

The level of ThermalGeneration doesn’t correspond with the bounds. What do I wrong?

Thanks in advance


To view this discussion on the web visit https://groups.google.com/d/msg/gamsworld/-/UJxv1PJDdRgJ.
To post to this group, send email to gamsworld@googlegroups.com.
To unsubscribe from this group, send email to gamsworld+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gamsworld?hl=en.

Philippe
Did your solver returned “optimal solution found” or something like that?
Your problem may be unfeasible. Send the solver log.
Regards

2012/10/29 Philippe Delaruelle

Hi,

After running my Unit Commitment model, the solution I get is out of my defined bounds. How is this possible? Has it something to do with the kind of solver I use?

I declared the bounds as follows(MaxCap = 40 and MinCap = 15):

"semiint variable

ThermalGeneration(i) ;
ThermalGeneration.up(i) = MaxCapacityGenerator;
ThermalGeneration.lo(i) = MinCapacityGenerator;"

I get this result:

LOWER LEVEL UPPER MARGINAL

1 15.000 5.000 40.000 .
2 15.000 5.000 40.000 .
3 15.000 5.000 40.000 .
4 15.000 5.000 40.000 .
5 15.000 5.000 40.000 .
6 15.000 10.000 40.000 .
7 15.000 15.000 40.000 .
8 15.000 15.000 40.000 .

The level of ThermalGeneration doesn’t correspond with the bounds. What do I wrong?

Thanks in advance


To view this discussion on the web visit https://groups.google.com/d/msg/gamsworld/-/UJxv1PJDdRgJ.
To post to this group, send email to gamsworld@googlegroups.com.
To unsubscribe from this group, send email to gamsworld+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gamsworld?hl=en.



\

Edson Valle
edsoncv@gmail.com


To post to this group, send email to gamsworld@googlegroups.com.
To unsubscribe from this group, send email to gamsworld+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gamsworld?hl=en.

Hi,

Here my solver log:
"
— Starting compilation
— UC.gms(140) 3 Mb
— Starting execution: elapsed 0:00:00.031
— UC.gms(112) 4 Mb
— Generating RMINLP model UC
— UC.gms(123) 6 Mb
— 25 rows 49 columns 97 non-zeroes
— 0 nl-code 0 nl-non-zeroes
— 24 discrete-columns
— UC.gms(123) 4 Mb
— Executing CONOPT: elapsed 0:00:00.064
CONOPT 3 Jul 4, 2012 23.9.1 WEX 33924.33953 WEI x86_64/MS Windows


C O N O P T 3 version 3.15F
Copyright (C) ARKI Consulting and Development A/S
Bagsvaerdvej 246 A
DK-2880 Bagsvaerd, Denmark


Iter Phase Ninf Infeasibility RGmax NSB Step InItr MX OK
0 0 3.4000000000E+02 (Input point)
Pre-triangular equations: 0
Post-triangular equations: 2
1 0 2.9500000000E+02 (After pre-processing)
2 0 3.3437500000E+01 (After scaling)

** Feasible solution. Value of objective = 1725.00000000

Iter Phase Ninf Objective RGmax NSB Step InItr MX OK
3 3 1.7250000000E+03 0.0E+00 0

** Optimal solution. There are no superbasic variables.

— Restarting execution
— UC.gms(123) 2 Mb
— Reading solution for model UC
— Executing after solve: elapsed 0:00:00.890
— UC.gms(128) 3 Mb"

Thanks in advance!

Op maandag 29 oktober 2012 16:44:24 UTC+1 schreef Philippe Delaruelle het volgende:

Hi,

After running my Unit Commitment model, the solution I get is out of my defined bounds. How is this possible? Has it something to do with the kind of solver I use?

I declared the bounds as follows(MaxCap = 40 and MinCap = 15):

"semiint variable

ThermalGeneration(i) ;
ThermalGeneration.up(i) = MaxCapacityGenerator;
ThermalGeneration.lo(i) = MinCapacityGenerator;"

I get this result:

LOWER LEVEL UPPER MARGINAL

1 15.000 5.000 40.000 .
2 15.000 5.000 40.000 .
3 15.000 5.000 40.000 .
4 15.000 5.000 40.000 .
5 15.000 5.000 40.000 .
6 15.000 10.000 40.000 .
7 15.000 15.000 40.000 .
8 15.000 15.000 40.000 .

The level of ThermalGeneration doesn’t correspond with the bounds. What do I wrong?

Thanks in advance


To view this discussion on the web visit https://groups.google.com/d/msg/gamsworld/-/_-X2Mpg2nYEJ.
To post to this group, send email to gamsworld@googlegroups.com.
To unsubscribe from this group, send email to gamsworld+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gamsworld?hl=en.

Philippe,

You are solving the model as an RMINLP (i.e., with the integrality
constraints relaxed). So what’s the relaxation of a semi-integer
variable? Since 0 is feasible, I would say the relaxation is the
entire range [0,x.up], so the levels you show are OK.

-Steve

On Tue, Oct 30, 2012 at 8:07 AM, Philippe Delaruelle
wrote:

Hi,

Here my solver log:
"
— Starting compilation
— UC.gms(140) 3 Mb
— Starting execution: elapsed 0:00:00.031
— UC.gms(112) 4 Mb
— Generating RMINLP model UC
— UC.gms(123) 6 Mb
— 25 rows 49 columns 97 non-zeroes
— 0 nl-code 0 nl-non-zeroes
— 24 discrete-columns
— UC.gms(123) 4 Mb
— Executing CONOPT: elapsed 0:00:00.064
CONOPT 3 Jul 4, 2012 23.9.1 WEX 33924.33953 WEI x86_64/MS Windows

C O N O P T 3   version 3.15F
Copyright (C)   ARKI Consulting and Development A/S
                Bagsvaerdvej 246 A
                DK-2880 Bagsvaerd, Denmark

Iter Phase Ninf Infeasibility RGmax NSB Step InItr MX OK
0 0 3.4000000000E+02 (Input point)
Pre-triangular equations: 0
Post-triangular equations: 2
1 0 2.9500000000E+02 (After pre-processing)
2 0 3.3437500000E+01 (After scaling)

** Feasible solution. Value of objective = 1725.00000000

Iter Phase Ninf Objective RGmax NSB Step InItr MX OK
3 3 1.7250000000E+03 0.0E+00 0

** Optimal solution. There are no superbasic variables.

— Restarting execution
— UC.gms(123) 2 Mb
— Reading solution for model UC
— Executing after solve: elapsed 0:00:00.890
— UC.gms(128) 3 Mb"

Thanks in advance!

Op maandag 29 oktober 2012 16:44:24 UTC+1 schreef Philippe Delaruelle het
volgende:

Hi,

After running my Unit Commitment model, the solution I get is out of my
defined bounds. How is this possible? Has it something to do with the kind
of solver I use?

I declared the bounds as follows(MaxCap = 40 and MinCap = 15):

"semiint variable

ThermalGeneration(i) ;
ThermalGeneration.up(i) = MaxCapacityGenerator;
ThermalGeneration.lo(i) = MinCapacityGenerator;"

I get this result:

LOWER     LEVEL     UPPER    MARGINAL

1 15.000 5.000 40.000 .
2 15.000 5.000 40.000 .
3 15.000 5.000 40.000 .
4 15.000 5.000 40.000 .
5 15.000 5.000 40.000 .
6 15.000 10.000 40.000 .
7 15.000 15.000 40.000 .
8 15.000 15.000 40.000 .

The level of ThermalGeneration doesn’t correspond with the bounds. What do
I wrong?

Thanks in advance


“gamsworld” group.
To view this discussion on the web visit
https://groups.google.com/d/msg/gamsworld/-/_-X2Mpg2nYEJ.

To post to this group, send email to gamsworld@googlegroups.com.
To unsubscribe from this group, send email to
gamsworld+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/gamsworld?hl=en.



– Steven Dirkse, Ph.D. GAMS Development Corp., Washington DC Voice: (202)342-0180 Fax: (202)342-0181 sdirkse@gams.com http://www.gams.com

Philippe:



Semiint means that the variable is either zero or integer between the lower and upper bounds in .lo and .up.



When you define a RMINLP model the model is relaxed. However, the interval between .lo and .up is not a relaxation since we must include zero. The RMINLP relaxation for semiint is therefore between zero and .up.



If you solve the model as MINLP you should get more sensible results.



Note that if you really just want an integer value between .lo and .up the you should declare your variable ‘integer’.



Good luck



Arne


\

Arne Stolbjerg Drud

ARKI Consulting & Development A/S

Bagsvaerdvej 246A, DK-2880 Bagsvaerd, Denmark

Phone: (+45) 44 49 03 23, Fax: (+45) 44 49 03 33, email: adrud@arki.dk



From: gamsworld@googlegroups.com [mailto:gamsworld@googlegroups.com] On Behalf Of Philippe Delaruelle
Sent: Tuesday, October 30, 2012 1:08 PM
To: gamsworld@googlegroups.com
Subject: Re: Solution of variable is out of bounds



Hi,



Here my solver log:

"

— Starting compilation

— UC.gms(140) 3 Mb

— Starting execution: elapsed 0:00:00.031

— UC.gms(112) 4 Mb

— Generating RMINLP model UC

— UC.gms(123) 6 Mb

— 25 rows 49 columns 97 non-zeroes

— 0 nl-code 0 nl-non-zeroes

— 24 discrete-columns

— UC.gms(123) 4 Mb

— Executing CONOPT: elapsed 0:00:00.064

CONOPT 3 Jul 4, 2012 23.9.1 WEX 33924.33953 WEI x86_64/MS Windows





C O N O P T 3 version 3.15F

Copyright (C) ARKI Consulting and Development A/S

Bagsvaerdvej 246 A

DK-2880 Bagsvaerd, Denmark





Iter Phase Ninf Infeasibility RGmax NSB Step InItr MX OK

0 0 3.4000000000E+02 (Input point)

Pre-triangular equations: 0

Post-triangular equations: 2

1 0 2.9500000000E+02 (After pre-processing)

2 0 3.3437500000E+01 (After scaling)



** Feasible solution. Value of objective = 1725.00000000



Iter Phase Ninf Objective RGmax NSB Step InItr MX OK

3 3 1.7250000000E+03 0.0E+00 0



** Optimal solution. There are no superbasic variables.



— Restarting execution

— UC.gms(123) 2 Mb

— Reading solution for model UC

— Executing after solve: elapsed 0:00:00.890

— UC.gms(128) 3 Mb"



Thanks in advance!


Op maandag 29 oktober 2012 16:44:24 UTC+1 schreef Philippe Delaruelle het volgende:

Hi,



After running my Unit Commitment model, the solution I get is out of my defined bounds. How is this possible? Has it something to do with the kind of solver I use?

I declared the bounds as follows(MaxCap = 40 and MinCap = 15):



"semiint variable



ThermalGeneration(i) ;

ThermalGeneration.up(i) = MaxCapacityGenerator;

ThermalGeneration.lo(i) = MinCapacityGenerator;"



I get this result:


LOWER LEVEL UPPER MARGINAL



1 15.000 5.000 40.000 .

2 15.000 5.000 40.000 .

3 15.000 5.000 40.000 .

4 15.000 5.000 40.000 .

5 15.000 5.000 40.000 .

6 15.000 10.000 40.000 .

7 15.000 15.000 40.000 .

8 15.000 15.000 40.000 .



The level of ThermalGeneration doesn’t correspond with the bounds. What do I wrong?



Thanks in advance


To view this discussion on the web visit https://groups.google.com/d/msg/gamsworld/-/_-X2Mpg2nYEJ.
To post to this group, send email to gamsworld@googlegroups.com.
To unsubscribe from this group, send email to gamsworld+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gamsworld?hl=en.


To post to this group, send email to gamsworld@googlegroups.com.
To unsubscribe from this group, send email to gamsworld+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gamsworld?hl=en.

Thanks! Stupid mistake indeed of using the RMINLP insteed of MINLP!

Op maandag 29 oktober 2012 16:44:24 UTC+1 schreef Philippe Delaruelle het volgende:

Hi,

After running my Unit Commitment model, the solution I get is out of my defined bounds. How is this possible? Has it something to do with the kind of solver I use?

I declared the bounds as follows(MaxCap = 40 and MinCap = 15):

"semiint variable

ThermalGeneration(i) ;
ThermalGeneration.up(i) = MaxCapacityGenerator;
ThermalGeneration.lo(i) = MinCapacityGenerator;"

I get this result:

LOWER LEVEL UPPER MARGINAL

1 15.000 5.000 40.000 .
2 15.000 5.000 40.000 .
3 15.000 5.000 40.000 .
4 15.000 5.000 40.000 .
5 15.000 5.000 40.000 .
6 15.000 10.000 40.000 .
7 15.000 15.000 40.000 .
8 15.000 15.000 40.000 .

The level of ThermalGeneration doesn’t correspond with the bounds. What do I wrong?

Thanks in advance


To view this discussion on the web visit https://groups.google.com/d/msg/gamsworld/-/iMEcH8HziD8J.
To post to this group, send email to gamsworld@googlegroups.com.
To unsubscribe from this group, send email to gamsworld+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/gamsworld?hl=en.