apm/tp044.apm


If Cut/Copy and Paste fails, then click here for download.


Model tp044
! Source version 1
! Simple APM canonicalizer version 1.3
! APM backend version 1.1
Parameters
End Parameters
Variables
x_1 = 0, >= 0
x_2 = 0, >= 0
x_3 = 0, >= 0
x_4 = 0, >= 0
obj
End Variables
Intermediates
myminfun = x_1 - x_2 - x_3 - x_1*x_3 + x_1*x_4 + x_2*x_3 - x_2*x_4
myabsdevnod0_0 = abs(myminfun + 15)
myreldevnod0_0 = abs(myminfun/15 + 1)
myabsdevnod0_1 = abs(x_1)
myreldevnod0_1 = abs(x_1)
myabsdevnod0_2 = abs(x_2 - 3)
myreldevnod0_2 = abs(x_2/3 - 1)
myabsdevnod0_3 = abs(x_3)
myreldevnod0_3 = abs(x_3)
myabsdevnod0_4 = abs(x_4 - 4)
myreldevnod0_4 = abs(x_4/4 - 1)
myabsdevnod1_0 = (1/2)*(abs(myabsdevnod0_0 - myabsdevnod0_1) + (myabsdevnod0_0 + myabsdevnod0_1))
myreldevnod1_0 = (1/2)*(abs(myreldevnod0_0 - myreldevnod0_1) + (myreldevnod0_0 + myreldevnod0_1))
myabsdevnod1_2 = (1/2)*(abs(myabsdevnod0_2 - myabsdevnod0_3) + (myabsdevnod0_2 + myabsdevnod0_3))
myreldevnod1_2 = (1/2)*(abs(myreldevnod0_2 - myreldevnod0_3) + (myreldevnod0_2 + myreldevnod0_3))
myabsdevnod1_4 = myabsdevnod0_4
myreldevnod1_4 = myreldevnod0_4
myabsdevnod2_0 = (1/2)*(abs(myabsdevnod1_0 - myabsdevnod1_2) + (myabsdevnod1_0 + myabsdevnod1_2))
myreldevnod2_0 = (1/2)*(abs(myreldevnod1_0 - myreldevnod1_2) + (myreldevnod1_0 + myreldevnod1_2))
myabsdevnod2_4 = myabsdevnod1_4
myreldevnod2_4 = myreldevnod1_4
myabsdevnod3_0 = (1/2)*(abs(myabsdevnod2_0 - myabsdevnod2_4) + (myabsdevnod2_0 + myabsdevnod2_4))
myreldevnod3_0 = (1/2)*(abs(myreldevnod2_0 - myreldevnod2_4) + (myreldevnod2_0 + myreldevnod2_4))
zmyabsdevmax = myabsdevnod3_0
zmyreldevmax = myreldevnod3_0
End Intermediates
Equations
obj = myminfun
8 - x_1 - 2*x_2 >= 0
12 - 4*x_1 - x_2 >= 0
12 - 3*x_1 - 4*x_2 >= 0
8 - 2*x_3 - x_4 >= 0
8 - x_3 - 2*x_4 >= 0
5 - x_3 - x_4 >= 0
End Equations
End Model

Stephan K.H. Seidl