Laba diena,

bandau rasti dietos uždavinio klaidą, tačiau yra neaiškumų dėl
formulės teisingumo (stud2.pdf, 2.22 formulė)

stud2.pdf (2.22) tai pradinis dietos formulavimas kuris buvo 
atnaujintas ir papildytas 'slides' (sliden.pdf) formulemis 
(117)-(128), Egle savaitinei dietai naudojo formules (123)-(125)
pakeitusi nelygybe 0 =< x_i =< 2
todel tartis patogiau naudojantis  butents 'slides' formulemis

1. Ar L yra grožio faktorius t.y. nuostoliai išreikšti pinigais? L
kaip ir skonis, si, yra 10 procentų nuo kainos ci?
2. Kas yra g1? Niekaip negaliu supranti kodėl konstanta rašoma tikslo
funkcijoje ir kokia jos prasmė, ką būtent ji reiškia?

grozio ir skonio prasme skirtinga:
- skonio vienetas sumazina atitinkamo produkto skaiciuojamaja kaina 10%
todel skoni patogu keisti ribose nuo 1 iki 10 balu
- grozio vienetas ivertina nuostolius susijusius su papildoma kalorija 
(virs sanitartines normos) todel jo negalima skaiciuoti atskiriems produktams, jis dauginamas is bendro kaloriju skaiciaus minus sanitarine norma (snitarine norma uztikrina kita nelygybe, todel sis skirtumas nebus neigiamas) tai reiskia, kad grozio faktoriu patogu keisti nuo 0 iki dideles reiksmes tiems kurie labai bijon pastoreti,

       

Panagrinėjus kaip programa skaičiuoja, iš esmės lp_solve naudojamas
gerai. Pažiūrėjau dokumentaciją, kaip formuluojamas uždavinys ir
viskas atitinka. Tačiau norint rasti klaidą ar įsitikint programos
teisingumu, parodysiu pavyzdį, ką ir kaip programa skaičiuoja.

Tarkim pirmas produktas yra abrikosai ir šio produkto reikšmė pagal
programoje aprašytą formulę paskaičiuojama taip:
P = price-price·taste·tasteIndex + beauty·days·calories - diversity·isDish
P = 7.9-7.9·9.0·0.1 + 1.0·7·490 - 1.0·0 = 3430.79
Taigi, savaitei pirmam produktui gavome 3430.79. Jeigu išvesti į LP
failą, tikslo funkcijos pradžia atrodytų taip:
min:3430.7900002479555x1
Analogiškai paskaičiuojamos reikšmės visiems 138
produktams/patiekalams ir gaunami visi x, nuo x1 iki x138. O sumos,
kurių neradom, iš tikro realizuojamos ciklu, kiekvienam produktui
skaičiuojant reikšmę atskirai.

Kaip jau kalbejom grozio, faktorius pas Egle realizuotas KLAIDINGAI !

Dabar kas man asmeniškai nesuprantama skaičiavimuose:
1. Ar tikrai savaitės dienos įvertinamos skaičiuojant tik grožio
nuostolį (beauty·days·caloties)? Kaip iš tikro į bendrą formulę
įrašyti dienų skaičių?

naudojant (2.22) atsakymo nera, 
butina naudoti 'slides' formules (123)-(125)
 kur dienu skaiciu nusako T 
cia dienine kaloriju norma yra b_1 o grozio faktorius yra g
(tik gal butu logiskiau vietoj g naudoti g/T)

2.  Pagal formulę 2.22, g1 yra be kintamojo, tarsi konstanta, o
skaičiuojama tarsi būtų g1·yi, nes visos yi sudedamos įskaitant ir šią
reikšmę ir gaunama bendra yi reikšmė. Tuomet pagal 2.22 atskliaudus,
turėtų būti L·g1·yi. Taigi, kas yra g1? Ar tai "diversity·isDish", o
gal g1 gautųsi, jei "beauty·isDish"? O gal dar kitaip? Čia reiktų kiek
įmanoma aiškesnio atsakymo, kas yra formulėje ir kaip tai skaičiuojasi
programoje :)

formuleje (2.22) kiti zymejimai, todel ateity jos geriau necituoti,
pavyzdziui (2.22) g1 tai sanitarine kaloriju norma o g_i1 tai kaloriju kiekis produkte i (abi konstantos) grozio faktorius (2.22) yra L.




Labai reiktų atsakymų, nes be jų neišeina judėti toliau.

parasykit tolesnes abejones

Pagarbiai,
Saulius Sinkevičius
