Como ficaria o algoritmo ?!

Boa tarde Galera!
Será que alguém pode me dar uma luz na seguinte situação:
Tenho um cadastro de alimentos, com suas características: Proteínas, Calorias, Gorduras Saturadas, Lipídios, etc
Com base nesse cadastro de alimentos, eu teria que elaborar um cardápio. Receberia como parâmetros as quantidades mínimas e máximas de cada propriedade (Proteínas, Calorias, Gorduras Saturadas, Lipídios, etc), porém, não estou conseguindo chegar ao algoritmo para fazer isso…
Será que alguém pode me dar uma idéia ?

Obrigado

DRauber :lol:

Já tentou alguma coisa?

[quote=pvrsouza]Já tentou alguma coisa?
[/quote]

Na verdade ainda não. Fiz alguns rascunhos(em papel mesmo)… mas nada minimamente satisfatório.

Obrigado

DRauber

hummm…

Tenta e posta!

Isso ajuda o pessoal a lhe ajudar.

Abraçso!

[quote=douglasrauber]
Boa tarde Galera!
Será que alguém pode me dar uma luz na seguinte situação:
Tenho um cadastro de alimentos, com suas características: Proteínas, Calorias, Gorduras Saturadas, Lipídios, etc
Com base nesse cadastro de alimentos, eu teria que elaborar um cardápio. Receberia como parâmetros as quantidades mínimas e máximas de cada propriedade (Proteínas, Calorias, Gorduras Saturadas, Lipídios, etc), porém, não estou conseguindo chegar ao algoritmo para fazer isso…
Será que alguém pode me dar uma idéia ?

Obrigado

DRauber :lol: [/quote]

Não é tão trivial assim; parece ser um problema de programação linear (apesar do nome, não tem nada a ver com “programação”.).

[quote=entanglement][quote=douglasrauber]
Boa tarde Galera!
Será que alguém pode me dar uma luz na seguinte situação:
Tenho um cadastro de alimentos, com suas características: Proteínas, Calorias, Gorduras Saturadas, Lipídios, etc
Com base nesse cadastro de alimentos, eu teria que elaborar um cardápio. Receberia como parâmetros as quantidades mínimas e máximas de cada propriedade (Proteínas, Calorias, Gorduras Saturadas, Lipídios, etc), porém, não estou conseguindo chegar ao algoritmo para fazer isso…
Será que alguém pode me dar uma idéia ?

Obrigado

DRauber :lol: [/quote]

Não é tão trivial assim; parece ser um problema de programação linear (apesar do nome, não tem nada a ver com “programação”.).

http://en.wikipedia.org/wiki/Linear_programming[/quote]

Simples com certeza não é… mas agora já tenho um nome para poder pesquisar.

Obrigado.

