В сети существует много материалов из серии «ешьте то… не ешьте это… и будете здоровее». Проблема в том, что эти материалы часто противоречат друг другу, обрывочны и бессистемны. Поэтому мне стало интересно разобраться с тем, какие же всё-таки продукты включать в рацион, чтобы одновременно:

  • получать все требуемые элементы в минимально необходимых нормах,

  • не превышать безопасные нормы элементов,

  • оптимизировать меню относительно некоторого показателя, например цены, или относительной «вкусности», или др.

Такая постановка задачи соответствует задаче линейного программирования, реализация которой есть, например, в библиотеке scipy функция linprog.

Для решения этой задачи потребовались данные:

  • Матрица содержания элементов в различных продуктах, (взяты с FoodNutrients.ru)

  • Вектор минимальных значений потребления элементов в день, (собраны из различных источников, ВОЗ и т.д.)

  • Вектор максимальных значений потребления элементов в день, (собраны из различных источников, ВОЗ и т.д.)

  • Вектор цен единицы продуктов, (собраны самостоятельно, на основе цен FMCG ритейлеров)

Интерпретация параметров функции linprog для нашей задачи

linprog(c,                  #Цены продуктов
        A_ub,               #Матрица содержания элементов в продуктах
        b_ub,               #Вектор норм потребления элементов, таких что A_ub @ x <= b_ub
        bounds=(lb, ub),    #Список кортежей с парами - верхняя и нижняя граница количества продукта 
        method='highs'      #Метод оптимизации
       )

# Минимизируется скалярное произведение: 
# c @ x
# где x - искомый вектор количества продуктов

# При выполнении ограничений:
# A_ub @ x <= b_ub      Количество каждого элемента не больше требуемого (а также не меньше требуемого, см примечание ниже)
# lb <= x <= ub         Количество каждого продукта может ограничено в диапазоне от lb до ub (None - неограничено).

# Примечание:
# Условие A_ub @ x <= b_ub реализует верхнюю границу нормы (количество элементов не больше заданного). 
# Чтобы этим же условием, реализовать и нижнюю границу нормы (количество элементов не меньше заданного), 
# требуется дополнить матрицу A_ub её копией с отрицательными значениями и также 
# дополнить b_ub его копией с отрицательными значениями (т.к., если a>=b, то -a<=-b).

По итогам предварительных расчётов, стало ясно, что требуется заложить возможность использования добавок витаминов. Витамины введены в виде вырожденных продуктов, единица которых, содержит дневную норму данного витамина и больше ничего. Чтобы модель оптимизации использовала витамины в последнюю очередь, цены на них выставлены заградительно высокими. Исключение составляют Омега 3 и Фтор, на которые цены выставлены приближенные к реальности.

Расчёты показывали, что практически невозможно достичь минимально необходимой нормы по Омега 3 и не превысить нормы других элементов, используя обычные продукты. Фтор же, обычно потребляется из воды, которая везде очень разная, поэтому этот компонент также вынесен в витамины. По той же причине вода рассматривается без минералов, ведь минерализация везде может быть очень разной.

Сбалансированный дневной рацион с оптимизацией стоимости продуктов в рублях

Таблица 1. Продукты в сбалансированном дневном рационе с оптимизацией по стоимости продуктов в рублях

Из таблицы 1 видно, что стоимость сбалансированного рациона, оптимизированного по деньгам, составляет всего ~362 р, большую часть по стоимости составляют рыбные продукты.

Показатель «Удорожание оптимального рациона без продукта» говорит о том, насколько трудно заменим данный продукт, т.е. как сильно изменится стоимость сбалансированного рациона, если бы данный продукт не мог быть включён в рацион. Продукт трудно заменимый, если после его исключения, стоимость рациона сильно растёт.

