Apps

Mpec Examples

Apps.MpecExamples History

Show minor edits - Show changes to output

July 20, 2017, at 01:49 AM by 144.5.226.51 -
Changed lines 225-227 from:
* Mojica, J.L., Petersen, D.J., Hansen, B., Powell, K.M., Hedengren, J.D., Optimal Combined Long-Term Facility Design and Short-Term Operational Strategy for CHP Capacity Investments, Energy, Vol 118, 1 January 2017, pp. 97–115. [[http://www.sciencedirect.com/science/article/pii/S036054421631814X|Article]]
to:
!!!! Reference

Mojica, J.L., Petersen, D.J., Hansen, B., Powell, K.M., Hedengren, J.D., Optimal Combined Long-Term Facility Design and Short-Term Operational Strategy for CHP Capacity Investments, Energy, Vol 118, 1 January 2017, pp. 97–115. [[http://www.sciencedirect.com/science/article/pii/S036054421631814X|Article]]
July 20, 2017, at 01:49 AM by 144.5.226.51 -
Changed lines 223-225 from:
----
to:
----

* Mojica, J.L., Petersen, D.J., Hansen, B., Powell, K.M., Hedengren, J.D., Optimal Combined Long-Term Facility Design and Short-Term Operational Strategy for CHP Capacity Investments, Energy, Vol 118, 1 January 2017, pp. 97–115. [[http://www.sciencedirect.com/science/article/pii/S036054421631814X|Article]]
July 20, 2017, at 01:47 AM by 144.5.226.51 -
Changed line 39 from:
! SIGN function as an Object
to:
! SIGN function MPEC as an Object
Changed line 90 from:
! ABS function as an Object
to:
! ABS function MPEC as an Object
Added line 145:
! MIN function MPEC as an Object
Added line 202:
! MAX function MPEC as an Object
July 20, 2017, at 01:46 AM by 144.5.226.51 -
Changed line 39 from:
! SIGN function with Object
to:
! SIGN function as an Object
Changed line 90 from:
! MPEC formulation for ABS function using an object
to:
! ABS function as an Object
Added lines 199-220:

(:html:)<font size=2><pre>
Objects
  f = max
End Objects

Connections
  f.x[1] = x1
  f.x[2] = x2
  f.y = y
End Connections

Parameters
  x1 = -2
  x2 =  4
End Parameters

Variables
  y
End Variables
</pre></font>(:htmlend:)

July 20, 2017, at 01:43 AM by 144.5.226.51 -
Added lines 143-164:

(:html:)<font size=2><pre>
Objects
  f = min
End Objects

Connections
  f.x[1] = x1
  f.x[2] = x2
  f.y = y
End Connections

Parameters
  x1 = -2
  x2 = -1
End Parameters

Variables
  y
End Variables
</pre></font>(:htmlend:)

July 20, 2017, at 01:41 AM by 144.5.226.51 -
Added lines 36-57:


(:html:)<font size=2><pre>
! SIGN function with Object
Objects
  f = sign
End Objects

Connections
  f.x = x
  f.y = y
End Connections

Parameters
  x = -2
End Parameters

Variables
  y
End Variables
</pre></font>(:htmlend:)

July 20, 2017, at 01:37 AM by 144.5.226.51 -
Changed lines 45-46 from:
!    y = x if the corresponding element of X is greater than zero
!    y = -x if the corresponding element of X is less than zero
to:
!    y = x if the corresponding element of X is > than zero
!    y = -x if the corresponding element of X is < than zero
July 20, 2017, at 01:37 AM by 144.5.226.51 -
Changed lines 68-72 from:
! MPEC formulation for ABS function
! y = ABS(x) returns a value y, where:
!    y = x if the corresponding element of X is greater than zero
!    y = -x if the corresponding element of X is less than zero
! this uses the APMonitor object 'abs'
to:
! MPEC formulation for ABS function using an object
Changed lines 71-72 from:
to:
End Objects
Changed lines 76-77 from:
to:
End Connections
Changed lines 80-81 from:
to:
End Parameters
Added line 84:
End Variables
Deleted line 85:
July 20, 2017, at 01:22 AM by 144.5.226.51 -
Changed lines 47-66 from:
Model abs
  Parameters
    x = -2
  End Parameters

  Variables
 
  y

    s_a >
= 0
    s_b >= 0
  End Variables

  Equations
 
   ! test abs operator, y = abs(x)
    x = s_b - s_a
    y = s_a + s_b

    minimize s_a*s_b
  End Equations
End Model
to:
Parameters
  x = -2
End Parameters

Variables
  y

  s_a >= 0
  s_b >= 0
End Variables

Equations
  ! test abs operator, y = abs(x)
  x = s_b - s_a
  y = s_a + s_b

  minimize s_a*s_b
End Equations
Added lines 66-87:

(:html:)<font size=2><pre>
! MPEC formulation for ABS function
! y = ABS(x) returns a value y, where:
!    y = x if the corresponding element of X is greater than zero
!    y = -x if the corresponding element of X is less than zero
! this uses the APMonitor object 'abs'
Objects
  f = abs

Connections
  f.x = x
  f.y = y

Parameters
  x = -2

Variables
  y
</pre></font>(:htmlend:)

March 06, 2010, at 09:44 AM by 206.180.155.75 -
Changed line 11 from:
(:html:)<font size=1><pre>
to:
(:html:)<font size=2><pre>
Changed line 42 from:
(:html:)<font size=1><pre>
to:
(:html:)<font size=2><pre>
Changed line 74 from:
(:html:)<font size=1><pre>
to:
(:html:)<font size=2><pre>
Changed line 108 from:
(:html:)<font size=1><pre>
to:
(:html:)<font size=2><pre>
Changed line 136 from:
----
to:
----
October 09, 2009, at 06:13 PM by 158.35.225.227 -
Changed line 3 from:
Mathematical Programs with Equilibrium Constraints (MPECs) are formulations that can be used to model certain classes of discrete events.  MPECs can be more efficient than solving mixed integer formulations of the optimization problems.
to:
Mathematical Programs with Equilibrium Constraints (MPECs) are formulations that can be used to model certain classes of discrete events.  MPECs can be more efficient than solving mixed integer formulations of the optimization problems because it avoids the combinatorial difficulties of searching for optimal discrete variables.
October 09, 2009, at 06:12 PM by 158.35.225.227 -
Changed line 3 from:
Mathematical Programs with Equilibrium Constraints (MPECs) are formulations that can be used to model certain classes of discrete events.  MPECs can be more efficient than solving mixed integer problems.
to:
Mathematical Programs with Equilibrium Constraints (MPECs) are formulations that can be used to model certain classes of discrete events.  MPECs can be more efficient than solving mixed integer formulations of the optimization problems.
October 09, 2009, at 06:10 PM by 158.35.225.227 -
Changed line 16 from:
Model signum
to:
Model sign
Changed line 47 from:
Model signum
to:
Model abs
Changed line 96 from:
   y = x1 + s_a
to:
   y = x1 - s_a
September 25, 2009, at 03:01 AM by 206.180.155.75 -
Added lines 75-134:
! MPEC formulation for MIN function
! y = MIN(x1,x2) returns a value y, where:
!    y = x1 if x1 < x2
!    y = x2 if x2 < x1
Model signum
  Parameters
    x1 = -2
    x2 = -1
  End Parameters

  Variables
    y

    ! slack variables
    s_a >= 0
    s_b >= 0
  End Variables

  Equations
    ! test min operator, y = min(x1,x2)
    x2 - x1 = s_b - s_a
    y = x1 + s_a

    minimize s_a*s_b
  End Equations
End Model
</pre></font>(:htmlend:)
----

!!! Maximum Selector (MAX) Operator

* %list list-page% [[Attach:max.apm | MAX Operator Example]]

(:html:)<font size=1><pre>
! MPEC formulation for MAX function
! y = MAX(x1,x2) returns a value y, where:
!    y = x1 if x1 > x2
!    y = x2 if x2 > x1
Model signum
  Parameters
    x1 = -2
    x2 = 4
  End Parameters

  Variables
    y

    ! slack variables
    s_a >= 0
    s_b >= 0
  End Variables

  Equations
    ! test max operator, y = max(x1,x2)
    x2 - x1 = s_a - s_b
    y = x1 + s_a

    minimize s_a*s_b
  End Equations
End Model
September 25, 2009, at 02:51 AM by 206.180.155.75 -
Added lines 41-72:

(:html:)<font size=1><pre>
! MPEC formulation for ABS function
! y = ABS(x) returns a value y, where:
!    y = x if the corresponding element of X is greater than zero
!    y = -x if the corresponding element of X is less than zero
Model signum
  Parameters
    x = -2
  End Parameters

  Variables
    y

    s_a >= 0
    s_b >= 0
  End Variables

  Equations
    ! test abs operator, y = abs(x)
    x = s_b - s_a
    y = s_a + s_b

    minimize s_a*s_b
  End Equations
End Model
</pre></font>(:htmlend:)
----

!!! Minimum Selector (MIN) Operator

* %list list-page% [[Attach:min.apm | MIN Operator Example]]
September 25, 2009, at 02:45 AM by 206.180.155.75 -
Changed lines 7-14 from:
!!! MPEC examples

----

!!!! SIGN Operator

* %list list-page% [[Attach:sign.apm | Download
SIGN Operator Example]]
to:
!!! SIGN Operator

* %list list
-page% [[Attach:sign.apm | SIGN Operator Example]]
Deleted line 35:
Added lines 38-44:
!!! Absolute Value (ABS) Operator

* %list list-page% [[Attach:abs.apm | ABS Operator Example]]

(:html:)<font size=1><pre>
</pre></font>(:htmlend:)
----
September 25, 2009, at 02:41 AM by 206.180.155.75 -
Changed lines 9-13 from:
* %list list-page% [[Attach:sign.apm | SIGN Operator]]
to:
----

!!!! SIGN
Operator

* %list list-page% [[Attach:sign.apm | Download SIGN Operator Example
]]
September 25, 2009, at 02:39 AM by 206.180.155.75 -
Deleted lines 10-11:
----
Changed lines 12-13 from:

</pre></font>(:htmlend:)
to:
! MPEC formulation for SIGN function
! y = SIGN(x) returns a value y, where:
!    1 if the corresponding element of X is greater than zero
!  -1 if the corresponding element of X is less than zero
Model signum
  Parameters
    x = -2
  End Parameters

  Variables
    y >= -1, <= 1

    s_a >= 0
    s_b >= 0
  End Variables

  Equations
    ! test sign operator, y = sign(x)
    x = s_b - s_a

    minimize s_a*(1+y) + s_b*(1-y)
  End Equations
End Model
</pre></font>(:htmlend:)

----

September 24, 2009, at 04:15 AM by 206.180.155.75 -
Added lines 1-15:
!! MPEC: Mathematical Programs with Equilibrium Constraints

Mathematical Programs with Equilibrium Constraints (MPECs) are formulations that can be used to model certain classes of discrete events.  MPECs can be more efficient than solving mixed integer problems.

----

!!! MPEC examples

* %list list-page% [[Attach:sign.apm | SIGN Operator]]

----

(:html:)<font size=1><pre>

</pre></font>(:htmlend:)