Dica: a menos que você queira bolar rações humanas (argh - http://belezaesaude.dae.com.br/racao-humana/ ), é melhor você também ter uma base com receitas. Por exemplo, uma porção de feijão cozido contém 10 g de proteínas, 300 calorias, 5 g de gorduras saturadas etc. Então você tenta combinar as porções entre si, não exatamente os ingredientes.

1 porção de arroz + 1 porção de feijão + 1 bife + … + 1 porção de torresminho = … bla bla bla

[quote=entanglement]Dica: a menos que você queira bolar rações humanas (argh - http://belezaesaude.dae.com.br/racao-humana/ ), é melhor você também ter uma base com receitas. Por exemplo, uma porção de feijão cozido contém 10 g de proteínas, 300 calorias, 5 g de gorduras saturadas etc. Então você tenta combinar as porções entre si, não exatamente os ingredientes.

1 porção de arroz + 1 porção de feijão + 1 bife + … + 1 porção de torresminho = … bla bla bla

[/quote]

Obrigado pela dica entanglement!

Vou pesquisar sobre programação linear… Se você ou algum outro amigo da lista tiver mais dicas, estou receptivo.
Mas já vi que é bem “complicadinho”!!

Eu não gostaria de receber um cardápio automático, até porque existem coisas que não combinam entre si (pelo menos para nosso paladar brasileiro :slight_smile: ). Em vez disso, eu bolaria algo que tivesse uma lista do tipo “arrasta e solta”, mais ou menos assim:

No lado esquerdo - uma lista das receitas (por exemplo, filé à parmegiana, arroz à piemontesa etc.), agrupadas em pratos quentes, frios, sobremesas, saladas, sopas etc.
No lado direito - o cardápio montado. Abaixo - a quantidade já acumulada das calorias, proteínas e outras coisas, além do custo (é claro - não é porque salmão com amêndoas é saudável que deve aparecer no cardápio todo dia, não?)

Uma coisa interessante é indicar na receita a época do ano ela pode ser preparada. Por exemplo, uma receita com alcachofras só pode aparecer em uma determinada época do ano. Fora dessa época, alcachofra só importada. Aí você pode deixar essas receitas em cinza, se estiver fora dessa época, para que a pessoa evite sugerir tais receitas fora de época.

Consulte sua nutricionista - você deve conhecer alguma, não?

[quote=entanglement]Eu não gostaria de receber um cardápio automático, até porque existem coisas que não combinam entre si (pelo menos para nosso paladar brasileiro :slight_smile: ). Em vez disso, eu bolaria algo que tivesse uma lista do tipo “arrasta e solta”, mais ou menos assim:

No lado esquerdo - uma lista das receitas (por exemplo, filé à parmegiana, arroz à piemontesa etc.), agrupadas em pratos quentes, frios, sobremesas, saladas, sopas etc.
No lado direito - o cardápio montado. Abaixo - a quantidade já acumulada das calorias, proteínas e outras coisas, além do custo (é claro - não é porque salmão com amêndoas é saudável que deve aparecer no cardápio todo dia, não?)

Uma coisa interessante é indicar na receita a época do ano ela pode ser preparada. Por exemplo, uma receita com alcachofras só pode aparecer em uma determinada época do ano. Fora dessa época, alcachofra só importada. Aí você pode deixar essas receitas em cinza, se estiver fora dessa época, para que a pessoa evite sugerir tais receitas fora de época.

Consulte sua nutricionista - você deve conhecer alguma, não?[/quote]

Hehehe, realmente, a idéia é baseada no estoque de produtos. E o lance do arrastar e soltar também quero fazer. Mas o sistema deve sugerir um cardápio, e permitir que o usuário arraste algum prato/alimento para dentro ou para fora do cardápio. Ah… também deverá poder mudar quantidades, não apenas remover/adicionar itens.

Na verdade a idéia surgiu em uma conversa com uma nutricionista. Aí fiquei curioso sobre como o sistema poderia ajudar nesse caso…

Abraços!

uma sugestão boa e vc colocar a opção do cliente digitar a caloria minima do alimento por exemplo o fulano quer um prato com 300 calorias no maximo…
caloria e o mais importante como ngn quer ficar gordão… o resto o cliente não vai nem colocar…
então o sistema der opções de pratos prontos ou de drag and drop com base de componentes que não ultrapassem esta quantia de caloria…

obvio que para isto vc tera que usar um bocado de linear programing e tbm de IA…

coisas que geralmente se aprendem no meio academico em uma boa faculdade de Ciencia da Computação…
dai ainda vem neguinho aqui e diz que faculdades são inuteis e quem tem diploma é burro…

CRUD qualquer mane aprende a fazer…
agora problemas deste tipo dai quero ver…

Outra opção seria deixar o cliente cadastrar os cardápios. E o sistema só achar os cardápios que podem ser preparados com os itens do estoque, ou dentro de certos critérios (calorias, ausência de determinado componente, preferências de vegetais, etc).

Pois é… tem esta tbm… se não tiver ingrediente X qual o outro ingrediente a ser usado para subistituir X… e acho que ninguem iria gostar de receber um prato com: repolho, azeite, oleo, farofa, catchup e mostarda, choio, açucar, doce de leite e pimenta como sujestão… sendo assim o sistema tem que ter inteligencia o suficiente para classificar items e ingredientes que se combinam em base no que o cliente solicitou…

Por ausência eu queria dizer “quero uma receita sem camarão”. Independente do item ter em estoque. É que muitas pessoas são alérgicas a determinadas substâncias, como é o meu caso, com camarões.