[Math] What are common Mathematical Programming Languages out there

integer programminglinear programmingoptimization

I've seen the term used Mathematical Programming to describe a superset of:

  1. Linear programming
  2. Quadratic programming
  3. Nonlinear programming
  4. Mixed-integer programming
  5. Mixed-integer nonlinear programming
  6. Second-order cone programming
  7. Global optimization
  8. Constraint programming

I'm looking for a list of programming languages that your can use for solving such problems.

NOTE:

  1. Although it is true that the word "programming" as used in optimization doesn't mean "computer programming". And, languages like Matlab, python, C++, Julia, etc, can be used to solve optimization problems
  2. What I'm looking for a language that allows the easy specification of Math Programming problems and may (Or may-not) use a Matlab, python, C++, Julia, etc. backend for the actual solution

Best Answer

Matematical "programming" doesn't mean the same thing as computer programming. Programming in this context simply means optimization.

A good choice that is pretty simple to learn, mainly because its syntax very closely resembles mathematical notation, is AMPL. It is built to model exactly the problems you mention. Note that AMPL is only a modeling language however - you will need additional software to actually solve the problems. These are compatible with AMPL and not hard to set up either. CPLEX is an example of a commercial solver, but there are also free solvers available, like Gurobi.

Related Question