2016-08-05 9 views
0

Ist es möglich, QPs über vorkompilierte Binärdateien (interaktive Shell) zu lösen?SCIP: Lösen von QPs über interaktive Shell

Ich habe ein paar Proben probiert und keine funktionierte. Fehle ich etwas?

Minimize 
obj: a + b + [ a^2 + 4 a * b + 7 b^2 ] 
Subject To 
c1: a + b >= 10 
End 

In diesem ich folgende msg erhalten:

[src/scip/reader_lp.c:147] ERROR: Syntax error in line 3 ('Subject'): expected '/2' or '/ 2' after end of quadratic part in objective. 
    input: Subject To 
      ^
[src/scip/reader_lp.c:3362] ERROR: Error <-2> in function cal 

Ein weiteres Beispiel:

Maximize 
obj: x1 + 2 x2 + 3 x3 + x4 
Subject To 
c1: - x1 * x3 + x2 + x3 + 10 x4 <= 20 
c2: x1 - 3 x2 + x3 <= 30 
c3: x2 - 3.5 x4 = 0 
Bounds 
0 <= x1 <= 40 
2 <= x4 <= 3 
General 
x4 
End 

und hier ist der Ausgang msg hier:

[src/scip/reader_lp.c:147] ERROR: Syntax error in line 4 ('x3'): expected sign ('+' or '-') or sense ('<' or '>'). 
    input: c1: - x1 x3 + x2 + x3 + 10 x4 <= 20 
        ^
[src/scip/reader_lp.c:3362] ERROR: Error <-2> in function call 
error reading file <sample.lp> 

Antwort

1

Vielleicht versuchen das .pip-Format (http://polip.zib.de/pipformat.php). Das ist ähnlich wie bei .lp, aber weniger unangenehm, wenn es um die Angabe von Quadratiken geht.

+0

Großer Vorschlag! Quadratics funktioniert jetzt! – Daniel

1

Die feste erste Beispiel würde

Minimize 
obj: a + b + [ 2 a^2 + 8 a * b + 14 b^2 ]/2 
Subject To 
c1: a + b >= 10 
End 

Die feste zweite Beispiel

Maximize 
obj: x1 + 2 x2 + 3 x3 + x4 
Subject To 
c1: x2 + x3 + 10 x4 + [ - x1 * x3 ] + <= 20 
c2: x1 - 3 x2 + x3 <= 30 
c3: x2 - 3.5 x4 = 0 
Bounds 
0 <= x1 <= 40 
2 <= x4 <= 3 
General 
x4 
End 

Überprüfen Sie auch die CPLEX Handbuch auf der Spezifikation des .LP Dateiformat wäre sein.