学了lingo还用去学遗传算法什么的吗?感觉遗传算法、神经网络什么的,特别麻烦,用lingo直接就能算了呀,疑惑很久了

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/05 10:04:54

学了lingo还用去学遗传算法什么的吗?
感觉遗传算法、神经网络什么的,特别麻烦,用lingo直接就能算了呀,疑惑很久了

你提这个问题,说明你没有用lingo解决过大型、复杂优化问题.
lingo直接能算?你要看问题的性质和规模.要是没有有效算法的稍大一点问题,lingo是能算,但是时间也许需要几年、几个世纪.或许太阳系毁灭了还算不出了,只是“unknown”状态.这不是危言耸听.而且对于复杂的优化问题,lingo根本算不上强健,复杂优化问题很容易导致lingo崩溃(早期版本尤为突出,新出的14好一点),因为它主要针对经典问题采用经典算法求解.
遗传算法、神经网络这种智能优化算法就是用在这种场合的!可以减少运算时间,代价是求得的只是近似最优解.它们一定可以找到解.
但是实际使用时情况也许并不是这样.
对于大规模问题,你要得到可以接受的近似解,遗传算法、神经网络计算时间其实也会是天文数字,因为这些算法的每次迭代会耗费大量时间,而且需要大量迭代步数.而对于一个不可接受的近似解,用遗传算法得到它,往往倒不如简化假设、线性化模型用lingo求解.教科书上举的例子,正如你所言,lingo也可以很快算出来,遗传算法、神经网络根本就是脱了裤子放P.所以说,实际中,遗传算法、神经网络很鸡肋,只是某些问题可能真正有效.
总结一下:还是要学,原因很简单--有解总比无解好.

1、Lingo是商业软件,需要付费的;
2、你不知道Lingo的内部算法;
3、Lingo处理不了偏微分方程的约束,添加自定义函数复杂。