Free sourcecode for solving LP

Posted on 2003-02-28
Medium Priority
Last Modified: 2010-04-04

Does anyone know if there is some freeware on the net for solving linear programming problems? Preferably an implementation of karmarkars interior point method.
Question by:jahve
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions

Accepted Solution

loop_until earned 300 total points
ID: 8045740
Check this:


Or, took from this site: http://www-unix.mcs.anl.gov/otc/Guide/faq/linear-programming-faq.html#free

"Based on the simplex method:

There is a downloadable code, written in C, called lp_solve that its author (Michel Berkelaar, michel@es.ele.tue.nl) says has solved models with up to 30,000 variables and 50,000 constraints. Version 3.0 is now available under the Lesser GNU Public License. As an editorial opinion, I must state that difficult models will give lp_solve trouble; it's not as good as a commercial code. But for someone who isn't sure what kind of LP code is needed, it represents a reasonable first try. (The author has also made available a program that converts data files from MPS-format into lp_solve's own input format; it's file mps2eq_0.2.tar.gz in the same directory as the lp_solve files.)

LP-Optimizer is a simplex-based code for linear and integer programs, written by Markus Weidenauer (weidenauer@netcologne.de). Free Borland Pascal 7.0 and Borland Delphi 4 source is available for downloading, as are executables for DOS and for Windows (95 or later).

SoPlex is an object-oriented implementation of the primal and dual simplex algorithms, developed by Roland Wunderling. Source code is available free for research uses at noncommercial and academic institutions.

Among the SLATEC library routines is a Fortran sparse implementation of the simplex method, SPLP. Its documentation states that it can solve LP models of "at most a few thousand constraints and variables".

Based on interior-point methods:

The Optimization Technology Center at Argonne National Laboratory and Northwestern University has developed PCx, an interior-point code that is freely available for downloading. PCx is available in Fortran or C source or a variety of Windows and Unix executables, with an optional Java-based GUI interface. Input can be specified in MPS form or by use of the AMPL modeling language.

Csaba Meszaros (meszaros@sztaki.hu) has written BPMPD, an interior-point code for linear and convex quadratic programs. A demonstration version, which solves problems of any size but does not report optimal values of the variables for problems larger than about 500 x 500, is available as a Windows95/NT executable or DLL. Separately, a large variety of Unix binaries for Linux and four workstation platforms are available for downloading.

Jacek Gondzio (gondzio@maths.ed.ac.uk) has developed the interior-point LP (and convex QP) solver HOPDM. Several papers (also available at the HOPDM website) detail the features of this solver, which include automatic selection of multiple centrality correctors and factorization method, and a "warm start" feature for taking advantage of known solutions. A public-domain Fortran version (2.13, LP only) can be downloaded, and a newer C version (2.30) is available on request to the developer.

If you want to solve an LP without downloading a code to your own machine, you can execute many of these interior-point codes (as well as varied commercial LP codes) through the NEOS Server.

Modeling systems:

LPL is a mathematical modeling language for formulating and maintaining linear and mixed-integer programs. It is particularly notable for its ability to also handle a variety of logical constraints, which are translated symbolically into algebraic constraints using 0-1 variables. You can download the software and documentation free of charge."

There is more on the site referenced higher, you might want to check it out.

Hope it helps.
Have a nice day! :)

Expert Comment

ID: 9317026
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
Post your closing recommendations!  No comment means you don't care.

Featured Post

Enroll in August's Course of the Month

August's CompTIA IT Fundamentals course includes 19 hours of basic computer principle modules and prepares you for the certification exam. It's free for Premium Members, Team Accounts, and Qualified Experts!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
In my programming career I have only very rarely run into situations where operator overloading would be of any use in my work.  Normally those situations involved math with either overly large numbers (hundreds of thousands of digits or accuracy re…
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
In this video, Percona Solutions Engineer Barrett Chambers discusses some of the basic syntax differences between MySQL and MongoDB. To learn more check out our webinar on MongoDB administration for MySQL DBA: https://www.percona.com/resources/we…
Suggested Courses
Course of the Month10 days, 18 hours left to enroll

770 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question