Об этом проекте

decisionrl — это библиотека обучения с подкреплением, специально созданная для задач операционного принятия решений, таких как ценообразование, управление запасами, диспетчеризация энергии, управление очередями и оптимизация цепочек поставок. В отличие от универсальных фреймворков RL, ориентированных на игры и робототехнику, decisionrl поставляет каждую прикладную задачу как среду первого класса в паре с классическим бейзлайном исследования операций, поэтому обученную политику можно сравнивать со стандартным методом, а не просто утверждать, что она хороша. Библиотека предоставляет 31 алгоритм, охватывающий табличные методы (Q-Learning, SARSA, Expected SARSA, Dyna-Q), глубокий RL на основе ценности (DQN, Rainbow, C51, QR-DQN), методы актор-критик (PPO, A2C, TRPO, GRPO, IMPALA, Recurrent PPO), непрерывное управление (DDPG, TD3, SAC, SACDiscrete), офлайн-RL (TD3+BC, IQL, CQL, Decision Transformer), подходы на основе моделей (MBPO, Dreamer, DreamerRSSM), обучение с целевыми состояниями (HER+DQN) и имитационное обучение (Diffusion Policy). Каждый агент предоставляет единый интерфейс predict/learn/save/load независимо от того, табличный он или глубокий, дискретный или непрерывный, on-policy или off-policy. Ядро слабо зависит от внешних библиотек: среды, классические бейзлайны и решатели — чистый NumPy, а PyTorch — необязательная надстройка, нужная только алгоритмам, которые обучаются. Встроенные среды включают GridWorld, CartPole, Pendulum, PointMass и бандитов, что позволяет проводить сквозное обучение без дополнительных установок. Среды Gymnasium доступны как опция. Прикладные среды охватывают нестационарные запасы с дрейфующим спросом, двухуровневые цепочки поставок, управление очередями, управление батареями микросетей, термостат/HVAC, стационарные запасы, динамическое ценообразование и совместное ценообразование с запасами. Каждая включает лучший фиксированный классический бейзлайн, найденный поиском, а не наивный дефолт. Результаты показывают, что обученная политика превосходит классический бейзлайн на нестационарных задачах (например, примерно на 16% улучшение на дрейфующих запасах, 20% на микросети, 15% на снижении затрат в цепочке поставок) и достигает точного динамического программирования на стационарных задачах. Тематическое исследование управляет средой запасов с квартальными реальными данными потребления США с 1959 по 2009 год, показывая, что обученная политика улучшает лучший фиксированный базовый запас, потому что реальные тренды спроса не поддаются одному уровню пополнения на все эпохи. Библиотека также включает контекстные бандиты (LinUCB, линейный сэмплинг Томпсона, epsilon-greedy) для одноразовых решений, таких как ценообразование и рекомендации, RLHF и DPO на задачах управления и символьном GPT, имитационное обучение (BC, DAgger, GAIL), исследование на основе любопытства (RND, ICM), безградиентную оптимизацию (12 методов эволюции и роя с интерфейсом ask/tell плюс NeuroevolutionAgent), AlphaZero с MCTS и самоподготовкой для двух игроков с полной информацией, мета-RL (RL²) для онлайн-адаптации в распределении задач, мультиагентную самоподготовку с IPPO, распределённые акторы IMPALA, питающие центральный обучающийся V-trace, и экспорт в ONNX и TorchScript с контейнером FastAPI без torch. Интерфейс командной строки поддерживает обучение, оценку и визуализацию в реальном времени. Эксперименты можно объявлять в YAML или JSON и запускать через decisionrl run или decisionrl.config.run. Воспроизводимость обеспечивается сидируемыми ГПСЧ в Python, NumPy и PyTorch, с набором тестов более 400, покрывающих корректность компонентов (пространства, буферы, sum-tree, расписания, GAE, нормализация, сохранение/загрузка) и поведение обучения (табличные методы достигают оптимальной политики GridWorld; DQN и PPO обучают CartPole; SAC, TD3 и DDPG решают задачу PointMass). Планируемый CI-процесс ежедневно перезапускает многопосевую прикладную проверку и падает, если какой-либо результат регрессирует ниже бейзлайна. Проект лицензирован под MIT и черпает дизайн-вдохновение из CleanRL, Stable-Baselines3, Tianshou и интерфейса Gymnasium от Farama Foundation.