找回密码
 注册
Simdroid-非首页
查看: 144|回复: 4

[求助]约束条件下的遗传算法

[复制链接]
发表于 2009-8-19 23:01:30 | 显示全部楼层 |阅读模式 来自 瑞典
最近在做 约束条件下的遗传算法

使用的MATLAB 7.0.4版本

问题:
三个变量 1<x1<2, 2<x2<4, 3<x3<5
使用MATLAB7.0 自带的遗传算法工具箱GADS
键入 gatool
得到 界面
在右栏中 initial range 根据三个变量的范围给定初始值的范围。

但是运行后,
随后的变量值,会超出给定的初始值的变量范围

查找后,明白,gatool下,initial range 不能保证变量变化过程中的范围

请教  
有什么办法 可以实现变量一直在给定的范围内呢??
这个问题,跟MATLAB的版本有关系嘛? 因为曾看到有人说,有一个工具箱下,可以通过设置范围后,变量一直都是在范围内变化,不会超出。
 楼主| 发表于 2009-8-20 16:58:29 | 显示全部楼层 来自 瑞典
Simdroid开发平台
问题第一步 解决了
回答: 确实与MATLAB版本 有关系
在R2008a 版本下 可以控制变量范围
回复 不支持

使用道具 举报

发表于 2009-8-26 16:58:40 | 显示全部楼层 来自 浙江杭州
我也在做这方面的 可是优化的过程中为什么老出现复数?
回复 不支持

使用道具 举报

发表于 2009-8-28 09:56:06 | 显示全部楼层 来自 陕西西安
出现复数 应该是适应度计算有问题

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2009-9-12 22:57:57 | 显示全部楼层 来自 浙江杭州
lz问的应该是变量的上下限吧
GAtool工具箱里左侧Constraints栏里有个bounds:Lower=     Upper=
就是让你填变量的上下限向量(记住是向量,几个变量就是几维)
我用的是Matlab 7.5,其他版本只要有这个工具箱应该都是一样的
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-7 05:28 , Processed in 0.057529 second(s), 18 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表