Здесь, видны на первый взгляд, странные значения, без свеклы, стоимость сбалансированного рациона увеличилась бы в десятки раз! Причина - бетаин, который требуется в количестве 600 мг и который, есть в достаточной относительной концентрации, почти только в свекле (неудивительно, ведь свекла на латинском beta). Оказалось, что бетаин может синтезироваться в организме человека, например из холина, поэтому, если учитывать взаимозаменяемость элементов, то свекла не настолько безальтернативна, но модель не учитывает возможности взаимозаменяемости элементов.

Другим трудно заменимым продуктом оказался витамин Омега-3, без него стоимость сбалансированного рациона увеличилась бы на 69%, за счёт большого количества оливкового масла. Причём чтобы получить достаточно Омега-3 из оливкового масла, придётся получить слишком много мононенасыщенных жиров, что тоже нехорошо.

Разнообразить сбалансированный рацион, увеличив количество продуктов в решении и уменьшив порцию каждого из них, можно установив ограничения на максимальное количество каждого из продуктов, с помощью параметра «bounds=(lb, ub)» функции linprog. Эту опцию также можно использовать если какие-то продукты просто не нравятся. Здесь, для краткости, такие ограничения не вводились, хотя функционал позволяет.

Таблица 2. Элементы в сбалансированном дневном рационе с оптимизацией по стоимости продуктов в рублях

Из таблицы 2 видно, что количество всех элементов находится между верхней и нижней границей, т.е. рацион сбалансированный. При этом в относительном дефиците (по нижней границе нормы) такие элементы как кальций, пролин, витамины А, D и некоторые другие. В относительном избытке (по верхней границе нормы): клетчатка, селен.

Показатель «Удешевление без элемента» говорит о том, насколько трудно выполнить требования по этому элементу, т.е. насколько процентов уменьшится стоимость сбалансированного рациона, если не нужно выполнять требования по данному элементу. Так, труднее всего выполнять требования по витамину D, если бы витамин D был не нужен, то сбалансированный рацион стал бы дешевле на 32%.

В последних шести колонках показаны топ-3 продукта (и их доли), из которых получается больше всего данного элемента, при данном рационе. Так витамин А получается в основном из моркови, витамин C из капусты, витамин D из рыбных продуктов, холестерин их яиц и т.д.

Сбалансированный дневной рацион с оптимизацией по субъективной «вкусности» продуктов

В качестве цены продуктов проставлены мои субъективные оценки «невкусности» продуктов от 1 (очень вкусно) до 5 (не вкусно).

Таблица 3. Продукты в сбалансированном дневном рационе с оптимизацией по субъективной «невкусности» продуктов

Из таблицы 3 видно, что стоимость сбалансированного рациона, оптимизированного по субъективной «невкусности» продуктов, составляет ~1200 р.

Рацион сильно поменялся по сравнению с оптимальным по деньгам, появились такие продукты как арбуз, зелёный горох, творог, ламинария, ржаной хлеб, кедровый орех, оливковое масло и др.

Совпадают с предыдущим рационом только вода, свекла, форель, подсолнечное масло и добавки фтор и омега-3. Причём добавки теперь используются не на 100%, часть удаётся получить из обычных продуктов.

Таблица 4. Элементы в сбалансированном дневном рационе с оптимизацией по субъективной «невкусности» продуктов

Из таблицы 4 видно, что количество всех элементов по-прежнему находится между верхней и нижней границей, т.е. и этот рацион сбалансированный. В относительном избытке (по верхней границе нормы): сахар. Любовь к арбузам даёт о себе знать, больше половины сахара здесь из арбузов.

Источники элементов изменились, например по незаменимым аминокислотам, теперь высока роль творога и свежего гороха, а не рыбы.

