Why does my function abc give error with optimtool

조회 수: 2 (최근 30일)
Sadiq Akbar
Sadiq Akbar 2022년 7월 12일
편집: Sadiq Akbar 2022년 7월 14일
I have a function file abc. I want to run it with optimtool ga. I do settings in the Optimtool as below:
Solver: ga-Genetic Algorithm
Fitness function: @abc
Number of variable 6
Bounds Lower: [0 0 0 0 0 0] Upper:[180 180 180 180 180 180]
-----------------------------
After running it, it gives the following error:
Optimization running.
Error running optimization.
Incorrect dimensions for matrix multiplication. Check that the number of columns in the first matrix matches the number of rows in the second matrix. To perform elementwise multiplication, use '.*'.

채택된 답변

Torsten
Torsten 2022년 7월 12일
The product r*k in the line
A = exp(-1j*r*k);% Steering matrix
is not defined.
k is (3x3), r is (Nx3) where N = 10.
Setting N = 3 would make the product to be defined.
  댓글 수: 6
Sadiq Akbar
Sadiq Akbar 2022년 7월 14일
Thank you very much dear Torsten for your help. But now there is one issue. When I keep the bounds as:
Lower=[0;0;0;0;0;0] Upper=[360;360;360;180;180;180]
It gives wrong results. But when I change them to:
Lower=[0;0;0;0;0;0] Upper=[180;180;180;180;180;180]
then it gives good results. Although the actual range is the 1st case. So what do I do now?
Torsten
Torsten 2022년 7월 14일
I have no experience with ga.
If your problem is such that you can use "fmincon" or some other deterministic optimizer instead of ga, you should do so.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Problem-Based Optimization Setup에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by