v20.0 [Sep 30, 2022]

- Improved API interface. It is now much easier to incorporate your LINGO model(s) into your own custom designed system. The standard LINGO distribution has examples to illustrate how to do this.

- LINGO in Excel. It is now easy to integrate a LINGO model into an Excel spreadsheet. The end user sees it as just a smart Excel spreadsheet that can solve say, a cutting stock problem for metal fabrication, or vehicle routing and delivery problems, or a supply chain shipping assignment problem, and more.

- New REST API distributed computing interface. If you want to have an optimization based application accessible on the web from smart phones and other devices, this is now easier to do.

- Improved capability to create a Docker Image. If you like to be able to move an application from one server to another with minimum hassle, Docker has proven to be a popular way of achieving such portability.

- Improved interface to R. The R statistical package is a popular way of doing statistical analysis. It is now much easier to establish an interface between your data in R and your optimization model in LINGO.

- Improved interface to Python. Python is one of the most popular languages for doing general computations. It is now much easier to establish an interface between your Python application and your optimization model in LINGO.

- Improved support for implied set names such as J01..J99, Jan..Oct, etc.

- Improved ODBC connection to databases allowing import of sets (in addition to

attributes) within Calc sections.

- Ability to generate alternate optimal solutions to linear programming models. This may be done interactively, or programmatically within Calc sections using the @NEXTALTOPT() function.

Performance Improvements:

- Linear and Integer Solver Improvements.

- Improved heuristics for general integer programs.

- Average performance improvement of 2-3% on our standard test set.

- Nonlinear and Global Solver Improvements

Faster (order of magnitude) solution of linear fractional programs (ratio objectives).

- Support for additional useful but “problematic” functions:

- Power utility function (x^g-1)/g and

- exponential ratio function (exp(g) – 1)/g, are important in some

- situations modeling consumer behavior. The solver can now robustly avoid the

- numerical problems that would otherwise occur when g approaches 0.

- Linearization Improvements: More expressions can be automatically linearized, so you can now use a fast linear solver where otherwise a much slower (30x?) nonlinear solver might be required. Improved linearization of certain IF expressions.

v18.0.0.56 [Dec 7, 2018]

- Better Performance on Linear Models with Improved Simplex Solvers: Enhancements to the Simplex solvers boost speed on linear models. Models solve an average of 18% faster using primal simplex and 15% faster for dual simplex.

- Significantly Faster on Large Quadratic Models: Improvements in handling large quadratic matrices, e.g. 1000 x 1000, provide substantial performance improvement solving financial portfolio and other quadratic models.

- Improved Handling of Models with Discontinuous Functions: Models that use discontinuous functions such as MOD(x,k), INT(x), ROUND(x), can be solved more quickly.

- Faster When Simultaneously Solving LPs Using Different Solvers: In situations in which it may be difficult to predict whether the Primal, Dual or Barrier Solver will provide the fastest solution to a linear model, an improved Multi-Core feature allows you to assign each solver to a separate core and run them concurrently. So, you are ensured the solution in the shortest time regardless of which solver is fastest.

- Multi-Start NLP Solver Now Supports a Target Value: Users can specify a target value for the objective function. As soon as any multi-start thread achieves a specified target all threads stop.

- Most Recent Modeling Language and Feature Enhancements:

- New chart functions: Gantt charts, stacked vertical bar, stacked horizontal bar.

- New function for executing commands from R statistics package from LINGO.

- Ability to interrupt solver in a CALC section, but continue execution of the CALC.

- New arithmetic functions: @SIGNPOWER, @LMTD and @RLMTD for heat exchanger and nonlinear network models.

- New solver log option: Enable the solver log, set its output level.

v17.0.0.78 [Apr 4, 2017]

- 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.

- New symmetry detection capabilities dramatically reduce the time required to prove optimality on certain classes of models with integer variables.

- Stability and robustness of the Global solver has been improved through several enhancements to quadratic recognition and range reduction.

- Several new functions and constraint types are recognized, e.g., the @AllDiff constraint for general integer variables.

- New capability to pass arguments to user-defined 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.

v17.0 [May 29, 2017]

- Enhancements to the Simplex solvers boost performance on large linear models.

- A new optimization mode has been introduced to ensure reproducibility of runs.

- Find faster solutions to models with knapsack constraints and block structures using new heuristic algorithms.

- New preprocessing level tightens variable bounds for better performance on classes of nonlinear models.

- Large linear multistage SP instances solve 60% faster with improved cut management for Nested Benders Decomposition Method.

- Better handling of multistage SP models which do not have full-recourse.

- Extensions to the parser allow the use of arbitrarily complex functions of stochastic parameters.

