Hey, I have a syntaxe problem with the following procedure, someone can help me? I think that it is with the objectif function. Thank you, data fooddata; infile datalines; input name $ prod $ cost prot fat carb cal Moy; datalines; Breadb B 2.5 4 1 15 90 150 Breadc C 2 4 1 15 90 212 Milkb B 4 8 5 11.7 120 0 Milkc C 3.5 8 5 11.7 120 350 Cheeseb B 12 7 9 0.4 106 20 Cheesec C 8 7 9 0.4 106 50 ; run; proc optmodel; /* declare index set */ set<str> FOOD; /* declare variables */ var diet{FOOD} >= 0; /* objective function */ num Moy{FOOD}; num cost{FOOD}; min f=(sum{i in FOOD, j=2i-1}((Moy[j]+Moy[j+1])-(diet[j]+diet[j+1]))**2)+sum{i in FOOD}cost[i]*diet[i]; /* constraints */ num prot{FOOD}; num fat{FOOD}; num carb{FOOD}; num cal{FOOD}; num min_cal, max_prot, min_carb, min_fat; con cal_con: sum{i in FOOD}cal[i]*diet[i] >= 300; con prot_con: sum{i in FOOD}prot[i]*diet[i] <= 10; con carb_con: sum{i in FOOD}carb[i]*diet[i] >= 10; con fat_con: sum{i in FOOD}fat[i]*diet[i] >= 8; /* read parameters */ read data fooddata into FOOD=[name] cost prot fat carb cal Moy; /* solve and print the optimal solution */ solve with lp/logfreq=1; /* print each iteration to log */ print diet; quit;
... View more