Reoptimizing After Modifying the Objective Function (optlp4)
/*************************************************************************/
/* */
/* S A S S A M P L E L I B R A R Y */
/* */
/* NAME: optlp4 */
/* TITLE: Reoptimizing After Modifying the Objective Function (optlp4) */
/* PRODUCT: OR */
/* SYSTEM: ALL */
/* KEYS: OR */
/* PROCS: OPTLP */
/* DATA: */
/* */
/* SUPPORT: UPDATE: */
/* REF: */
/* MISC: Example 4 from the OPTLP chapter of Mathematical Programming.*/
/* */
/*************************************************************************/
data ex3;
input field1 $ field2 $ field3 $ field4 field5 $ field6;
datalines;
NAME . EX3 . . .
ROWS . . . . .
N diet . . . .
G calories . . . .
L protein . . . .
G fat . . . .
G carbs . . . .
COLUMNS . . . . .
. br diet 2 calories 90
. br protein 4 fat 1
. br carbs 15 . .
. mi diet 3.5 calories 120
. mi protein 8 fat 5
. mi carbs 11.7 . .
. ch diet 8 calories 106
. ch protein 7 fat 9
. ch carbs .4 . .
. po diet 1.5 calories 97
. po protein 1.3 fat .1
. po carbs 22.6 . .
. fi diet 11 calories 130
. fi protein 8 fat 7
. fi carbs 0 . .
. yo diet 1 calories 180
. yo protein 9.2 fat 1
. yo carbs 17 . .
RHS . . . . .
. . calories 300 protein 10
. . fat 8 carbs 10
BOUNDS . . . . .
UP . mi 1 . .
LO . fi .5 . .
ENDATA . . . . .
;
proc optlp data=ex3
presolver = none
algorithm = ps
primalout = ex3pout
dualout = ex3dout
logfreq = 0
printlevel = 0;
run;
data ex4;
input field1 $ field2 $ field3 $ field4 field5 $ field6;
datalines;
NAME . EX4 . . .
ROWS . . . . .
N diet . . . .
G calories . . . .
L protein . . . .
G fat . . . .
G carbs . . . .
COLUMNS . . . . .
. br diet 2 calories 90
. br protein 4 fat 1
. br carbs 15 . .
. mi diet 3.5 calories 120
. mi protein 8 fat 5
. mi carbs 11.7 . .
. ch diet 10 calories 106
. ch protein 7 fat 9
. ch carbs .4 . .
. po diet 1.5 calories 97
. po protein 1.3 fat .1
. po carbs 22.6 . .
. fi diet 7 calories 130
. fi protein 8 fat 7
. fi carbs 0 . .
. yo diet 1 calories 180
. yo protein 9.2 fat 1
. yo carbs 17 . .
RHS . . . . .
. . calories 300 protein 10
. . fat 8 carbs 10
BOUNDS . . . . .
UP . mi 1 . .
LO . fi .5 . .
ENDATA . . . . .
;
proc optlp data=ex4
presolver = none
basis = warmstart
primalin = ex3pout
dualin = ex3dout
algorithm = primal
primalout = ex4pout
dualout = ex4dout
logfreq = 1;
run;