[Home][What's New][Products & Services][Contents][Feedback][Search]

Solver DLL V3.5 Features Evolutionary Algorithms, Multi-Threaded Optimization

Spreadsheet Solver "Engines" Make Optimization Easy to Use in Custom Applications

To download the Solver DLL V3.5 Evaluation Kit, click here to sign up (free of charge) for Frontline's Private Web for Solver Users. Then click on Download, scroll to the bottom and follow the link to Download Evaluation Kit for Solver DLL Version 3.5.

[Dividing Line Image]

Frontline Systems is now shipping the Small-Scale Solver DLL Version 3.5, with a wide array of new features including:

A free Solver DLL Evaluation Kit is available for download from Frontline’s Web site (see above!).

This means that you can create custom applications that include powerful optimization capabilities like those in Frontline’s Premium Solvers for Microsoft Excel, and deliver them to your own users (with a license from Frontline Systems). And for the first time, you can create Intranet and Web Server applications that can optimize problems for many users concurrently, with no extra programming effort in calling the optimizer!

If you’ve been solving nonlinear optimization problems in Excel that take a long time to solve, you may find that rewriting your model in Visual Basic or VBA and calling the Solver DLL can be as much as 10 to 100 times faster! And if you've struggled with problems that involve non-smooth functions such as IF tests and table lookups, or many "peaks" or "valleys", you may find that you can use the Evolutionary Solver to obtain optimal or nearly-optimal solutions for the first time!

Includes Linear, Quadratic, Mixed-Integer, Nonlinear, Non-Smooth / Evolutionary Solvers

The Solver DLL V3.5 comes in five different configurations which support just the optimization capabilities you need: The linear (Simplex) Solver, the quadratic Solver – often used for portfolio optimization problems, the classical nonlinear (GRG or Generalized Reduce Gradient) Solver, and the Evolutionary Solver – used for difficult non-smooth or global optimization problems. All versions also also mixed-integer problems with a Branch & Bound method that can use any of the Solver engines for its subproblems.

The linear and quadratic Solvers handle up to 1,000 or 2,000 decision variables (depending on the version), with no limit on constraints. The nonlinear and non-smooth (Evolutionary) Solvers handle up to 400 decision variables, and up to 200 constraints in addition to bounds on the variables. A new Solver DLL API call allows your application to discover at runtime the capabilities and size limits of the DLL version you are using.

Easier Way to Define Your Problem in Code

Unlike the linear and quadratic Solvers, where your problem can (and must) be described with a matrix of constant coefficients for the objective and constraints, the nonlinear and non-smooth Solvers are designed to handle any function that you can write in code. To define your problem for the nonlinear Solver, you write a "callback" function in the language of your choice, which computes values for the objective and the left hand sides of constraints given values for the decision variables. The Solver DLL does the rest – including estimating partial derivatives (rates of change for your smooth functions) if appropriate, and seeking first a feasible, then an optimal solution.

New Features to Diagnose Linearity and Feasibility

Also included in the Solver DLL V3.5 are new features to diagnose linearity and feasibility of user-written models. The Solver DLL can determine, through a numerical test, whether the objective and each constraint is a linear or nonlinear function of the variables. If a problem is found to be entirely linear, this test also provides all the information needed by your application to solve the problem with the linear (Simplex method) Solver.

When either the linear or smooth nonlinear Solver determines that a problem has no feasible solution, you can call new diagnostic routines to pinpoint the infeasibility by computing an "Irreducibly Infeasible Subset" (IIS) of the constraints. An IIS is a set of constraints that has no feasible solution, but if any one constraint is dropped from the set, a feasible solution can be found. If there is a mistake in formulation of a constraint or a conflict between constraints in a large problem, these diagnostic routines make it much easier to isolate the problem.

New Functions Handle Problems in External Files

With new DLL functions, your application program can easily read and write linear, quadratic and mixed-integer problems to and from disk files, in human-readable algebraic notation. This makes it easy to save problems in one user session and load them in a later session, or to write programs that generate problem definitions in text form that are then read and solved by the Solver DLL..

Example Programs in Visual Basic, Delphi Pascal, C/C++, FORTRAN

The free Solver DLL V3.5 Evaluation Kit includes a comprehensive, 144-page User Guide in Windows Help file format, and source code for example programs calling the Solver DLL from Visual Basic, Delphi Pascal, C/C++ and FORTRAN. Eleven different examples written in both C/C++ and Visual Basic show how to use the Solver DLL to solve linear, nonlinear and non-smooth problems, diagnose linearity and feasibility, and exercise many other DLL features. A complete portfolio optimization example is included, which finds an efficient portfolio of five securities based on their returns, variances and covariances. A simple multi-threaded optimization example is also included, illustrating how easy it is to solve multiple problems concurrently.

Aggressively Priced Runtime Licenses for Your Application

Depending on the configuration of Solver "engines" you choose, your first (development) copy of the Solver DLL will be priced from $495 to $1,500. Once you sign a license agreement with Frontline Systems, you can obtain runtime licenses at very deep discounts from these prices. We’ve already met the runtime license needs of users who are distributing anywhere from 5 to 5,000 copies, as well as "OEM" customers who are distributing hundreds of thousands to millions of copies.

New Use-Based Licensing for Web Server Applications

In Web Server applications, where the number of users is unknown or may become very large, traditional user (or "seat") based licensing may not be appropriate. Frontline Systems has developed alternative use-based licensing terms, where the Solver DLL will permit any number of users, but will monitor the number of uses or calls to the optimizer. You can choose between user-based and use-based licensing, whichever yields a lower total cost for your application. In either case, you can prepay for a quantity of licenses to bring down the average cost on a steeply declining discount schedule, and you can arrange that the cost will not exceed a fixed maximum for a period such as a year, or for the lifetime of your application..

For more information, contact Pamela Wright at (775) 831-0300 or by email at pwright@frontsys.com.

[Dividing Line Image]

Back to Home Page

Copyright © 2000 Frontline Systems Inc.
Last modified: June 24, 2004