Разработка AI-системы оптимизации рецептур и составов продукции
Разработка рецептур — мультипараметрическая задача с конкурирующими целями: функциональные свойства, стоимость ингредиентов, регуляторные ограничения, сенсорные характеристики. AI находит оптимальные составы значительно быстрее экспериментального перебора.
Области применения
- Пищевая промышленность: состав продуктов питания (баланс вкус/питательность/стоимость)
- Косметика: формулы кремов, шампуней (эффективность/безопасность/сенсорика)
- Фармацевтика: твёрдые лекарственные формы, вспомогательные вещества
- Химия: покрытия, клеи, полимеры, топлива
- Строительные материалы: бетон, покрытия, герметики
Математическая постановка
Переменные: доля каждого ингредиента в рецептуре (x₁, x₂, ..., xₙ)
Ограничения:
- Σxᵢ = 1 (сумма долей = 100%)
- 0 ≤ xᵢ ≤ max_i (ограничения на максимальное содержание каждого компонента)
- Регуляторные: xₐ ≤ 0.1% (пищевые добавки), xᵦ ≥ 0.5% (минимальный ингредиент)
- Технологические: совместимость ингредиентов
Целевые функции (multi-objective):
- Минимизировать стоимость
- Максимизировать функциональные свойства (прочность, вязкость, pH)
- Соответствовать сенсорным характеристикам (вкус, консистенция)
- Минимизировать содержание нежелательных компонентов
ML-методы оптимизации рецептур
Суррогатные модели
Проблема: физическое тестирование рецептуры дорого и медленно. Surrogate ML модель предсказывает свойства состава по его компонентам:
- XGBoost/Random Forest на экспериментальных данных
- Gaussian Process (с uncertainty quantification — знаем, где неуверены)
- Deep Learning для сложных структурных зависимостей
Bayesian Optimization
Активный цикл: surrogate → acquisition function → следующий эксперимент:
- Начальный DoE: 20–50 рецептур с равномерным покрытием пространства
- Обучение GP-суррогата
- Expected Improvement выбирает следующую наиболее информативную точку
- Эксперимент → обновление суррогата
- Сходимость к оптимуму за 50–150 итераций
from bayes_opt import BayesianOptimization
import numpy as np
def formulation_score(ingredient_a, ingredient_b, ingredient_c, ingredient_d):
"""Суррогатная модель: предсказание целевых свойств"""
# Нормализация суммы ингредиентов
total = ingredient_a + ingredient_b + ingredient_c + ingredient_d
fractions = [x/total for x in [ingredient_a, ingredient_b, ingredient_c, ingredient_d]]
# ML суррогат (предобученная модель)
features = np.array(fractions).reshape(1, -1)
predicted_quality = surrogate_model.predict(features)[0]
predicted_cost = cost_model.predict(features)[0]
# Multi-objective scalarization
score = predicted_quality - 0.3 * predicted_cost
return float(score)
optimizer = BayesianOptimization(
f=formulation_score,
pbounds={
'ingredient_a': (0.05, 0.60),
'ingredient_b': (0.10, 0.45),
'ingredient_c': (0.05, 0.30),
'ingredient_d': (0.02, 0.20),
},
random_state=42
)
optimizer.maximize(init_points=20, n_iter=100)
Mixture Design + ML
Специализированный Design of Experiments для смесей: Simplex-Lattice, Simplex-Centroid, D-Optimal designs. Комбинация статистического DoE с ML-моделированием.
Учёт сырьевой вариабельности
Ингредиенты из разных партий имеют разные характеристики. Robust optimization:
- Monte Carlo симуляция вариабельности входных компонентов
- Robust formulation: хорошо работает при ±σ вариации ингредиентов
Формульная база знаний
NLP-поиск по исторической базе рецептур: "найти формулы с вязкостью 1000–2000 cP и содержанием консервантов <0.5%". Semantic search по chemical descriptions.
Substitution engine: ингредиент снят с производства → ML предлагает альтернативу с сохранением ключевых свойств.
Срок разработки: 3–5 месяцев для платформы с BO-оптимизацией и integration с LIMS (Laboratory Information Management System).