v15.0 [Feb 6, 2015]

LINGO 15.0 Enhancements

Release 15 of LINGO includes support for a new platform as well as a wide range of performance enhancements and new features.

• Native Apple Mac Support

LINGO's user interface has been entirely rewritten to offer native support for the Macintosh.

LINGO 15.0

• Faster Solutions on Linear Models with Improved Simplex Solver

Simplex LP algorithm improvements boost speed and robustness. Primal Simplex Solver averages 90% faster and Dual Simplex Solver averages 45% faster.

• Better Performance on Integer Models

Improved solution times across broad classes of IP models from enhancements due to improved knapsack related cuts, superior default node selection rules, and branching variable selection rule options.

• Expanded Capabilities of Efficient Solution of Quadratic Problems

If you work with covariance matrices, you'll appreciate the ability to impose Positive Definiteness (POSD) as a constraint. If estimating a covariance matrix for a portfolio, a constraint may be added to force the matrix to be positive semi-definite (a property required of any covariance matrix). Also, new reformulation capabilities give improved performance on quadratic portfolio models with semi-continuous variables (e.g. min-buy quantities) and cardinality (upper limit on assets) constraints. The Quadratic repair feature can improve performance on not quite convex QP’s.

• Smarter Presolver

New preprocessing for linear programs significantly reduces coefficient density of certain dense matrices. This can significantly improve performance on models such as production planning with many periods.

• Improved Nonlinear Solver

Upgraded default settings provide performance improvements overall on nonlinear models. Faster processing of long (1000’s of terms) nonlinear expressions in nonlinear models.

• Faster Model Generation

Additional multithreaded code added to model generator to improve generation times on large models.

v14.0.1.65 [Mar 19, 2013]

- The Network Chart Type can display charts of networks. Multiple networks can be displayed on a single chart.

- You may now choose to have a model's underlying matrix displayed in a variety of orderings.

- For models with more than 10,000 variables or constraints, the speed of rendering of the display has been improved by several orders of magnitude.

- The INSERT function has been added, which allows the dynamic addition of set members to derived sets. This is handy for applications in which the definition of a set of objects is complicated.

- LINGO now supports callable procedures. Callable procedures are similar to CALC sections, however, unlike CALC sections, procedures may be called and executed multiple times.

- There is now a simple command, INTEGRAL( ), for computing the numerical integral of a function over an interval.

- The Beta-Binomial and Symmetric Stable distributions have been added to the list of supported distributions. Stochastic programming models may also specify random variables as having either a Beta-binomial or Symmetric Stable distribution. The Beta-Binomial is useful in Bayesian analysis involving the Binomial distribution, e.g., in designing sampling plans for new drug trials. The Symmetric Stable is sometimes used to model the movement of prices in financial markets.

- A number of functions have been added to convert dates to and from scalar time, where scalar time is defined as the number of seconds since midnight 1 Jan 2000. These functions are helpful when you need to perform date arithmetic in your models.

- It can take advantage of computers with multicore processors. The multicore extensions are of two types: concurrent and parallel. Concurrent algorithms run two or more different serial algorithms on multiple copies of the same model, using a separate thread for each algorithm, terminating as soon as the winner thread finishes. Parallel algorithms, on the other hand, parallelize computationally intensive portions of the serial algorithm to distribute the workload across multiple threads. Solvers with multicore extensions include Barrier, Global, Integer, Linear, Multistart and Stochastic.

- In addition to the solvers, LINGO's model generator has also been extended for multicore support. Model generation times for large models can be reduced up to as much as 50% when compared to previous releases.

- A Branch-and-Price solver with multicore support has been added for improved performance on problems with block structures. Detection of decomposition structures has also been improved in support of the Branch-and-Price solver.

- The solution finding heuristics have been improved significantly. Simple rounding and the feasibility pump now use bound propagation to improve the current path to a new feasible MIP solution. Multithreading can lead to speed improvements from 1.5 to 3.0 times on difficult problems using 4 threads rather than 1. For easy MIP problems, e.g., < 600 seconds, multithreading may give not much speedup.

- The Multistart solver has been improved significantly, achieving speed factors up to 2X compared to the previous version. The likelihood of getting the global optimum has also improved by 10-15% over a wide range of nonconvex models. Multithreading often leads to speed improvements from 2.0 to 3.0 times when using 4 threads. Speed improvements tend to improve as the model size and the number of multistarts increase.

- A parallel algorithm has been added for exploiting multicore machines.

v13.0.2.21 [Apr 15, 2011]

New:

- Support of Chance-Constrained Programs

- Stochastic Solver Improvements

- New Probability Distributions

- MIP Solver Improvements

- Global Solver Improvements