How to use optimization in matlab?

3 次查看(过去 30 天)
Greetings everyone, I am new to Global Optimization Toolbox.
Could someone explain to me please, I have the following simple code, which represents a square with side A and B.
Basically I am just trying to find value of x which would maximize my V (Volume).
How would I do that with an optimization toolbox? Any help would be much appreciated.
(I have Global Optimization Toolbox and Optimization Toolbox)
x = 0.2 %Optimization Variable <---
Lt = 10; %Total Perimeter Length
A = Lt*x % Side A
B = Lt-A % Side B
V = A*B %Volume (We want to maximize Volume)
rL = A+B

采纳的回答

Drishan Poovaya
Drishan Poovaya 2021-11-24
Hi,
It appears you want to find the maximum area of a rectangle with sides A and B, such that A + B = Lt. This would assume that Lt is the semi perimeter of the shape. Regardless, this will not effect the Optimization variable x, but you may want to modify the code below, as if Lt is the perimeter, A = (Lt*x)/2 and B = Lt/2 - A
% range of x - from 0 to 1, as sides can have
x1 = 0;
x2 = 1;
%Semi perimeter = 10
Lt = 10;
%x is optimization variable
[x_max , val] = fminbnd(@(x) -(Lt*x)*(Lt-Lt*x),x1,x2);
%val is minimum
val = -val;

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Solver Outputs and Iterative Display 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by