Проект состоит из обученной нейросети и веб-интерфейса, визуализирующего результаты ее работы.
Демострацию работы вы можете проверить по этому адресу: http://92.51.36.153:5002/
Так как в обучающий данных отсутвует label, который необходимо предсказывать, то мы используем обучение без учителя. А именно обучение с подкреплением, где веса в модели корректируеются с помощью генетического алгоритма. Генетический алгоритм в каждом поколении ищет модель, показывающую наилучшие результаты, и на основе подборки таких моделей создает более совершенные.
Как и ml-модель, серверная часть реализована на Python. Представляет собой минимальный сервер на Flask, который обрабатыевает данные из датасета (расписание поездов) и отдает клиенту рекомендации по управлениею вагонопотоком.
Реализован на чистом JS + HTML + CSS. Представляет собой минимальную визуализацию сформированного расписания.
Первый вариант в ручную.
Предупреждение. Пакет около 1 Гб, будет долго устанавливаться
git clone https://github.com/Atikin-NT/hacks-ai.git
cd hacks-ai
pip install flask, numpy, tensorflow
python .\app.py
Второй способо с помощью докер
sudo docker image build -t flask_docker .
sudo docker run -p 5000:5000 -d flask_docker
Я, как диспетчер ржд, хочу видеть, какие составы потребуется сформировать из имеющихся и приходящих на конкретную станцию вагонов.
Добавили выбор станции и отображение информации о приходящих составах.
Я, как работник станции, хочу понимать, где размещать только что отцепленные вагоны и как долго они будут храниться на станции.
Добавили отображение информации по отправлению только что отцепленных вагонов. (Время, локомотив, следующую станцию)