Выводы

  • Достичь сбалансированного рациона не просто, но возможно. Наличие витаминов упрощает эту задачу.

  • Существует множество вариантов сбалансированных рационов, из которых можно выбирать любой, например наиболее оптимальный по некоторому интересующему критерию.

  • Каждый может аналогично рассчитать для себя сбалансированный рацион, оптимальный в интересующем аспекте, и разнообразить его введя ограничения на максимальные количества продуктов.

  • Омега-3 обычно не хватает, нужно пить её добавки.

  • Глицин обычно гораздо выше минимальной нормы во всех экспериментах, не совсем понятно зачем вообще нужны его добавки.

  • Снижение нормы калорий, сильно снижает пространство оптимальных решений, поэтому лучше больше потреблять и больше тратить калорий, чем сидеть на диете и на диване.

  • Из большого количества необходимых элементов, следует, что точные нормы по всем элементам соблюдать трудно, поэтому важно не допускать сильных, продолжительных отклонений.

Возникает предположение, что сильные дефициты элементов, могут приводить к отклонениям в пищевом поведении, например, к увеличению аппетита. Так, если в рационе много пустых калорий, то организму приходится добирать нужные элементы, увеличивая аппетит. Если это предположение верно, то сбалансированный рацион — это способ обуздать аппетит.

Заключение

Данное исследование не полное по следующим причинам:

  • Совсем не учитываются элементы НЕ необходимые, но вредные с определённой дозы, например такие как оксалаты и сотни других,

  • Не учитываются возможности организма по синтезу дефицитных элементов из избыточных элементов (например, холин -> бетаин) 

  • Включены не все необходимые элементы,

  • Используется не полный набор возможных продуктов,

  • Исходные данные, хоть и критически анализировались, но по большому счёту, взяты на веру из различных источников.

Кроме того, я не имею образования в области диетологии и не считаю себя экспертом в этой области, поэтому, полученные выводы, не должны восприниматься как руководство к действию )).

