Kamil Khan's repositories
nonogram-ilp
ILP formulation in GAMS for solving nonograms
ConvexSampling.jl
Constructs linear underestimators of convex functions by tractable black-box sampling. Implemented in Julia.
continuous-convex-adjoints
A Julia/C++ implementation and numerical examples of adjoint subgradient evaluation for convex ODE relaxations, as described by Zhang and Khan (2024).
convex-ode-subgradients
Contains code for the numerical examples in an article by Yingkai Song and Kamil Khan. This code evaluates subgradients for convex relaxations of parametric ordinary differential equations (ODEs)
nonsmooth-forward-ad
Implementation of the vector forward mode of automatic differentiation (AD) for generalized differentiation of nonsmooth functions. Uses operator overloading in Julia.
ob-ode-relaxations
Proof-of-concept implementation of a method by Song and Khan (2022) for computing convex relaxations for parametric ordinary differential equations.
computational-graph-tools
Tools in Julia for automatically constructing the computational graph/tape of a composite function, and performing the reverse AD mode.
implicit-func-relaxations
Proof-of-concept implementation of a new method for computing convex relaxations for implicit functions and inverse functions.
NonogramSolver.jl
Formulates and solves nonogram puzzles (a.k.a. Picross and paint-by-number) in Julia. Uses a new integer linear programming formulation, and solves it with JuMP.