Mulhouse in data · a two-minute portfolio
Deo Gratias Loutou
Computer science master's student (M1) at Université de Haute-Alsace, Mulhouse, France.
I'm looking for a work-study position (alternance) in data or R&D for 2027-2028, or an internship from May 2027 that could lead to it.
In six screens, on real data, what I can do:
- build a model from open data;
- clean, check and compare fairly;
- spot a bias before concluding;
- quantify uncertainty to make better decisions.
Scroll down ↓
1 · The city
1,678 buildings and 533 trees, rebuilt
Central Mulhouse, each building in its construction year, from France's national map database (IGN). Trees aren't in it: I detected them myself in aerial photos.
What this showsBuilding a usable model by combining several public sources.
2 · Accidents
2,164 accidents, where they happened
This is the Haut-Rhin department. Each dot is an accident with at least one person injured, recorded by the police from 2019 to 2024.
What this showsCleaning and checking: 24 national files whose format changes every year, cleaned in SQL; my death counts for France match the official figures exactly.
Source: ONISR national accident file (BAAC), data.gouv.fr.
3 · Deaths
156 fatal accidents
In red, accidents in which at least one person died within 30 days.
Haut-Rhin has 36 road deaths per million inhabitants a year, against 46 in mainland France: the 11th safest of 96 departments.
What this showsComparing fairly: rates per inhabitant, not raw totals.
4 · The trap
Too few accidents in Mulhouse
Within 3 km of the centre: 115 accidents around Mulhouse, 157 around Colmar, a smaller town. Yet Mulhouse has more fatal accidents (14 against 12).
Minor accidents are very likely under-recorded there: in this area, only deaths are a reliable indicator.
What this showsSpotting a bias: checking that the data measure what we think before drawing a conclusion.
5 · Operating rooms
Planning on history: 3 rooms out of 4 run late
One simulated day built from real operations (open VitalDB dataset): 4 rooms of 8 hours. Transparent blocks are the plan, made with each procedure's usual duration; solid blocks are what really happened. In red, overtime.
That day: 111 minutes of overtime per room on average. Over 200 simulated days: 113.
6 · Uncertainty
With learned uncertainty: 18 minutes
The same day, each operation is planned with the duration it has an 80% chance of not exceeding, learned by a model (conformalized quantile regression), then placed by an optimisation solver.
That day: 18 minutes of overtime per room, scheduling 10 operations instead of 12. Over 200 days: 19 minutes, with 88.7% of room time used.
What this showsQuantifying uncertainty and using it to optimise a decision: this is my research project.
Contact
Get in touch
Data or R&D work-study position for 2027-2028, or an internship from May 2027.
Public code and a written report for each study, including a third one on medicines reimbursed in France.