智能优化算法:供需优化算法


文章目录

  • 智能优化算法:供需优化算法
  • 1.算法原理
  • 2.实验结果
  • 3.参考文献
  • 4.Matlab



摘要:供需优化(supply-demand-based optimization,SDO)算法是 Zhao 等于 2019 年受经济学供需机制的启发而提出的一种新型元启发式优化算法。该算法在数学上模拟了消费者的需求关系和生产者的供给关系,通过将供求机制之稳定模式和非稳定模式引入到 SDO 算法中,利用两种模式在给定空间中进行局部搜索和全局搜索求解待优化问题。与传统群智能算法相比,SDO 算法收敛速度快、寻优精度高、调节参数少,具有较好的探索和开发能力。

1.算法原理

SDO 数学描述简述如下:

(1) SDO 算法初始化。假设有 智能优化算法:供需优化算法-附代码_python 个市场,每个市场有智能优化算法:供需优化算法-附代码_深度学习_02 种不同的商品,每种商品都有一定的数量和价格。市场中智能优化算法:供需优化算法-附代码_深度学习_02 种商品价格表示优化问题 智能优化算法:供需优化算法-附代码_深度学习_02 维变量的一组候选解,同时将市场中 智能优化算法:供需优化算法-附代码_深度学习_02 种商品数量作为一组可行解进行评估,如果可行解优于候选解,则可行解替换候选解。智能优化算法:供需优化算法-附代码_python 个市场商品价格和商品数量分别用 智能优化算法:供需优化算法-附代码_机器学习_07智能优化算法:供需优化算法-附代码_深度学习_08 两个矩阵表示:
智能优化算法:供需优化算法-附代码_深度学习_09

智能优化算法:供需优化算法-附代码_python_10

式中: 智能优化算法:供需优化算法-附代码_算法_11智能优化算法:供需优化算法-附代码_python_12分别为第智能优化算法:供需优化算法-附代码_人工智能_13个商品价格和数量;智能优化算法:供需优化算法-附代码_机器学习_14智能优化算法:供需优化算法-附代码_python_15分别为第智能优化算法:供需优化算法-附代码_算法_16个商品在第智能优化算法:供需优化算法-附代码_人工智能_13

利用适应度函数分别对每个市场中的商品价格和数量进行评估,对于智能优化算法:供需优化算法-附代码_python个市场,商品价格和商品数量的适应度分别为:
智能优化算法:供需优化算法-附代码_python_19
(2)商品均衡数量与均衡价格。假设每种商品的均衡价格智能优化算法:供需优化算法-附代码_机器学习_20和均衡数量智能优化算法:供需优化算法-附代码_人工智能_21在每次迭代过程中都是可变的,从每个市场商品数量集合中选择一种商品数量作为其数量均衡向量,其市场适应度值越大,表示每个市场所选商品数量的概率就越大。同时,每个市场也可以根据其概率从商品价格集合中选择一种商品价格或以所有市场商品价格的平均值作为均衡价格。商品均衡数量 智能优化算法:供需优化算法-附代码_人工智能_21表示如下:
智能优化算法:供需优化算法-附代码_人工智能_23
其中:
智能优化算法:供需优化算法-附代码_python_24

智能优化算法:供需优化算法-附代码_人工智能_25

式中:智能优化算法:供需优化算法-附代码_人工智能_26为商品数量 智能优化算法:供需优化算法-附代码_python_12 的适应度值;智能优化算法:供需优化算法-附代码_深度学习_28为比选算子(roulette wheel selection)。

商品均衡价格智能优化算法:供需优化算法-附代码_机器学习_20表示如下:
智能优化算法:供需优化算法-附代码_人工智能_30
其中:
智能优化算法:供需优化算法-附代码_算法_31

智能优化算法:供需优化算法-附代码_算法_32

式中:智能优化算法:供需优化算法-附代码_人工智能_33为商品价格智能优化算法:供需优化算法-附代码_算法_11的适应度值;智能优化算法:供需优化算法-附代码_python_35

供给函数和需求函数。依据均衡数量 智能优化算法:供需优化算法-附代码_人工智能_21、均衡价格智能优化算法:供需优化算法-附代码_机器学习_20分别给出供给函数和需求函数:
智能优化算法:供需优化算法-附代码_算法_38

智能优化算法:供需优化算法-附代码_算法_39

式中:智能优化算法:供需优化算法-附代码_算法_40智能优化算法:供需优化算法-附代码_机器学习_41分别为第 智能优化算法:供需优化算法-附代码_python_42 次迭代第智能优化算法:供需优化算法-附代码_人工智能_13个商品价格和数量;智能优化算法:供需优化算法-附代码_机器学习_44智能优化算法:供需优化算法-附代码_算法_45 分别为需求权重和供给权重,通过调整智能优化算法:供需优化算法-附代码_算法_46