Комментарии (23)


  1. Markscheider
    08.08.2024 10:05
    +1

    Афтар, пеши исчо!!!

    Попробуйте в базу продуктов добавить льняное масло и/или льняное семя - возможно, получится отбалансироваться по Омеге.


    1. Vugluskr1
      08.08.2024 10:05

      Только если вы будете перед употреблением отжимать. Если наблюдается характерный рыбный запах - омега-3 уже повествует полностью окислилась


      1. Markscheider
        08.08.2024 10:05

        Только если вы будете перед употреблением отжимать.

        Есть win-win стратегия: жратт прямо семена льна. Масла там 40% по массе + не менее важная клетчатка и полисахариды


  1. dude_sam
    08.08.2024 10:05

    лучше больше потреблять и больше тратить калорий, чем сидеть на диете и на диване

    Hidden text


    1. sdelaypausu
      08.08.2024 10:05

      Всё в живой природе заточено под максимальное получение энергии при минимальном движении. И только человек ищет себе приключения в виде постоянной жрачки, а потом - в постоянной прокачки в тренажерке.


      1. yppro
        08.08.2024 10:05
        +1

        Этот сценарий (больше жрать, меньше двигаться) — ответ на постоянный дефицит пищи, что уже лет сто как не актуально для большинства развитых стран.

        И по той же причине не актуален миф о «разнообразном» питании. Человек эволюционно заточен на ограниченный выбор и прекрасно себя чувствует при этом, индейцы Амазонки (никогда не евшие мясо) и якуты (никогда не евшие овощей и фруктов) не дадут соврать. Миф о необходимости разнообразного питания создан маркетологами.

        Идеальный сценарий для поддержания здоровья, работоспособности и долголетия: как можно меньше есть, желательно несколько простых продуктов, двигаться как можно больше и регулярно.


        1. Markscheider
          08.08.2024 10:05
          +1

          Миф о необходимости разнообразного питания создан маркетологами.

          Цинга, ксерофтальмия

          Врачи продолжат этот список


          1. yppro
            08.08.2024 10:05

            Цинга, ксерофтальмия

            Врачи продолжат этот список

            1) Вы не поняли, я не про монодиету. Я про то, что для нормальной жизнедеятельности не нужен список как у автора статьи, достаточно 10-15 продуктов.

            2) Насчёт цинги. Народы Севера живут на хронической нехватке витамин-C-содержащих продуктов. Цинги у них нет. Что врачи говорят об этом? Разводят руками? Я объясню. Единственный источник аскорбинки у якутов — ягоды, которые зимой не растут. То есть, достаточно летом поесть ягод, чтобы хватило на год. Это к вопросу о добавках и пр.

            3) Я больше про то, что живут столетиями (или дольше) целые народы, у которых нет вот этого «500 грамм свежих овощей в день». И всё нормально у них с холестерином, с сахаром, с сердечно-сосудистыми. Как так?


        1. Denev
          08.08.2024 10:05

          Человек эволюционно заточен на ограниченный выбор и прекрасно себя чувствует при этом, индейцы Амазонки (никогда не евшие мясо) и якуты (никогда не евшие овощей и фруктов) не дадут соврать. 

          Тут дело в том, что предки этих людей в течении многих тысяч лет придерживались определенной диеты и тем кому она совсем не подходила, скажем мягко, не прошли естественный отбор. Распространять подобный опыт на все человечество не стоит. Потом, не забывайте, что еще, например, в конце XIX века в Российской империи средняя продолжительность жизни была около 30 лет https://istmat.org/node/81 , во многом как раз потому, что недоедание (периодически переходящее в голод) для большей части населения было нормой. И такое положение дел в, в целом, было нормой для традиционных обществ. Потом, я конечно не этнограф, и если на крайнем севере действительно будут очевидные проблемы с выращиванием съедобных растений, то почему в бассейне Амазонки нельзя охотится или ловить рыбу?


          1. yppro
            08.08.2024 10:05

            Тут дело в том, что предки этих людей в течении многих тысяч лет придерживались определенной диеты

            Это так не работает. Синтез коллагена идёт одинаково, что у чукчей, что у папуасов. Значит, витамин С должен поступать с пищей. Но одни его едят раз в год, вторые — значительно чаще. Цинги нет ни у тех, ни у других.

            в конце XIX века в Российской империи средняя продолжительность жизни была около 30 лет https://istmat.org/node/81 , во многом как раз потому, что недоедание (периодически переходящее в голод) для большей части населения было нормой.

            В этом больше заслуга медицины.

            И такое положение дел в, в целом, было нормой для традиционных обществ.

            Живущие 65-80 лет хадха с вами не согласны.

            почему в бассейне Амазонки нельзя охотится или ловить рыбу?

            Я тоже не этнограф, но насколько я понял, традиции местами сильнее. Деды маис перетирали, и мы так будем. Есть племена, просто не имеющие доступа к водоёмам, территориальный вопрос у них — это серьёзно.


          1. yppro
            08.08.2024 10:05

            Тут дело в том, что предки этих людей в течении многих тысяч лет придерживались определенной диеты

            Это так не работает. Синтез коллагена идёт одинаково, что у чукчей, что у папуасов. Значит, витамин С должен поступать с пищей. Но одни его едят раз в год, вторые — значительно чаще. Цинги нет ни у тех, ни у других.

            в конце XIX века в Российской империи средняя продолжительность жизни была около 30 лет https://istmat.org/node/81 , во многом как раз потому, что недоедание (периодически переходящее в голод) для большей части населения было нормой.

            В этом больше заслуга медицины и гигиены.

            И такое положение дел в, в целом, было нормой для традиционных обществ.

            Живущие 65-80 лет хадза с вами не согласны.

            почему в бассейне Амазонки нельзя охотится или ловить рыбу?

            Я тоже не этнограф, но насколько я помню, традиции местами сильнее. Деды маис перетирали, и мы так будем. Есть племена, просто не имеющие доступа к водоёмам, территориальный вопрос у них — это серьёзно. Конкистадоры ещё удивлялись, что местные вообще не знают мяса/рыбы/птицы/молока. Сейчас это на амарантовые списывают, но как с незаменимыми аминокислотами быть — неясно.


  1. CBET_TbMbI
    08.08.2024 10:05
    +5

    Как математическая задача неплохо, но с практической точки зрения ерунда.

    Как мне эти все граммы есть? Они не складываются в блюда. Горох, мука, масло, кокос... Что из этого приготовить можно? Или просто ложечку муки и масла надо съесть?

    К тому же какая свёкла? Сырая? Варёная?


    1. Markscheider
      08.08.2024 10:05
      +1

      Как мне эти все граммы есть? Они не складываются в блюда

      А это уже следующий челлендж. Грузим базу рецептов блюд с ингредиентами и матчим с дневным потреблением продуктов


    1. JHD
      08.08.2024 10:05
      +2

      Конкретно по этим таблицам не скажу, но для себя делал похожее. На неделю считался необходимый объем элементов и примерная корзина, котораякорректировалась в ту или иную сторону с учетом необходимых элементов и желания/не желания готовить.

      Условно на неделю пол кило куры, пол пачки гречки, 2кг овощей, тунец, дюжина яиц, сколько-то хлеба, сметана, четверть пачки масла итд. Что в холодильнике есть - то готовим.

      Тут надо заметить что хоть какую-то готовку надо уметь до планирования. Как соблюдать хотя бы базовый бжу без готовки - ну только нанимая домработницу которая готовить будет видимо.


      1. jorgvonfrundsberg
        08.08.2024 10:05

        тунец

        Ну-ну, если организму нужно побольше ртути, кадмия, мышьяка, свинца - самое то брать рыб из вершины пищевой цепочки )))


        1. JHD
          08.08.2024 10:05
          +2

          Чтобы превысить дозу свинца - надо есть килограммы тунца каждый день. Ртути - даже в самых плохих случаях - две банки в неделю, в среднем 4. Умереть можно и от чистой воды, если употреблять в неразумных объемах.


          1. jorgvonfrundsberg
            08.08.2024 10:05

            Просто перед глазами история одноклассницы жены, ставшей женой , кажется, второго секретара посольства РФ в Японии в 90х. Рубала сашими каждый день несколько лет, итог - почечная недостаточность, при расширенной диагностике - превышение нормы по ртути почти в 4 раза.


            1. JHD
              08.08.2024 10:05

              ну так и от баранины каждый день сердце отвалится, и от грейпфруктов каждый день уже забыл с чем проблемы, и яйца с курицей каждый день нельзя, и уж тем более если одни макароны есть помереть быстрее можно. Зачем так демонизировать конкретно тунца в таком случае? Учитывая тему статьи по оптимизации бжу и бюджетов - он вполне встраивается в решение задачи. Хотя конечно лосося было бы вкуснее.


              1. anonym0use
                08.08.2024 10:05

                и яйца с курицей каждый день нельзя

                Почему ? А что можно?)


                1. Markscheider
                  08.08.2024 10:05

                  Рекомендации минздравов от страны к стране различаются, но 5 яиц в неделю вроде все разрешают.

                  Что не так с курой - хз. Железа в ней маловато, да, в остальном белóк как белóк.


  1. LinkToOS
    08.08.2024 10:05
    +5

    Тут надо от обратного. Ежедневно вбиваешь в программу все что съел за день. В конце месяца она подсчитывает состав съеденного, и выводит предполагаемую дату смерти от недостатка (или избытка) питательных веществ.
    Лучше если программа будет типа "черный ящик". Никаких подсказок, какие именно вещества в недостатке или переизбытке. Так прикольнее.


  1. Format-X22
    08.08.2024 10:05
    +3

    Как-нибудь придёт время и я свою такую статью напишу. Но у меня практическая табличка с формулами и результатом в -38кг и поднятием выносливости. Есть о чем рассказать, с практическим применением.


  1. avshkol
    08.08.2024 10:05
    +1

    Для такой оптимизации нужно накопление огромной статистики по каждому продукту и веществу (недостаток и переизбыток). Думаю, человечество понемногу ее накопит и появятся программы, оптимизирующие набор блюд на каждый день (условно, сегодня предлагаю тебе вот это и это за столько либо это и это за столько), которые привезет робот-доставщик и приготовят роборуки, которыми оборудована робокухня.