CVXPY--- Convex Programming tools by Prof. Dr. Stephen Boyd
CVXPY is a Python-embedded modeling language for convex optimization problems. It allows you to express your problem in a natural way that follows the math, rather than in the restrictive standard form required by solvers.
CVXPY relies on the open source solvers ECOS, OSQP, and SCS. Additional solvers are supported, but must be installed separately. For background on convex optimization, see the book Convex Optimization by Boyd and Vandenberghe.
CVXPY is a community project, built from the contributions of many researchers and engineers.
link to material: https://www.cvxpy.org/
link to Professor Stephen Boyd's website: https://web.stanford.edu/~boyd/