Проект "Календарный Оптимизатор" представляет собой алгоритм, разработанный для построения оптимального календарного плана. Алгоритм принимает на вход экспортированный JSON-файл из компонента Управления Проектами (PRJM) продукта Platform V Works::Projects (SPJ) и выдает оптимизированный план проекта, который можно загрузить обратно в исходную программу.
- Оптимизация основана на продолжительности проекта, стоимости и использовании ресурсов.
- Оптимизация может производиться одновременно по нескольким критериям.
- Возможность смешанной оптимизации с весами для продолжительности, стоимости и ресурсов.
- Для выбора оптимального плана используются несколько алгоритмов. В ответе возвращается лучший результат среди всех алгоритмов.
Алгоритм "Бандиты" представляет собой форму машинного обучения, где агент учится оптимизировать решения с течением времени. Он применен к данному проекту путем динамической корректировки распределения ресурсов на основе исторических данных для максимизации эффективности проекта.
Q-learning - это алгоритм обучения с подкреплением, используемый для принятия решений в неопределенной среде. В данном он использован для изучения и адаптации стратегий планирования проекта на основе прошлого опыта для достижения оптимальных результатов.
Simulated Annealing - это метаэвристический алгоритм оптимизации, вдохновленный процессом отжига в металлургии. Байесовская оптимизация применена для настройки его параметров эффективно. В данном проекте она помогла эффективно исследовать пространство решений для нахождения оптимальных планов проекта.
Чтобы начать использовать сервис, просто зайдите на нашу веб-страницу.
Чтобы использовать сервис Календарного Оптимизатора, выполните следующие шаги:
- Экспортируйте данные проекта из вашего компонента Управления Проектами в формате JSON.
- Загрузите JSON-файл в сервис Календарного Оптимизатора.
- Выберите критерии оптимизации (продолжительность, стоимость, использование ресурсов) и желаемые алгоритмы.
- Получите оптимизированный план проекта, созданный сервисом.
- Загрузите оптимизированный план обратно в ваш компонент Управления Проектами.
Python, Docker, TypeScript
Для запуска приложения сначала требуется скачать его исходный код с GitHub, используя Git. Убедитесь, что у вас установлен Git, следуя инструкциям для вашей операционной системы (Windows, Mac, Linux). После установки выполните следующую команду в терминале:
git clone https://github.com/karisDev/selectel-dinosaursПеред запуском приложения необходимо убедиться, что все значения переменных окружения в файле backend/.env заполнены корректно. Для этого скопируйте файл .env.example и вставьте валидные значения. Вы можете выполнить следующую команду в терминале для копирования:
bashCopy code
cp backend/.env.example backend/.env
Затем откройте файл backend/.env в текстовом редакторе и внесите необходимые значения для переменных окружения, такие как база данных, ключи API и другие конфигурационые параметры, которые могут быть необходимы для вашего приложения. После этого вы будете готовы к запуску вашего приложения.
Далее, для упрощения развертывания приложения, требуется установить Docker. Вы можете скачать и установить Docker и docker-compose с официального сайта Docker. После установки Docker выполните следующую команду в терминале, находясь в каталоге backend :
docker compose up -dЭто запустит приложение в контейнерах Docker, обеспечивая изоляцию и портативность.
После запуска приложения будет доступна техническая документация по ссылке http://<domain из .env>/docs