optimization

convertMps

Beschreibung

Konvertiert eine zweispaltige Datentabelle in eine siebenspaltige Datentabelle im MPS-Format. Diese Aktion ist nützlich, um Probleme der mathematischen Programmierung, die im MPS-Standardformat definiert sind, für die Verwendung mit SAS Viya-Optimierungs-Solvern vorzubereiten.

optimization.convertMps <result=results> <status=rc> / casOut={...}, data={...}, format="FIXED" | "FREE", maxLength=integer;
Einstellungen
ParameterBeschreibung
casOutGibt die Ausgabedatentabelle an, die im MPS-Format vorliegt und an die Solver übergeben werden kann.
dataGibt die Eingabedatentabelle an, die für jede Zeile der .mps-Datei eine Zeile enthält.
formatGibt an, ob der Inhalt der Eingabedatentabelle im festen oder freien Format vorliegt.
maxLengthGibt die maximale Länge des Variablen- oder Constraint-Namens an.
Erstellung von Beispieldaten

Erstellt eine einfache zweispaltige CAS-Tabelle, die als Eingabe für die convertMps-Aktion verwendet werden kann. Diese Tabelle simuliert eine einfache MPS-Datei.

Kopiert!
1DATA mycas.mps_data;
2 LENGTH line $ 80;
3 INFILE DATALINES;
4 INPUT line $;
5 DATALINES;
6NAME EXAMPLE
7ROWS
8 N OBJ
9 L R1
10 G R2
11COLUMNS
12 X1 OBJ 1
13 X1 R1 2
14 X2 OBJ 3
15 X2 R2 4
16RHS
17 RHS1 R1 10
18 RHS1 R2 20
19ENDATA
20;
21RUN;

Beispiele

Ein grundlegendes Beispiel, das eine zweispaltige MPS-Datentabelle in eine siebenspaltige MPS-Format-Tabelle konvertiert.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1PROC CAS;
2 optimization.convertMps /
3 DATA={name='mps_data'},
4 casOut={name='mps_converted', replace=true};
5RUN;
Ergebnis :
Die Aktion erstellt eine neue CAS-Tabelle mit dem Namen 'mps_converted' in der aktuellen Caslib. Diese Tabelle enthält die Daten im siebenspaltigen MPS-Format, bereit zur Verwendung durch einen Optimierungs-Solver.

Ein detailliertes Beispiel, das das freie Format (FREE) und eine maximale Namenslänge von 32 Zeichen für die Konvertierung angibt.

SAS® / CAS-Code Code wartet auf Validierung durch die Community
Kopiert!
1PROC CAS;
2 optimization.convertMps /
3 DATA={name='mps_data', caslib='MyCaslib'},
4 casOut={name='mps_converted_free', replace=true, caslib='MyCaslib'},
5 FORMAT='FREE',
6 maxLength=32;
7RUN;
Ergebnis :
Die Aktion erstellt eine neue CAS-Tabelle mit dem Namen 'mps_converted_free' in der Caslib 'MyCaslib'. Die Konvertierung behandelt die Eingabedaten als Freiformat und erlaubt Namen von Variablen und Constraints bis zu 32 Zeichen.

FAQ

Was ist der Zweck der `convertMps`-Aktion?
Welche Eingabetabelle benötigt die `convertMps`-Aktion?
Welche Formate werden für die Eingabedaten unterstützt?
Wie wird die Ausgabetabelle der `convertMps`-Aktion angegeben?
Was ist der Zweck des `maxLength`-Parameters?

Zugehörige Szenarien

Anwendungsfall
Standardkonvertierung für Lieferkettenoptimierung

Ein Logistikunternehmen möchte seine Transportrouten optimieren, um Kosten zu minimieren. Das mathematische Modell wurde von einem externen Berater im Standard-MPS-Format (Fixed...

Anwendungsfall
Verarbeitung komplexer Produktionspläne im freien Format

Ein Fertigungsbetrieb nutzt ein modernes Planungstool, das MPS-Dateien im 'Free Format' exportiert. Hierbei sind die Spalten nicht fest ausgerichtet, was Flexibilität bietet, ab...

Anwendungsfall
Finanzmodellierung mit erweiterten Namenslängen

Eine Bank modelliert Kreditrisiken und verwendet sehr deskriptive Variablennamen (z. B. 'ASSET_CLASS_HIGH_RISK_2024'), die länger als die Standard-MPS-Begrenzung von 8 Zeichen s...