LINGO is a comprehensive tool designed to make building and solving Linear, Nonlinear (convex & nonconvex/Global), Quadratic, Quadratically Constrained, Second Order Cone, Stochastic, and Integer optimization models faster, easier and more efficient. LINGO provides a completely integrated package that includes a powerful language for expressing optimization models, a full featured environment for building and editing problems, and a set of fast builtin solvers. The recently released LINGO 17.0 includes a wide range of performance enhancements and new features.
LINGO 17.0 Enhancements
Faster Solutions on Linear Models with Improved Simplex Solver
Enhancements to the Simplex solvers boost performance on linear models. Large models solve an average of 20% faster using primal simplex and 15% faster for dual simplex.
Improved Integer Solver
New symmetry detection capabilities dramatically reduce the time required to prove optimality on certain classes of models with integer variables. Performance has been improved on Markowitz portfolio problems with minimum buy quantities, and/or limit on number of instruments at nonzero level. Other enhancements provide faster solutions on certain task assignmentlike models.
Global Solver Enhancements
Stability and robustness of the Global solver has been improved through several enhancements to quadratic recognition and range reduction. Improved exploitation of convexity of certain ratio constraints, e.g., as found in heat exchanger network design problems.
More Constraint Types Supported
Several new functions and constraint types are recognized, e.g., the @AllDiff constraint for general integer variables. The @AllDiff function allows one to specify a set of integer variables, such that each variable in the set must have a unique value, different from all other variables in the set.
Most Recent Modeling Language and Feature Enhancements

New capability to pass arguments to userdefined procedures.

Support of data frame style input in Data and Calc sections has been added.

New functions for programmatically reading input data in Calc sections.

New function for retrieving the next best solution to a binary integer programming model. The function allows you to examine and/or display variable values and decide if further solutions should be generated, or it can be called repeatedly to iterate through all feasible solutions.

New function for displaying space time charts.

New functions for performing QR factorization of matrices and performing matrix multiplication.

Option for specifying the default starting point for variables.
Powerful solvers
Linear Solvers
LINGO is available with three state of the art solvers for linear models.

Primal and Dual Simplex Solvers
The base version includes the Primal and Dual Simplex solvers, which incorporate numerous enhancements for maximum speed and robustness. Pricing options, for instance, include partial pricing and Devex. You have the option to choose the best pricing strategy based upon problem characteristics.

Barrier Solver
The optional Barrier solver provides an alternative means of solving linear models. The Barrier option utilises a barrier or interior point method to solve linear models. Unlike the Simplex solvers that move along the exterior of the feasible region, the Barrier solver moves through the interior space to find the optimum. Depending upon the size and structure of a particular model, the Barrier solver may be significantly faster than the Simplex solvers and can provide exceptional speed on large linear models, particularly on sparse models with more than 5,000 constraints or highly degenerate models. The Barrier licence option is required to utilise the Barrier solver.

Integer Solver
For models with general and binary integer restrictions, LINGO includes an integer solver that works in conjunction with the linear, nonlinear, and quadratic solvers. For linear models, the integer solver includes preprocessing and dozens of constraint "cut" generation routines that can greatly improve solution times on large classes of integer models.
Nonlinear Solvers
LINGO includes a number of ways to find locally or globally optimal solutions to nonlinear models.

General Nonlinear Solver
For nonlinear programming models, the primary underlying technique used by LINGO's optional nonlinear solver is based upon a Generalised Reduced Gradient (GRG) algorithm. However, to help get to a good feasible solution quickly, LINGO also incorporates Successive Linear Programming (SLP). The nonlinear solver takes advantage of sparsity for improved speed and more efficient memory usage. The Nonlinear licence option is required to solve nonlinear models.

Global Solver
Local search solvers are generally designed to search only until they have identified a local optimum. If the model is nonconvex, other local optima may exist that yield significantly better solutions. Rather than stopping after the first local optimum is found, the Global solver will search until the global optimum is confirmed. The Global solver converts the original nonconvex, nonlinear problem into several convex, linear subproblems. Then, it uses the branchandbound technique to exhaustively search over these subproblems for the global solution. The Nonlinear and Global licence options are required to utilise the global optimisation capabilities.

