Teaching the Old Dog New Tricks: Supervised Learning with Constraints
  Adding constraint support in Machine Learning has the potential to address
outstanding issues in data-driven AI systems, such as safety and fairness.
Existing approaches typically apply constrained optimization techniques to ML
training, enforce constraint satisfaction by adjusting the model design, or use
constraints to correct the output. Here, we investigate a different,
complementary, strategy based on "teaching" constraint satisfaction to a
supervised ML method via the direct use of a state-of-the-art constraint
solver: this enables taking advantage of decades of research on constrained
optimization with limited effort. In practice, we use a decomposition scheme
alternating master steps (in charge of enforcing the constraints) and learner
steps (where any supervised ML model and training algorithm can be employed).
The process leads to approximate constraint satisfaction in general, and
convergence properties are difficult to establish; despite this fact, we found
empirically that even a na\"ive setup of our approach performs well on ML tasks
with fairness constraints, and on classical datasets with synthetic
constraints.
