Filter löschen
Filter löschen

Resolution of the gamultiobj's variable

9 Ansichten (letzte 30 Tage)
Xiaowei
Xiaowei am 23 Mai 2024
Kommentiert: Walter Roberson vor etwa 6 Stunden
Hi community!
To what resolution does the random search algorithm generates new samples? Is it possible to specify a certain resolution to search for a varible?
For example, the independent variable I want to search over, a, has the limit of . Is it possible to only search for a that is as accurate as the level of 0.01? It reduces the search space to only 200 points.
I assume doing this would make the search converge faster and also, in my application, I do not really care about a at the decimal of 0.001.
Thank you in advance for your help!
Xiaowei

Antworten (2)

Nipun
Nipun am 11 Jun. 2024
Bearbeitet: Walter Roberson am 19 Jul. 2024 um 18:15
Hi Xiaowei,
I understand that you want to specify a resolution for the random search algorithm. You can discretize the search space manually:
a_values = -1:0.01:1; % Set resolution to 0.01
This approach limits the search space, making the search process faster.
For more details on generating a random scalar, refer to MATLAB documentation: https://www.mathworks.com/help/comm/ref/randsrc.html
Hope this helps.
Regards,
Nipun
  1 Kommentar
Xiaowei
Xiaowei am 19 Jul. 2024 um 18:07
Bearbeitet: Xiaowei am 19 Jul. 2024 um 18:07
Hi Nipun,
Thank you for your answer! Sorry for the late response as I didn't receive any notification from the forum that my question has been answered.
In gamultiobj, how can I discretize the search space? Because when I am setting up the algorithm, it only asks me to specify a lower bound and upper bound for the search space. I didn't find where I can specify the discretization.
Best regards,
Xiaowei

Melden Sie sich an, um zu kommentieren.


Walter Roberson
Walter Roberson am 19 Jul. 2024 um 18:18
Search over integers -100 to +100 and divide by 100 before use.
  2 Kommentare
Xiaowei
Xiaowei vor etwa 8 Stunden
Hi Walter,
Do you mean I should
  1. make my variables integer
  2. specify the range according to my needs?
Thank you!
Xiaowei
Walter Roberson
Walter Roberson vor etwa 4 Stunden
nvars = 1; %number of variables
intcon = 1; %first variable has integer constraints
A = []; b = [];
Aeq = []; beq = [];
lb = -100; ub = 100;
nonlcon = [];
options = [];
results = gamultiobj(@(vars) ObjectiveFunction(vars/100), nvars, A, b, Aeq, beq, lb, ub, nonlcon, intcon, options);

Melden Sie sich an, um zu kommentieren.

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by