各种常见OPTIMIZATION方法之简单比较
软件: ANSYS
文章全局:数理专业领域的人常常会用到优化方法追求最低或最高的“业绩”。为了达成目标,方法各异,有了解析法,有数值法,还有智能优化算法。此篇将要讲述的是,它们间如何迥异,以及各自的 advantages 和 drawbacks。
一、导论:优化初识
优化,简单就是参数选择、调节,找到产品、工程或程序性的最优化状态。本质是算法缩小区间、调整变量、模拟景观来找寻终极的优化目标,如最低能量消耗、最大利润率、最小成本、最高精度等。从某种意义上讲,它是在算法的世界里,实现理想的修行法。
二、解析优化法:纯数学的魔法
解析优化法,顾名思义,就是利用微积分、线性代数等数学理论,对目标函数的分析,直接求解出其最优解的方法。这类方法在理论正确性上几乎是完美的,求解效率也比较高,且给出严格解析的解。它的局限在于根本条件:目标函数要是连续、可微的,并且在一定条件下,求解的空间有限。
三、数值优化:借助计算器的翅膀
数值优化法,听上去就多了些实践的味道。它并非凭借手起刀落的纯数学解法,而是利用计算机对函数进行逼近、迭代,最后得出解。这种方法的好处在于它几乎不挑目标函数的性质,无论是复杂的非线性函数还是有"牙齿"的不连续函数,它都能一试策略地寻求解。从应用角度看,它略胜解析法的地方在于灵活性和普遍性,但相应的缺点是稳定性依赖于算法选择,迭代的精确程度受到计算资源的限制。
四、智能优化算法:真正的变数大师
智能优化算法,是一类模拟自然过程的优化方法。它包括遗传算法、粒子群优化、蚁群算法、深度强化学习等方法。这些方法以真实世界的优化情况为灵感,利用数学模型模拟和解决实际问题中的“优化”难题。比如遗传算法借鉴了自然选择和进化的过程,把问题的可能解像物种一样放入“种群”,让它们“交配”、“突变”、“优胜劣汰”,逐渐寻找到最佳觅食策略的那只“狮子王国”。尽管这些算法在得到复杂问题中的优化解有着时代的创新意义,但在计算资源需求及理解复杂性上与前面方法有所区别。