Mathematical Modeling
Optimization and Simulation
Turning open-ended questions — delivery routes, energy decisions — into models that can be solved and explained.
- Python
- Optimization
- Simulation

- Year
- 2026
- Team
- Three students
- Recognition
- First Prize, 18th Huazhong Cup Mathematical Modeling Challenge
- Platform
- Python
Background
Mathematical modeling asks for a model, a solution and a convincing paper within a few days. In 2026 I worked on two such problems with my teammates: scheduling green urban deliveries for a mixed fuel and electric fleet, and deciding how a community microgrid should buy electricity and use its battery.
Challenge
Both problems were large, constrained and uncertain — and had to be answered clearly.
Scale
2,169 orders across 98 customer points, with capacities, time windows and speeds that change through the day.
Policy
A green zone closes the city centre to fuel vehicles from 8:00 to 16:00.
Change
Orders are added, cancelled or moved while deliveries are already under way.
Uncertainty
Solar output, load and prices fluctuate; buying too little means emergency power at five times the price.
Solution
Break each problem into layers, solve each layer with the right tool, and check the answer from more than one direction.
01
Layered routing
Estimate a lower bound, build the main routes, insert the remaining demand, regroup exactly, then reassign electric vehicles.
02
Policy as a constraint
The green-zone rule becomes a hard constraint; a compliance check reassigns electric vehicles without adding trips.
03
Dynamic scheduling
A general framework of insert, remove and reorder handles four kinds of events in real time while keeping the plan stable.
04
Forecast, then decide
For the microgrid: ridge-regression forecasts with quantile correction, scenario-based linear programming for the day-ahead plan, and dynamic programming for storage, updated as new forecasts arrive.


Technology
Python
Modeling, solving and visualization.
Linear programming
Day-ahead purchase plans under scenarios.
Dynamic programming
Storage control, and independent verification of results.
Heuristic search
Vehicle routing with time windows and a mixed fleet.
Ridge regression
Forecasting load, solar output and prices.
My contribution
- Team work with two teammates on both problems
- Formulating models, implementing and testing solvers in Python
- Writing the papers — assumptions, results and limitations
Reflection
Modeling taught me to make assumptions explicit. A model is only as honest as the simplifications behind it — and a deadline makes you choose them carefully.