This repository collects tutorials and case studies of differentially private convex optimization. The materials are based on the theory and applications from the following preprint:
Privacy-Preserving Convex Optimization: When Differential Privacy Meets Stochastic Programming
by Vladimir Dvorkin, Ferdinando Fioretto, Pascal Van Hentenryck, Pierre Pinson and Jalal Kazempour.
Animations below depict how changes in optimization datasets leak through optimization results (model parameters, allocation costs, etc.), hence causing privacy risks for data owners. In this work, we provide formal privacy guarantees to optimization datasets by internalizing the standard differential privacy mechanisms into convex optimization using linear decision rules and chance-constrained programming.
resource allocation
|
SVM classification
|
regression analysis
|
ellipsoid fitting
|
All models are implemented in Julia Language v.1.6 using JuMP modeling language for mathematical optimization and commercial Mosek optimization solver, which needs to be licensed (free for academic use). Make sure to active project environment using Project.toml and Manifest.toml appended to each Jupiter notebook (for tutorials) and Julia execution file main.jl (for case studies).



