Error in Matlab Genetic Algorithm optimization

1 回表示 (過去 30 日間)
Iro
Iro 2014 年 4 月 3 日
編集済み: Iro 2014 年 4 月 6 日
Hi,
I am using GA App in Matlab but by writing my own functions for Population creation, Crossover and Mutation. My population individuals are nxn matrices with 0 and 1 as elements. These matrices are evaluated by my Fitness function which returns a vector of scalar scores ( Vectorized = 'On' ).
In the GA App I choose the options ' Proportional ' for FitnessScaling and ' Roulette ' for Selection .
My problem is that after the scores calculation at the FitnessFcn the Optimization stops with the error " Conversion to double from cell is not possible " . And I do not understand where this error come from, either during Scaling or Selection . Is there anyway to identify the error source? I suspect that it is related to the fact that my population are matrices stored in cell arrays.
Does this mean that I also have to write my own Scaling and Selection functions? Or is there any other way to tackle it?
Thanks!

採用された回答

Sean de Wolski
Sean de Wolski 2014 年 4 月 3 日
dbstop if error
And look around
  3 件のコメント
Sean de Wolski
Sean de Wolski 2014 年 4 月 3 日
Just run the above at the command line. It turns on the debugger to stop automatically whenever an error is thrown. You can then see everything as it is at the time of the error. The bad function line/variable will probably stand out at this point.
Iro
Iro 2014 年 4 月 6 日
編集済み: Iro 2014 年 4 月 6 日
Thanks Sean!
I wonder if you also have a hint to this question:
Best!
Iro

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeGenetic Algorithm についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by