This is a (work in progress) highlight reel of a few of the more interesting projects I've done.

Watberry Process Improvement

This is a slightly modified version of my final exam for my course in statistical methods for process improvement (STAT 435) at the University of Waterloo. This exam provided a simulation of a manufacturing process with a (randomized) problem which was causing excess variation in the product. The goal was to diagnose the and then fix that problem. I received the department's award for being the top-performing student in this class and I absolutely loved it, so I tidied up my analysis code and added explanation from my reports.

Automatic Transportation Model Calibration at BA Group

This is the report I delievered to my supervisors and management for a project I did during my fifth co-op work term, at Toronto-area transportation consulting company BA Group. In this project, which was mainly completed on Fridays in between day-to-day modelling work, I explored methods to automatically calibrate Visum macroscopic transportation models using optimization methods.

This was quite a fun project! There was a lot of learning to do at the start – I was new to Visum, and while I was not new to optimization methods, I was new to the heuristic methods which are really necessary for this kind of complex problem. I got the chance to explore another flavour of network inverse problems, which I was first exposed to while aiding grad students in building route choice models for active transportation. I also got to dive deep into the rabbit hole of different heuristic methods and their relative strengths and weaknesses.

I think it's fair to say it was a very successful project, but it did leave me with many more questions than answers. Can we improve the performance by creating some surrogate functions? What methods could we take to prevent overfitting the model? How could we efficiently integrate meso-scale behaviour models (like delays at intersections) into this process? Could we combine this with an O-D matrix tuning procedure to get better results? (Given that the input data for the Visum model comes from an even larger regional model which may not be perfect.) And, of course, are there totally different approaches which might serve better? I would love the chance to take a stab at answering these at some point in the future.