Ich löse ein Optimierungsproblem. Das Problem hat binäre Einschränkungen. Solver ist (während der Iteration) diese binären Constraints auf Dezimalstellen zwischen 0 und 1 zu setzen (Annäherung an eine entspannte Gradientensuche). Ich möchte dem Löser anzeigen, dass er nur die diskontinuierlichen Werte für 0..1 durchsuchen soll.Excel-Löser (Simplex LP) binäre Einschränkungen
Gibt es eine Möglichkeit, dies zu tun?
Gibt es alternativ dazu einen Algorithmus in OpenSolver, der Simplex-lp imitiert und ein globales Optimum bietet?
Der günstige Weg, um es zu tun, ist eine For-Schleife, und iterieren über die Werte. Ich habe mich gefragt, ob es einen Weg gibt, es so zu formulieren, dass ein nichtlineares Problem zu einem linearen Problem wird.
Danke.
Solver (zB Was ist Ihre Gleichung Wie haben Sie Ihre Solver Problem einrichten usw.?) erlaubt 'bin' Einschränkungen. Achten Sie darauf, 'Simplex LP' Solver zu wählen, wenn Ihr Modell linear ist. Obwohl es Simplex LP heißt, löst es tatsächlich MIP (Mixed Integer Programming) Probleme. –
Wenn es fehlschlägt, ist es oft mit partiellen Werten, die die binäre Einschränkung angeben, eine Beschränkung, die NACH dem Gradientenabfall angewendet wird (Werte> 0 und <1). Ich frage, gibt es einen linearen (MILP) Löser, der echte boolesche Werte, d. H. Solche, die diskontinuierlich 0 oder 1 sind, erlaubt. – paulgrant999
Gradientenabstieg? Das macht keinen Sinn für mich. Stellen Sie sicher, dass Sie Simplex LP und nicht GRG Nichtlinear auswählen. Überprüfen Sie auch den Antwortbericht sorgfältig. –