How to realize the extreme point of piecewise function in matlab

WBOY
Release: 2024-01-20 08:03:13
forward
1067 people have browsed it

How to realize the extreme point of piecewise function in matlab

How does matlab realize the extreme point of the piecewise function

function m=fenduanhanshu(t)

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

【explain】

In Matlab, the operation rule of the expression m=t.*(t>=0 & t1 & t2) in the above function is that when the Boolean expression is true, the Boolean expression The value of the formula takes 1 to participate in the operation, otherwise it takes 0 to participate in the operation.

For example, when (t>=0 & t=0 & t1 & t2) in the expression are not true, 0 is taken to participate in the operation, so at this time m=t.* 1 (-t 2)*0 0.1.*0=t.

This design in Matlab facilitates users to perform scientific calculations, reduces the amount of code, and improves development efficiency. Personally highly recommend using it.

How to solve the maximum value problem of a function through Matlab

Maximum value can be converted into a minimum value problem. For example: % Calculate the minimum value f(x) = -x1*x2*x3, the starting point is x = [10;10;10], and the constraint is:

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

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

% 1. Write the objective function % function f = myfun(x)

% f = -x(1) * x(2) * x(3);% 2. Constraints

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

% x1 2*x2 2*x3≤ 72

% 3. Construct a constraint matrix

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

% 1 2 2];

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

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

% x

% x =

% 24.0000

% 12.0000

% 12.0000

%

%

% fval

% fval =

% -3.4560e 03

%

%

% A*x-b

% ans =

-72

matlab binary function maximum value

The optimization problem of multivariate functions cannot be written simply.

MATLAB itself is not suitable for optimization. It is recommended to use tools such as lingo and 1stopt.

The following is the result of using the 1stopt tool:

1. Code:

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

Minimum;

Function (-256.926x 572.13)*(y*(0.867 0.037*y 0.05*x)*252-17.784*y);

2. Result:

Number of iterations: 25

Calculation time (hour: minute: second: millisecond): 00:00:00:141

Cause for calculation abort: The convergence criterion is reached

Optimization algorithm: Conjugate gradient method General global optimization method

Function expression: (-256.926*x 572.13)*(y*(0.867 0.037*y 0.05*x)*252-17.784*y)

Objective function value (minimum): 6170.8801616352

x: 2

y: 0.46

The above is the detailed content of How to realize the extreme point of piecewise function in matlab. For more information, please follow other related articles on the PHP Chinese website!

source:docexcel.net
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!