Summary
I love creating software to solve problems. I am a skilled developer with a strong background in mathematics. I am an expert in linear algebra and numerical optimization.
Education
Thesis: A Regularized Active-set Method for Sparse Convex Quadratic Programming
- Developed QPBLUR, a quadratic programming solver with block-LU updates and regularization. QPBLUR was used as a subproblem solver in SNOPT, a sequential quadratic programming algorithm for constrained nonlinear optimization
Experience
- Developed a new sparse LU solver and ordering method for initial basis selection in LP crossover
- Developed a heuristic for MIP models containing fixed-charge network flow structure
- Developed the automatic tuning tool grbtune that helps users find the best algorthmic parameters for their MIP models
- Developed the Gurobi MATLAB interface
- Lead the design and development of the Gurobi Instant Cloud: a service that allows users to instantly get access to clusters performing distributed optimization in the cloud
- Developed a large-scale implementation of an MIP model for routing air traffic in the presence of thunderstorms
- Designed algorithms for computing adaptive policies for two-stage linear programming under uncertainty
- Worked with an interdisciplinary team of mathematicians and systems biologists to devise an optimization-based model of the metabolic system of unicellular organisms
- The team received a three-year grant from the Department of Energy to explore the model's use in biological hydrogen production
- Developed SPARTAN, a sparse trust-region algorithm for large systems nonlinear equations for use in the open-source MATLAB clone SCILAB
- Formulated and solved global optimization problems with bilinear objectives and equilibrium constraints to compute optimal bidding strategies in an electric power market
- Constructed numerical analysis demonstrations in Mathematica
- Developed a statistics module for Wolfram|Alpha
- Implemented an add-on package to Mathematica for nonuniform B-Spline interpolation
Programming Languages
I've written significant programs in:
- C
- Python
- Matlab
- Javascript
- OCaml
- Mathematica
- Fortran 95
I've written smaller programs in:
- C++
- Java
- C#
- Haskell
- Scheme
- Perl
- R