This is my solution for the MOPTA Competition 2025. The problem is about retraining Boeing crews to new Airbus planes. As there are a lot of specifications and restrictions, this requires a modeling approach of some sort. With this submission, there is not only an optimal result via SCIP in terms of minimizing the cost, but also an interactive Dashboard for live editing and exporting data from the optimization suite via Streamlit. For further interpretation, there are also some graphs, that display the core information of the solution found. Solutions are stored in the live session until reload.
At this time, you can also try out the live demo for this on http://mopta.hammercore.de.
# create a virtual environment
python -m venv .venv
# activate the env
source .venv/bin/activate
# install dependencies
pip install -r requirements.txt# run on port 80 in the background
streamlit run main.py --server.port 80 &
If you want to stop the server
fgand press CTRL + C
If you want to create a container for this application, you can roughly follow the steps outlined for ARM. You can also remove the forced amd architecture in the Dockerfile in the FROM statement.
Advice: The optimization algorithm benefits a lot from running on multicore machines. Consider specifying a --cpus 4 statement, to give your container more CPU acces at runtime.
# Install Docker
sudo apt install dockersudo apt install -y qemu-user-static# Create and use multi-architecture builder
docker buildx create --name multiarch --use# Build for AMD64 architecture (from ARM host)
docker buildx build --platform linux/amd64 -t mopta --load --no-cache .# Start container with AMD64 emulation
docker run --platform=linux/amd64 -p 80:8501 -d moptaDisclaimer: I do not guarantee that the solutions created by the software are always accurate and should in every case be double checked for plausibilty before any decision is made.