1

Тема: Алгоритм для підбору продуктів по багатьом критеріям

Вітання. Ви ж знаєте, що я ото худну, і це включає в себе складення такого меню, котре задовольняє певним критеріям.
Мене зацікавило питання автоматичного створення подібного меню.
Нехай у нас є набір продуктів, кожен продукт має 4 характеристики:
1. Кількість грам білку на 100 грам
2. Кількість калорій на 100 грам
3. Ціна за 100 грам
4. Рекомендована денна норма споживання даного продукту
5. Відсоток можливої похибки від денної норми, як от +-10%

Завдання: з заданого списку продуктів створити меню, котре б задовольняло вказаній кількості білку, калорій, та при цьому, щоб продукти в сумі коштували якомога найменше.


Це лише для початку, тому що надалі умови можуть додаватись, адже деякі продукти погано "йдуть" одне з одним, а інші гарно. Як от - варена, товчена бульба з серделькою та салат разом йдуть добре, а риба з молоком та сиром якось не дуже.

Чи є якийсь загальний алгоритм, котрий тут можна використати, і підігнати під свої потреби, чи то лише методом перебору можна обрахувати все?

2

Re: Алгоритм для підбору продуктів по багатьом критеріям

Ну, це задача на пакування рюкзака тільки у варіанті з багатьма цільовими функціями.

Або її ще можна спробувати розглянути як задачу лінійного програмування, де маємо  змінні, що означають скільки брати кожного продукту.

В обох варіантах не всі умови можна бути представити.

Подякували: FakiNyan1

3

Re: Алгоритм для підбору продуктів по багатьом критеріям

а чому не всі умови можна буде представити?

4

Re: Алгоритм для підбору продуктів по багатьом критеріям

Бо бувають умови, які не можна представити лінійними обмеженнями. Наприклад, умова того, що точка в середині кола:

x^2 + y^2 < 5

5

Re: Алгоритм для підбору продуктів по багатьом критеріям

FakiNyan написав:

Вітання. Ви ж знаєте, що я ото худну, і це включає в себе складення такого меню, котре задовольняє певним критеріям.
Мене зацікавило питання автоматичного створення подібного меню.
Нехай у нас є набір продуктів, кожен продукт має 4 характеристики:
1. Кількість грам білку на 100 грам
2. Кількість калорій на 100 грам
3. Ціна за 100 грам
4. Рекомендована денна норма споживання даного продукту
5. Відсоток можливої похибки від денної норми, як от +-10%

Завдання: з заданого списку продуктів створити меню, котре б задовольняло вказаній кількості білку, калорій, та при цьому, щоб продукти в сумі коштували якомога найменше.


Це лише для початку, тому що надалі умови можуть додаватись, адже деякі продукти погано "йдуть" одне з одним, а інші гарно. Як от - варена, товчена бульба з серделькою та салат разом йдуть добре, а риба з молоком та сиром якось не дуже.

Чи є якийсь загальний алгоритм, котрий тут можна використати, і підігнати під свої потреби, чи то лише методом перебору можна обрахувати все?

Бо є ще фактори того яка технологічна обробка продукту, тобто треба не лише продукт враховувати а технологічний процес приготування, відповідно треба не підбирати страви а не продукти.
Також продукт не можна узагальнювати, бо привіт ГМО: в ГМО може до 30% бути різниця показники легко, та навіть в селекційних сортах не менше (ну бо те саме ГМО але довшим шляхом). Упс.. можна отримати передоз чи навпаки.
Щодо ціни знову, є нюанси, наприклад кількість відходів: наприклад брав турецьку картоплю мав мінімум, взяв українську та до біса, хоча виглядає однаково. А це впливає на реальну ціну за 100 грам.
Також є ще фактор про засвоюваність, бо можна взяти три продукти з однаковою кількістю білка по довіднику, один засвоїться відповідно за мінусом втрат при обробці, один в рази менше, а у третього цей показник варіюватиметься в залежності з чим вживатимеш. Тож ще є такий нюанс.

Тепер розумієш чому з професійним софтом який справді працює у цій сфері проблеми? Бо інфи треба до біса, так ще важко чіткий алгоритм роботи з нею скласти.

6 Востаннє редагувалося pluszz (01.12.2019 23:18:45)

Re: Алгоритм для підбору продуктів по багатьом критеріям

Думаю що для початку продукти треба поділити на категорії
1 М'ясо, гриби, риба, САЛО(дає+5 в карму і +3 довсіх характкристик після використання)
2 Молочка, сири, яйця, масло , олива то що
3 Овочі(з котрих можна готувати перші други страви), каші, макарони.
4 Овочі (на салати), закрутки, готові соуси тощо
5 Хлібобулочні вироби
6 Фрукти, горіхи

Прихований текст

Десерти

каждий продукт получає характеристики 1)калорійність2)вміст білку 3)ціна4)група сумісності
а далі сортувати

або такий спосіб https://life.pravda.com.ua/society/2019/07/3/237417/