将式(6)插入式(7)中,可以将需求算式重写为:
智能优化算法:供需优化算法-附代码_算法_47
供应权重 智能优化算法:供需优化算法-附代码_机器学习_44 和需求权重 智能优化算法:供需优化算法-附代码_算法_45 分别为:
智能优化算法:供需优化算法-附代码_人工智能_50

智能优化算法:供需优化算法-附代码_算法_51

式中:智能优化算法:供需优化算法-附代码_算法_52为最大迭代次数。用变量智能优化算法:供需优化算法-附代码_深度学习_53表示供应权重 智能优化算法:供需优化算法-附代码_机器学习_44和需求权重 智能优化算法:供需优化算法-附代码_算法_45的乘积,可以得到:
智能优化算法:供需优化算法-附代码_深度学习_56
变量智能优化算法:供需优化算法-附代码_深度学习_53有助于 SDO 算法在勘探和开发之间平稳过渡。 智能优化算法:供需优化算法-附代码_机器学习_58 属稳定模式,通过调整供应权重 智能优化算法:供需优化算法-附代码_机器学习_44 和需求权重 智能优化算法:供需优化算法-附代码_算法_45 得到均衡价格 智能优化算法:供需优化算法-附代码_机器学习_20 周围不同的商品价格,这些商品价格可以通过随机数 智能优化算法:供需优化算法-附代码_深度学习_62 在当前价格和均衡价格之间随机变化,稳定模式机制强调“开发”以改善SDO 算法的局部勘探能力。智能优化算法:供需优化算法-附代码_算法_63

算法步骤:

step1:设置 SDO 算法市场群体数智能优化算法:供需优化算法-附代码_算法_64,最大迭代次数智能优化算法:供需优化算法-附代码_算法_52,问题维度,搜索空间。随机初始化商品价格智能优化算法:供需优化算法-附代码_算法_11 和商品数量 智能优化算法:供需优化算法-附代码_python_12

step2:计算商品价格智能优化算法:供需优化算法-附代码_算法_11和商品数量智能优化算法:供需优化算法-附代码_python_12的适应度值 智能优化算法:供需优化算法-附代码_人工智能_70智能优化算法:供需优化算法-附代码_人工智能_71 ,如果 智能优化算法:供需优化算法-附代码_人工智能_71 优于 智能优化算法:供需优化算法-附代码_人工智能_70,则用智能优化算法:供需优化算法-附代码_python_12 代替 智能优化算法:供需优化算法-附代码_算法_11 ,保存智能优化算法:供需优化算法-附代码_深度学习_76

step3确定供应权重智能优化算法:供需优化算法-附代码_机器学习_44和需求权重智能优化算法:供需优化算法-附代码_算法_45

step4:对于每个市场,利用式(4)确定均衡数量智能优化算法:供需优化算法-附代码_人工智能_21 ;利用式(5)确定均衡价格智能优化算法:供需优化算法-附代码_深度学习_80

step5:利用式(6) 更新商品数量智能优化算法:供需优化算法-附代码_python_12;利用式(7)更新商品价格 智能优化算法:供需优化算法-附代码_算法_11 。基于式(14)计算商品价格智能优化算法:供需优化算法-附代码_算法_11 和商品数量 智能优化算法:供需优化算法-附代码_python_12 的适应度值智能优化算法:供需优化算法-附代码_人工智能_70智能优化算法:供需优化算法-附代码_人工智能_71,如果智能优化算法:供需优化算法-附代码_人工智能_71 优于智能优化算法:供需优化算法-附代码_人工智能_70 ,则用智能优化算法:供需优化算法-附代码_python_12 代替智能优化算法:供需优化算法-附代码_算法_11 ,保存智能优化算法:供需优化算法-附代码_深度学习_76

step6:令 t=t+1。判断算法是否达到终止条件,若是,输出最优解 x best ,算法结束;否则重复step2~step6。

2.实验结果

智能优化算法:供需优化算法-附代码_python_92

3.参考文献

[1] Engineering; Hebei University of Engineering Details Findings in Engineering (Supply-demand-based Optimization: a Novel Economics-inspired Algorithm for Global Optimization)[J]. Journal of Engineering,2019,{4}{5}:

[1]崔东文,李代华.基坑变形预测的改进供需优化算法-指数幂乘积模型[J].水利水电科技进展,2020,40(04):43-50.

4.Matlab

个人资料介绍