Open Source Contributions
Besides my primary PhD research, I have a side interest in numerical optimization, and more precisely, semidefinite programming (SDP). I am a passionate maintainer of SDPA for Python and also SDPA Multiprecision, my fork of SDPA-GMP that provides multiprecision SDP support in the Python ecosystem (including CVXPY).
Constrained optimization shares many similarities with regularization in Deep Learning, a topic I explored extensively during my PhD. I’m particularly drawn to semidefinite programming for its remarkable versatility and wide range of applications.
I hope to publish more content soon about the inner workings of SDP solvers. For now, you can play with a visualization of the positive semidefinite cone (for 2x2 matrices) below (JavaScript required).
To convert a point to a matrix
\[X = \begin{bmatrix} x & z\\ z & y \end{bmatrix}\]The conic region is specified by the inequalities \(x \geq 0\), \(y \geq 0\) and \(z^2 \leq x y\). These inequalities can be obtained through the definition of PSD matrices for the 2x2 case.