返回信息流优点:
Lingo优化问题更多的集中于对线性问题或简单的非线性问题的优化,此外如果模型为线性或简单的非线性问题,这种情况下一定能够找到全局最优解,而不是近似最优解。程序简单,代码较少,速度较快。
GA对于解决带有强非线性函数或强非线性约束条件的模型具有很大优势,程序流程比较简单,而且是一种框架,即可以在不同模型上用类似的GA程序。
缺点:
Lingo无法求解强非线性的优化模型,而且即使能够求解,速度相对求解线性优化问题慢了很多。同时Lingo与MATLAB无法接入编程,即数据导进导出比较麻烦。
GA即使解决最简单的优化问题时,也需要将整个遗传流程的代码写完整,有时繁琐一些,同时GA搜索得到的解有可能是全局近似最优解(取决于各种参数的选取),大多时候这个解与全局最优解相差特别小(数量级很小),但有时在求解特别强的非线性模型时,可能每次运行程序都会得到不同的解,有两种可能:很大的原因是各个搜索域得到的最优解差距很小,这样的情况下就存在很多接近全局最优解的全局近似解,而且分布在整个求解域;另外的原因就是“早熟现象”,即过早收敛,这与所选取的参数不当有很大关系。此外,GA不适合解决类似需要对序列进行操作的问题(不是不能,是不适合),如批作业处理问题、方体切割问题,有更匹配的算法解决,如动态规划。
这是一条镜像帖。来源:北邮人论坛 / math-model / #119同步于 2007/8/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
MathModel机器人发帖
[原创]Lingo与遗传算法的区别
Blue7TNT
2007/8/28镜像同步12 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
遗传算法具体应用(一切优化问题)
举例:
方体切割(动态规划算法)
单源最短路径Dijkstra(贪心算法)
旅商(TSP)问题(回溯法)
0-1背包问题(分支定界法)
出版社资源分配(二次规划)
【 在 Blue7TNT 的大作中提到: 】
: 优点:
: Lingo优化问题更多的集中于对线性问题或简单的非线性问题的优化,此外如果模型为线性或简单的非线性问题,这种情况下一定能够找到全局最优解,而不是近似最优解。程序简单,代码较少,速度较快。
: GA对于解决带有强非线性函数或强非线性约束条件的模型具有很大优势,程序流程比较简单,而且是一种框架,即可以在不同模型上用类似的GA程序。
: ...................
遗传算法基本特征:
全局搜索算法,与模拟退火类似,最终能收敛至当前最优解(可能是近似最优解)。
随机优化搜索。基本原理类似暴力搜索(即穷举法);但同时也是依据一定概率进行有方向性的搜索,类似模拟退火。
并行算法,同时产生很多搜索起始点(即很多搜索区域)。
是一种通用框架,并不局限于函数形式,算法有很强的适应性(区别于传统算法)。
求解带有强非线性函数或强非线性约束条件的模型时有特别大的优势。
【 在 Blue7TNT 的大作中提到: 】
: 优点:
: Lingo优化问题更多的集中于对线性问题或简单的非线性问题的优化,此外如果模型为线性或简单的非线性问题,这种情况下一定能够找到全局最优解,而不是近似最优解。程序简单,代码较少,速度较快。
: GA对于解决带有强非线性函数或强非线性约束条件的模型具有很大优势,程序流程比较简单,而且是一种框架,即可以在不同模型上用类似的GA程序。
: ...................
类似优化算法:
模拟退火算法
相对于遗传算法来说,参数控制更加复杂。
蚁群算法
书太厚了,没有尝试过,有兴趣的同学可以试试。
【 在 Blue7TNT 的大作中提到: 】
: 优点:
: Lingo优化问题更多的集中于对线性问题或简单的非线性问题的优化,此外如果模型为线性或简单的非线性问题,这种情况下一定能够找到全局最优解,而不是近似最优解。程序简单,代码较少,速度较快。
: GA对于解决带有强非线性函数或强非线性约束条件的模型具有很大优势,程序流程比较简单,而且是一种框架,即可以在不同模型上用类似的GA程序。
: ...................
蚁群算法很赞,,我用C实现过一个简单的找食物模型
【 在 Blue7TNT (冰淇淋) 的大作中提到: 】
: 类似优化算法:
: 模拟退火算法
: 相对于遗传算法来说,参数控制更加复杂。
: ...................
对,我们老师也给我们演示过一个例子,确实挺有意思的。
只是我当时没啥时间。
【 在 guohanqi 的大作中提到: 】
: 蚁群算法很赞,,我用C实现过一个简单的找食物模型
其它
遗传算法可以与其他算法相结合使用,如下两个算法。
神经网络,如与径向基函数神经网络(RBF)结合用于土壤空间插值的研究;或者与RBF网络结合用于建立基于时间窗滑动法的预测模型等,都能取到不错的效果,远比传统预测模型BP网络好得多,也比反馈性网络Elman要好,而且对于网络权值和阙值的训练也更高效,相对于神经网络工具箱自带的训练算法时间复杂度低得多;
模糊聚类,只做过一次,除了遗传算法参数的选取要求较高外,还要考虑好适应度函数的选取,不一定能达到很好的效果,应用也不太多。
更多其他结合的应用,期待大家brain storm!
【 在 Blue7TNT 的大作中提到: 】
: 优点:
: Lingo优化问题更多的集中于对线性问题或简单的非线性问题的优化,此外如果模型为线性或简单的非线性问题,这种情况下一定能够找到全局最优解,而不是近似最优解。程序简单,代码较少,速度较快。
: GA对于解决带有强非线性函数或强非线性约束条件的模型具有很大优势,程序流程比较简单,而且是一种框架,即可以在不同模型上用类似的GA程序。
: ...................
数学建模。。还是传统算法为主。。
毕竟不是科研
【 在 Blue7TNT (冰淇淋) 的大作中提到: 】
: 对,我们老师也给我们演示过一个例子,确实挺有意思的。
: 只是我当时没啥时间。
你的方向是?
传统算法实现相对比较容易,相当成熟
比如图像处理,全部算子化了
【 在 Blue7TNT (冰淇淋) 的大作中提到: 】
呵呵,我数学建模所学的这些差点就成了我研究生的方向了。
我觉得传统算法的作用已经淡化得很严重了,大部分时间在写代码,涉及不到算法。
【 在 guohanqi 的大作中提到: 】
: 数学建模。。还是传统算法为主。。
: 毕竟不是科研
为什么不是呢?
其实很多情况下,它求出的还是最优的,我觉得GA主要作用就是用于寻优啊。
当然,寻优可能是阶段型的目标,最终目的不一定就是寻优了。
【 在 Jarod 的大作中提到: 】
: GA不是求最优......