2009-08-26 14 views
11

Ich brauche den robusten C++ - Quellcode des Simplex-Algorithmus (ist ein beliebter Algorithmus zur numerischen Lösung des linearen Programmierproblems).LP Simplex-Algorithmus in C++

Bitte keine Links zu Wikipedia. Ich brauche guten Quellcode in C++, verwende Templates, benutze benutzerfreundliche Namen und arbeite sehr gut.

Vorzugsweise muss der Algorithmus die instabile Gleitkommaberechnung überprüfen.

+2

Zeigen Sie uns, was Sie bisher gemacht haben und womit Sie Probleme haben. –

+1

Also, wie viel sind Sie bereit, dafür zu bezahlen, dass jemand das für Sie schreibt? – Bombe

+2

Ich hoffe, dass es einen freien Code für einen solch bekannten Algorithmus gibt. –

Antwort

8

Dies ist eine C++ - Bibliothek: http://soplex.zib.de. Die Lizenz unterliegt jedoch einigen Einschränkungen hinsichtlich der kommerziellen Nutzung.

Dieser hat eine liberale Lizenz, aber ist in C: http://aldebaran.devinci.fr/~cagnol/promotion2007/cs302/gsl/multimin/simplex.c.html Wahrscheinlich können Sie einen dünnen Wrapper schreiben.

+1

Letzteres ist nicht der Simplex-Algorithmus zur Lösung linearer Programmierprobleme, sondern der Algorithmus zur nichtlinearen Optimierung von [Nelder and Mead] (http://en.wikipedia.org/wiki/Simplex_algorithm) – marton78

6

Die Computational Infrastuktur for Operations Research (COIN-OR) bietet Open-Source-Software für die Operations Research Community, insbesondere zur numerischen Optimierung. Das CLP-Projekt, das von John Forrest von IBM verwaltet wird, implementiert den Simplex-Algorithmus für die lineare Programmierung in C++.

+0

Tolle Ressource da, danke! – patjbs

+0

Ich weiß, es ist ein bisschen alt, wollte aber nur sagen, dass der Link tot ist. –

4

Verwenden Sie die C-Bibliothek lpsolve. Es ist nicht in C++, aber es ist der stabilste und berühmteste freie lineare Programmierungslöser, der auf der Simplexmethode basiert.