2007年12月10日星期一

关于matlab中ga工具箱自写函数的问题

昨天白天瞎忙,到了晚上才静下心来写gabl。在实现自己的creation、crossover、mutation等函数时,发现规定的参数不能满足要求,要添加额外的参数。看help里的介绍,两种添加额外变量的方法,总感觉不得法!
一直忙乎到10点多钟,跟踪了ga执行过程,才找到一点感觉~~ 和我原来想的不同,fitness function里的输入变量就是编码后的染色体(我认为是x值了),这和jgap里的类似,估计所有的ga包中都类似。还有一个灵感来自options参数。我本以为这是ga使用的,想不通为什么每次都要在规定参数里包含它,现在看来,由于它是一个structure,而又是在matlab中,因此我可以把自己需要的额外参数放在options里,这样就不用额外加参数了。
今天中午要去考倒桩,吃完中饭就要走,早上这点时间就用来实践昨晚的想法了~~

1 条评论:

刀巴虫子 说...

11点半了,还没忙乎出来,主要是fitness函数里没有option参数,想了又想,还是用global变量来实现吧,这样虽然uggly了一点,但容易实现,管不了那么多了!