Gravity: A Mathematical Modeling Language for Optimization and Machine Learning

Hassan Hijazi, Guanglei Wang, Carleton Coffrin

Sep 28, 2018 NIPS 2018 Workshop MLOSS Submission readers: everyone
  • Abstract: Gravity is an open source, scalable, memory efficient modeling language for solving mathematical models in Optimization and Machine Learning. Gravity exploits structure to reduce function evaluation time including Jacobian and Hessian computation. Gravity is implemented in C++ with a flexible interface allowing the user to specify the numerical accuracy of variables and parameters. It is also designed to offer efficient iterative model solving, convexity detection, multithreading of subproblems, and lazy constraint generation. When compared to state-of-the-art modeling languages such as JuMP, Gravity is 5 times faster in terms of function evaluation and up to 60 times more memory efficient. Gravity enables researchers and practitioners to access state-of-the-art optimization solvers with a user-friendly interface for writing general mixed-integer nonlinear models.
  • Keywords: Mathematical Modeling, Mathematical Optimization, Machine Learning
0 Replies