Multistart Solver
When limited time makes searching for the global optimum prohibitive, the Multistart solver can be a powerful tool for finding good solutions more quickly. This intelligently generates a set of candidate starting points in the solution space. Then, the general nonlinear solver intelligently selects a subset of these to initialise a series of local optimisations. For nonconvex nonlinear models, the quality of the solution returned by the multistart solver will be superior to that of the general nonlinear solver. The Nonlinear and Global license options are required to utilise the multistart capabilities.

Quadratic Solver
In addition to solving linear and mixed integer models, with the Barrier option LINGO can automatically detect and solve models in which the objective function and/or some constraints include quadratic terms. By taking advantage of the quadratic structure, LINGO can solve these models much more quickly than using the general nonlinear solver. LINGO can even handle quadratic models with binary and general integer restrictions. These quadratic capabilities make LINGO suitable for applications such as portfolio optimisation problems, constrained regression problems, and certain classes of difficult logistics problems (e.g., layout problems, fixedchargenetwork problems with quadratic objectives). The Quadratic solver is included in the Nonlinear licence option.
Preprocessing and User Control
Preprocessing routines are included in all solvers. The Linear and Nonlinear solvers include scaling and model reduction techniques. Scaling procedures can improve speed and robustness on numerically difficult models. Model reduction techniques can often make models solve faster by analysing the original formulation and mathematically condensing it into a smaller problem. The Integer solver includes extensive preprocessing and cut generation routines.
LINGO is designed so the user has as much control over the input to the solvers as possible. When the Solve routine is initiated, LINGO analyses the problem and considers internal parameters set by the user to achieve optimal performance for your particular problem.
Linearisation
LINGO's linearisation capabilities can dramatically improve performance on models with common nonsmooth functions. The feature can automatically convert many nonsmooth functions and operators (e.g., max and absolute value) to a series of linear, mathematically equivalent expressions. Many nonsmooth models may be entirely linearised. This allows the linear solver to quickly find a global solution to what would have otherwise been and intractable problem.
Key Benefits of LINGO

Easy Model Expression
LINGO will help you cut your development time. It lets you formulate your linear, nonlinear and integer problems quickly in a highly readable form. LINGO's modeling language allows you to express models in a straightforward intuitive manner using summations and subscripted variables  much like you would with pencil and paper. Models are easier to build, easier to understand, and, therefore, easier to maintain.

Convenient Data Options
LINGO takes the time and hassle out of managing your data. It allows you to build models that pull information directly from databases and spreadsheets. Similarly, LINGO can output solution information right into a database or spreadsheet making it easier for you to generate reports in the application of your choice.

Powerful Solvers
LINGO is available with a comprehensive set of fast, builtin solvers for Linear, Nonlinear (convex & nonconvex/Global), Quadratic, Quadratically Constrained, Second Order Cone, Stochastic, and Integer optimization. You never have to specify or load a separate solver, because LINGO reads your formulation and automatically selects the appropriate one.

Model Interactively or Create Turnkey Applications
You can build and solve models within LINGO, or you can call LINGO directly from an application you have written. For developing models interactively, LINGO provides a complete modeling environment to build, solve, and analyze your models. For building turnkey solutions, LINGO comes with callable DLL and OLE interfaces that can be called from user written applications. LINGO can also be called directly from an Excel macro or database application.

Extensive Documentation and Help
LINGO provides all of the tools you will need to get up and running quickly. You get the LINGO User Manual (in printed form and available via the online Help), which fully describes the commands and features of the program. Also included with super versions and larger is a copy of Optimization Modeling with LINGO, a comprehensive modeling text discussing all major classes of linear, integer and nonlinear optimization problems. LINGO also comes with dozens of realworld based examples for you to modify and expand.