
Areas of Expertise
Statistical learning and artificial intelligence
I apply state-of-the-art ideas in machine learning and artificial intelligence to most of my projects. I use everything from random forests to deep learning, depending on the problem. Recently, I built deep autoencoders for detecting and rectifying transaction anomalies in the Government of Canada’s Public Service Pension Plan. Whether its a classification problem or a large unsupervised learning challenge, I apply the right methods to the right data.
Operations research
Many of my client problems are rooted in operations research, ranging from scheduling to queueing. I apply (approximate) dynamic programming methods to sequential decision problems, an idea which featured in my work building optimal maintenance schedules for the Royal Canadian Navy. Last year my work advised the Government of Canada’s Cabinet on optimal real estate divestment decisions. Using the government’s scorings, rankings, and geographical restrictions on real estate assets, I converted the decision problem to solving an instance of a multiple knapsack problem – a classical operations research application. Cabinet used the solution to prioritize building divestments. I occasionally write about topics in operations research and statistical inference.
Financial engineering
As part of my love of all things stochastic, I have a deep interest in derivative pricing. At National Defence, I built a suite of Value-at-Risk tools for monitoring foreign exchange exposure across major military purchases. Understanding the volatility of the Canadian dollar with respect to a basket of foreign currencies proved essential to the Assistant Deputy Minister of Materiel during procurement decisions. Using option price data from a Bloomberg Terminal, I created a custom volatility surface monitoring tool by applying a mixture of stochastic volatility methods with Vanna-Volga. I also built a GARCH corrected copula-based tool for monitoring cross-currency hedging. Recently, my interests have focused on fixed income derivative pricing with particular attention paid to the relationship between credit default swaps and frailty models in survival analysis.
Stochastic processes
My clients are almost always interested in how uncertainty over time affects decisions. Applications of stochastic processes are the right tools for these problems. I apply the theory behind stochastic calculus (Ito/Lévy processes) to bring insight. During Covid, I computed the optimal building floor capacities for the Government of Canada’s return-to-work policy by modelling viral propagation as a Gamma subordinated branching process. The model formed the basis of a paper that I published in the Journal of Theoretical Biology. Coupling stochastic processes with dynamic programming was the linchpin of my NATO fleet replacement work in the Case Study.
Hierarchical/Bayesian modelling
Hierarchical or multilevel modelling often captures data stories better than machine learning methods. If the data has the right structure, these techniques generate highly interpretable relationships that build client intuition. As an example, during the first month of the Covid pandemic, a colleague and I built a hierarchical model of seroprevalence test data that used antibody detection to determine how early Covid arrived in North America. Using test sensitivity and specificity, we built a Bayesian hierarchical model using Markov Chain Monte Carlo and Generalized Mixed Modelling. Our posterior analysis confirmed some of the early findings of Professor Jay Bhattacharya, the current director of the National Institutes of Health in the United States, who reached out to us during our research to help resolve global controversies. Our work is cited in Nature.
Statistical computing in R and Python
These days I work almost exclusively in R – the world’s most powerful statistical computational language. I have written code in a multitude of languages over my life having migrated professionally from MATLAB to Python and then to R. In my data science team we build R packages maintained on our internal Gitlab instance and managed through POSIT package manager. I apply a hybrid Agile approach to software development which is especially useful with our Shiny web app data visualization products which we host with POSIT Connect. Unfortunately, I cannot link our code or products on external services like GitHub as all of our work and web apps are property of the Government of Canada.
My Approach
My mathematical and statistical approach sits squarely in two worlds: operations research dovetailed with data science. My modelling efforts use this multidisciplinary approach to ensure that decision makers always have an interpretable structure that makes economic comparisons transparent. My data stories help decision makers grasp complex decision insights without the need for any knowledge of mathematics or statistics.
​​
With over a decade of experience lecturing physics and astronomy to students of all backgrounds, and almost two decades of helping senior government leaders make decisions, I build a bridge from the abstract to the concrete. Complicated ideas often have a simple root. By carefully moving from the ideas behind the mathematics to the insight the decision maker needs, I navigate leaders toward a new intuitive understanding of relationships in their business data.
​
​​
