!  Il modello  calcola la ricetta che realizza i valori di piatti e alimenti
    calcolati dal modello 5 A minimizzando lo scostamento dai valori medi
   (fra il minimo e il massimo),
 
   in questa versione sono definite anche le pietanze non utilizzate dalla soluzione 
    del modello 5 A;
 
 
SETS:
 
 
ali/
pasta  riso pane 
fagiol  pisell 
aglio carote  cipoll lattug  melanz patate  pomodo spinac
aransu banane mele
manzo maiabi pollop vitell
procru procot
calama cefali cozze  sgombro tonno
latte  grana latter  mozzar
uova  burro  oliool
cioccf  gelato
birra  vino
/:x ;
 
 
piat/
pasbur  paspom  pasrag pascoz
risfor  riscoz  fagins   pisbur
carins  latins  melfer  patins  patbur   patfor  patfri  pure
pomins spiins  spibur  fruban  frumel
bisman  arrman  bismai  arrmai  bispol  arrpol  bisvit
prsccr  prscct
calfri  ceffri  ceffer cozfor  sgofri  sgofer  tonsca
biclat pezgra  pezlat  pezmoz
uovsod  uovfri  pezcio  copgel  bicbir   bicvin
/:z ;
 
 
ric( piat,ali)/
pasbur pasta pasbur burro  pasbur  grana
 paspom pasta paspom pomodo paspom oliool paspom aglio
 pasrag pasta pasrag burro  pasrag manzo  pasrag pomodo pasrag cipoll pasrag aglio
 pascoz pasta pascoz oliool pascoz aglio pascoz cozze
risfor riso  risfor burro risfor grana  risfor latter
 riscoz riso  riscoz  cozze  riscoz oliool  riscoz  aglio
 fagins fagiol fagins  oliool  fagins  cipoll
   pisbur pisell  pisbur  burro   pisbur procot
carins carote carins oliool
 latins lattug  latins  oliool
  melfer melanz  melfer  oliool  melfer  aglio
  patins  patate patins oliool  patins  aglio
  patbur  patate  patbur  burro
   patfor  patate
  patfri  patate patfri oliool
pure  patate   pure burro  pure latte
pomins pomodo  pomins  oliool
spiins spinac  spiins  oliool
 spibur spinac  spibur  burro  spibur aglio
 fruban banane
 frumel mele
bisman manzo bisman burro
 arrman manzo
 bismai maiabi  bismai  burro
 arrmai  maiabi
  bispol pollop  bispol burro
 arrpol pollop
 bisvit  vitell  bisvit  burro
prsccr procru
 prscct procot
calfri calama   calfri  oliool
 ceffri cefali  ceffri  oliool
  ceffer  cefali   ceffer  aglio
 cozfor cozze  cozfor oliool  cozfor  aglio
 sgofri  sgombro sgofri  oliool
 sgofer  sgombro sgofer aglio
  tonsca  tonno
biclat latte
 pezgra  grana
 pezlat latter 
 pezmoz mozzar
uovsod uova uovsod  oliool
  uovfri  uova uovfri burro
 pezcio cioccf
  copgel  gelato
 bicbir  birra 
 bicvin vino
/:rlb,rub,r,supdev,infdev;
 
 
    
    
 
ENDSETS
 
DATA:
 
! valori della soluzione del modello 5 A;
 
x=
 !pasta  riso pane;   .907    0   0
!fagiol  pisell;  0   0.4
!aglio carote  cipoll lattug;  0.2  0    0   0.798
!  melanz patate  pomodo spinac; 0   2     0.5   .581
!aransu banane mele; 0   1.2  1.2
!manzo maiabi pollop vitell;0   0   0   0
!procru procot;   0   0
!calama cefali cozze  sgombro tonno;   0   .5   0   0.5   0.4
!latte  grana latter  mozzar;  2     0     0.2   0.2
!uova  burro  oliool;   1.149    .3    0.2
!cioccf  gelato;   0.2    0.4
!birra  vino;   0.6      0.4
               ;
 
! valori della soluzione del modello 5 A;
 
z =
!pasbur  paspom  pasrag pascoz;   0   1   0   0
!risfor  riscoz  fagins   pisbur;   0   0   0   1
!carins  latins  melfer  patins;    0   1   0   0
!patbur   patfor  patfri  pure;   0   3   0   1
!pomins spiins  spibur  fruban  frumel;   0   0   1   2   2
!bisman  arrman  bismai  arrmai;  0   0    0    0
! bispol  arrpol  bisvit;   0    0   0
!prsccr  prscct;  0    0
!calfri  ceffri  ceffer cozfor  sgofri  sgofer  tonsca;   0   0   1   0   0   1   1
!biclat pezgra  pezlat  pezmoz;  3   0   1    1
!uovsod  uovfri  pezcio  copgel  bicbir   bicvin;   2   0   1   2   3   2
;
 
 
! valori minimi di alimento in ogni ricetta;
 
rlb= 
!pasbur pasta pasbur burro  pasbur  grana; .9  .1   0.1
! paspom pasta paspom pomodo paspom oliool paspom aglio;   .9   .5   0.1   0
!pasrag pasta pasrag burro  pasrag manzo  pasrag pomodo pasrag cipoll pasrag aglio;
              .9  .1  .2  .1  .1  0
