CPLEX eingebunden in C++ mit Visual Studio 2013: Werteausgabe als Matrix
-
Hallo Leute,
ich habe eine Frage zur Ausgabe meiner zweidimensionalen binären Entscheidungsvariablen x[i][j]:
IloArray<IloNumVarArray> x(env, n+1); for (int i = 0; i < n+1; i++) { x[i] = IloNumVarArray(env, n+1, 0, 1, ILOBOOL); }
Wie kann ich nach dem Lösen des Problems x[i][j] als Matrix ausgeben lassen, in der Zeilen [i] und Spalten [j] mit dem jeweiligen Werten beschriftet sind?
Bisher sieht es bei mir so aus:
IloCplex cplex(env); cplex.extract(model); bool solved = cplex.solve(); if (solved){ cout << endl; cout << "x[i][j]" << endl; for (int i = 0; i < n; i++){ for (int j = 1; j < n+1; j++){ cout << "[" << i << "]" << cplex.getValue(x[i][j]) << " "; } cout << endl; }
Das ergibt zwar als Ausgabe eine Matrix mit den Werten 0 und 1, jedoch muss ich Zeile und Spalte immer abzählen, anstatt dass die jeweiligen Spalten und Zeilen beschriftet sind. Weiß jemand eine bessere Lösung?
Vielen Dank im Voraus!
-
Dieser Thread wurde von Moderator/in Martin Richter aus dem Forum MFC (Visual C++) in das Forum C++ (alle ISO-Standards) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Ich verstehe dein Problem nicht, kannst du das näher erläutern? Wenn du Zeilen- und Spaltennummer mit ausgeben möchtest, dann tu das doch. Derzeit gibst du die Zeile schließlich schon mit aus, was ist das Problem bei den Spalten?