OptimizationConstraint
Vincoli di ottimizzazione
Descrizione
Un oggetto OptimizationConstraint contiene vincoli espressi in termini di oggetti OptimizationVariable o oggetti OptimizationExpression. Ogni vincolo utilizza uno dei seguenti operatori di confronto: ==, <= o >=.
Una singola dichiarazione può rappresentare un array di vincoli. Ad esempio, è possibile esprimere i vincoli secondo cui la somma di ogni riga di una variabile matriciale x è pari a uno, come mostrato in Creazione di vincoli semplici in un loop.
Suggerimento
Per il workflow completo, vedere Problem-Based Optimization Workflow o Problem-Based Workflow for Solving Equations.
Creazione
Creare un oggetto vincolo vuoto utilizzando optimconstr. In genere, si utilizza un loop per compilare le espressioni nell'oggetto.
Se si crea un'espressione di ottimizzazione a partire da variabili di ottimizzazione utilizzando gli operatori di confronto ==, <= o >=, l'oggetto risultante sarà OptimizationEquality oppure OptimizationInequality. Vedere Cronologia versioni.
Includere i vincoli nella proprietà Constraints di un problema di ottimizzazione utilizzando la notazione a punto.
prob = optimproblem; x = optimvar('x',5,3); rowsum = optimconstr(5); for i = 1:5 rowsum(i) = sum(x(i,:)) == i; end prob.Constraints.rowsum = rowsum;
Proprietà
Funzioni oggetto
evaluate | Evaluate optimization expression or objectives and constraints in problem |
infeasibility | Constraint violation at a point |
issatisfied | Constraint satisfaction of an optimization problem at a set of points |
show | Display information about optimization object |
write | Save optimization object description |