!pascoz pasta pascoz oliool pascoz aglio pascoz cozze; .9  .1   .1   .4
!risfor riso  risfor burro risfor grana  risfor latter;  .9   .1   .2   .2
!riscoz riso  riscoz  cozze  riscoz oliool  riscoz  aglio;.9   .4   .1    0.1
!fagins fagiol fagins  oliool  fagins  cipoll;  .4   .1     0
!pisbur pisell  pisbur  burro   pisbur procot;  .4  .1    0
!carins carote carins oliool;  .5    .1
!latins lattug  latins  oliool;  .5   .1
!melfer melanz  melfer  oliool  melfer  aglio;   .5    .2   .1
!patins  patate patins oliool  patins  aglio;   .5   .2   0
!patbur  patate  patbur  burro;  .5   .2
!patfor  patate;  .5
!patfri  patat patfri oliool;  .4   .2
!pure  patate   pure burro  pure latte; .5   .1   .5
!pomins pomodo  pomins  oliool;  .8   .2
!spiins spinac  spiins  oliool; .5    .2
!spibur spinac  spibur  burro  spibur aglio; .3     .1    0
!fruban banane; .6
!frumel mele; .6
!bisman manzo bisman burro; .6    .1
!arrman manzo; .6
!bismai maiabi  bismai  burro; .6   .1
!arrmai  maiabi;  .6
!bispol pollop  bispol burro;   .6   .1
!arrpol pollop;   .6
!bisvit  vitell  bisvit  burro; .6  .1
!prsccr procru;  .4
!prscct procot;   .4
!calfri calama   calfri  oliool; .4   .2
!ceffri cefali  ceffri  oliool;   .5    .2
!ceffer  cefali   ceffer  aglio;  .5   .1
!cozfor cozze  cozfor oliool  cozfor  aglio;  .5    .1    .1 
!sgofri  sgombri sgofri  oliool;  .5    .1
!sgofer  sgombri sgofer aglio;   .5     .1
!tonsca  tonno; .4    
!biclat latte;  .5
!pezgra  grana;   .2
!pezlat latteri;   .2
!pezmoz mozzar;  .2
!uovsod uova uovsod  oliool;   .4    0
!uovfri  uova uovfri burro ;    .4     .2
!pezcio cioccf; .2
!copgel  gelato;  .2
!bicbir  birra;  .2 
!bicvin vino;    .2
 
;
 
 
! valori massimi di alimento in ogni ricetta;
 
rub= 
!pasbur pasta pasbur burro  pasbur  grana;  1.1  .2   .4
! paspom pasta paspom pomodo paspom oliool paspom aglio;   1.1   .7   .2   .1
!pasrag pasta pasrag burro  pasrag manzo  pasrag pomodo pasrag cipoll pasrag aglio; 
                   1.1   .3  .4  .4  .4  .2
!pascoz pasta pascoz oliool pascoz aglio pascoz cozze; 1.1  .3   .3   .6
!risfor riso  risfor burro risfor grana  risfor latter;  1.1   .2   .5   .3
!riscoz riso  riscoz  cozze  riscoz oliool  riscoz  aglio;1.1   .6   .3    .3
!fagins fagiol fagins  oliool  fagins  cipoll;  .7   .3     .3
!pisbur pisell  pisbur  burro   pisbur procot;  .7  .3    .4
!carins carote carins oliool;  .8    .3
!latins lattug  latins  oliool; .8   .3
!melfer melanz  melfer  oliool  melfer  aglio;  .8    .3   .3
!patins  patate patins oliool  patins  aglio;  .8   .3   .3
!patbur  patate  patbur  burro;  .8   .3
!patfor  patate;  .8
!patfri  patat patfri oliool;  .7   .3
!pure  patate   pure burro  pure latte; .8   .4   .9
!pomins pomodo  pomins  oliool;  1.2    .3
!spiins spinac  spiins  oliool; .7   .3
!spibur spinac  spibur  burro  spibur aglio; .6     .3    .2
!fruban banane; 1
!frumel mele; 1
!bisman manzo bisman burro; 1    .2
!arrman manzo; 1
!bismai maiabi  bismai  burro; 1   .2
!arrmai  maiabi;  1
!bispol pollop  bispol burro;   1   .2
!arrpol pollop;   1
!bisvit  vitell  bisvit  burro;  1   .2
!prsccr procru;  .6
!prscct procot;   .6
!calfri calama   calfri  oliool; .8  .3
!ceffri cefali  ceffri  oliool;   .8   .3
!ceffer  cefali   ceffer  aglio;  .8   .2
!cozfor cozze  cozfor oliool  cozfor  aglio;  .8    .2    .2 
!sgofri  sgombri sgofri  oliool;  .8    .2
!sgofer  sgombri sgofer aglio;   .8    .2
!tonsca  tonno; .7    
!biclat latte;  1.5
!pezgra  grana;   1
!pezlat latteri;  1
!pezmoz mozzar;  1
!uovsod uova uovsod  oliool;   1.3    .2
!uovfri  uova uovfri burro ;    1.2     .6
!pezcio cioccf; 1
!copgel  gelato;  1
!bicbir  birra;  2 
!bicvin vino;   2
 
;
 
 
 
 
 
ENDDATA
 
 @FOR(ali(j):  @SUM(ric(k,j):  r(k,j) * z(k) )  = x(j)  );
  @FOR(ric(k,j):@BND( rlb(k,j), r(k,j) , rub(k,j)
                    ) ;
                supdev(k,j) >  r(k,j) - (rub(k,j)+rlb(k,j))/2;
                infdev(k,j) >  (rub(k,j)+rlb(k,j))/2 - r(k,j) ;
       ); 
 
 
MIN=@SUM(ric(k,j): supdev(k,j)+infdev(k,j));