Heim  >  Artikel  >  Computer-Tutorials  >  So realisieren Sie den Extrempunkt der stückweisen Funktion in Matlab

So realisieren Sie den Extrempunkt der stückweisen Funktion in Matlab

WBOY
WBOYnach vorne
2024-01-20 08:03:131114Durchsuche

So realisieren Sie den Extrempunkt der stückweisen Funktion in Matlab

Wie man den Extrempunkt der stückweisen Funktion in Matlab erkennt

Funktion m=fenduanhanshu(t)

m=t.*(t>=0 & t1 & t2)

【Erklärung】

In Matlab lautet die Operationsregel des Ausdrucks m=t.*(t>=0 & t1 & t2) in der obigen Funktion, dass der Wert des booleschen Ausdrucks 1 ist, wenn der boolesche Ausdruck wahr ist Nehmen Sie an der Operation teil, andernfalls nehmen Sie 0 und nehmen Sie an der Operation teil.

Wenn zum Beispiel (t>=0 & t=0 & t1 & t2) im Ausdruck nicht wahr sind, wird 0 verwendet, um an der Operation teilzunehmen, also zu diesem Zeitpunkt m=t.*1 +(-t+2) *0+0,1.*0=t.

Dieses Design in Matlab erleichtert Benutzern die Durchführung wissenschaftlicher Berechnungen, reduziert die Codemenge und verbessert die Entwicklungseffizienz. Persönlich kann ich die Verwendung nur wärmstens empfehlen.

So lösen Sie das Maximalwertproblem einer Funktion mit Matlab

Maximalwert kann in ein Minimalwertproblem umgewandelt werden. Beispiel: % Berechnen Sie den Mindestwert f(x) = -x1*x2*x3, der Startpunkt ist x = [10;10;10] und die Einschränkung lautet:

% 0 ≤ x1 + 2*x2 + 2*x3 ≤ 72.

% –x1–2*x2–2*x3 ≤ 0

% 1. Schreiben Sie die Zielfunktion% Funktion f = myfun(x)

% f = -x(1) * x(2) * x(3);% 2. Einschränkungen

% –x1–2*x2–2*x3 ≤ 0

% x1 + 2*x2 + 2*x3≤ 72

% 3. Konstruieren Sie die Einschränkungsmatrix

% A = [-1 -2 -2; ...

% 1 2 2];

% b = [0;72];% 4. Optimierungsberechnung% x0 = [10;10;10];

% [x,fval] = fmincon(@myfun,x0,A,b);% 5. Ergebnis

% x

% x =

% 24,0000

% 12,0000

% 12,0000

%

%

% fval

% fval =

% -3.4560e+03

%

%

% A*x-b

% ans =

-72

matlab-Maximalwert der Binärfunktion

Das Optimierungsproblem multivariater Funktionen kann nicht einfach geschrieben werden.

MATLAB selbst ist nicht zur Optimierung geeignet. Es wird empfohlen, Tools wie Lingo und 1stopt zu verwenden.

Das Folgende ist das Ergebnis mit dem 1stopt-Tool:

1. Code:

Parameter x=[1.8,2,2],y=[.46,.90];

Minimum;

Funktion (-256,926x+572,13)*(y*(0,867+0,037*y+0,05*x)*252-17,784*y);

2. Ergebnis:

Anzahl der Iterationen: 25

Berechnungszeit (Stunde: Minute: Sekunde: Millisekunde): 00:00:00:141

Ursache für Berechnungsabbruch: Konvergenzkriterium erreicht

Optimierungsalgorithmus: Konjugierte Gradientenmethode + allgemeine globale Optimierungsmethode

Funktionsausdruck: (-256,926*x+572,13)*(y*(0,867+0,037*y+0,05*x)*252-17,784*y)

Zielfunktionswert (Minimum): 6170,8801616352

x: 2

y: 0,46

Das obige ist der detaillierte Inhalt vonSo realisieren Sie den Extrempunkt der stückweisen Funktion in Matlab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:docexcel.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen