基于法医调查算法的函数寻优算法

文章目录

  • 一、理论基础
    • 1、法医调查算法
      • (1)步骤A1
      • (2)步骤A2
      • (3)步骤B1
      • (4)步骤B2
    • 2、FBI算法流程图
  • 二、仿真实验与结果分析
  • 三、参考文献

一、理论基础

1、法医调查算法

文献[1]提出了一种新的优化算法,称为法医调查算法(Forensic-based investigation algorithm, FBI),其灵感来自警官使用的嫌疑人调查-定位-追捕过程。
警察的大规模案件调查通常包括五个步骤,其中步骤2、3和4可视为一个循环过程。

  1. 立案:对这起事件的调查从最先到达犯罪现场的警察发现的信息开始。这些信息构成了调查小组成员的主要出发点,他们从遵循几个标准程序开始,以获得可能发生的事情的第一印象。小组成员调查犯罪现场、受害者、可能的嫌疑人及其背景信息;小组找到证人并询问证人。
  2. 分析调查结果:通过在团队简报中共享信息,团队成员试图获得所有可用信息的概述。在第二步中,团队评估信息,并尝试将信息与他们对案件已有的印象联系起来,以评估可能的嫌疑人。
  3. 调查方向:在调查的第三步中,团队成员根据对调查结果的分析,做出几种猜想(包括犯罪场景、犯罪动机和调查路线)。团队再次评估调查结果,得出新的方向,或确认、更改或终止现有的调查方向。
  4. 行动:在确定了调查路线和优先顺序后,警察团队就要采取的进一步行动做出决定。这一步骤与关于优先事项的决策密切相关,通常首先追求最有希望的研究方向。所采取的行动再次提供了新的信息。一旦获得该信息,调查小组将根据现有信息解释其含义或含义。对新发现的分析可能会导致调查和行动方向的调整。
  5. 起诉:在做出起诉决定之前,一旦确定了一名严重嫌疑人,诉讼就结束了。

FBI算法模型主要分为四个部分,下面详细介绍。

(1)步骤A1

该部分对应着“分析调查结果”步骤。该小组评估了信息,并初步确定了可能的可疑地点。在其他调查结果的背景下,对嫌疑人的每个可能位置进行调查。首先,根据 X A i X_{A_i} XAi和其他可疑位置的相关信息,推断出 X A i X_{A_i} XAi的一个新可疑位置,命名为 X A 1 i X_{A1_i} XA1i。在这项工作中,假设每个人在其他人的影响下移动。其数学模型如下: X A 1 i j = X A i j + ( ( r a n d − 0.5 ) ∗ 2 ) ∗ ( ∑ a = 1 a 1 X A a j ) / a 1 (1) X_{A1_{ij}}=X_{A_{ij}}+((rand-0.5)^*2)^*\left(\sum_{a=1}^{a_1}X_{A_{aj}}\right)/a_1\tag{1} XA1ij=XAij+((rand0.5)2)(a=1a1XAaj)/a1(1)其中, j = 1 , 2 , ⋯   , D j=1,2,\cdots,D j=1,2,,D D D D为问题的维数; ( ( r a n d − 0.5 ) ∗ 2 ) ((rand-0.5)^*2) ((rand0.5)2)表示一个 [ − 1 , 1 ] [-1,1] [1,1]的随机数; r a n d rand rand表示一个 [ 0 , 1 ] [0,1] [0,1]的随机数; a 1 ∈ { 1 , 2 , ⋯   , n − 1 } a_1\in\{1,2,\cdots,n-1\} a1{1,2,,n1}表示影响 X A i j X_{A_{ij}} XAij移动个体数量; a = 1 , 2 , ⋯   , a 1 a=1,2,\cdots,a_1 a=1,2,,a1。实验表明, a 1 = 2 a1=2 a1=2能够在较短的计算时间内产生最佳结果。因此,新的可疑位置 X A 1 i X_{A1_i} XA1i如式(2)计算; p A i p_{A_i} pAi定义为嫌疑人在 X A i X_{A_i} XAi位置的概率(目标值),这意味着 p A i p_{A_i} pAi X A i X_{A_i} XAi位置的目标值(即 p A i = f o b j e c t i v e ( A i ) p_{A_i}=f_{objective}(A_i) pAi=fobjective(Ai))。将保留嫌疑人存在概率更大(目标值)的位置,而放弃另一个位置。 X A 1 i j = X A i j + ( ( r a n d 1 − 0.5 ) ∗ 2 ) ∗ ( X A i j − ( X A k j + X A h j ) / 2 ) (2) X_{A1_{ij}}=X_{A_{ij}}+((rand_1-0.5)^*2)^*(X_{A_{ij}}-(X_{A_{kj}}+X_{A_{hj}})/2)\tag{2} XA1ij=XAij+((rand10.5)2)(XAij(XAkj+XAhj)/2)(2)其中, k k k h h h i i i是三个可疑位置: { k , h , i } ∈ { 1 , 2 , ⋯   , N P } \{k,h,i\}\in\{1,2,\cdots,NP\} {k,h,i}{1,2,,NP} k k k h h h随机选择; j = 1 , 2 , ⋯   , D j=1,2,\cdots,D j=1,2,,D N P NP NP是可疑位置的数量; D D D为问题的维数; ( ( r a n d 1 − 0.5 ) ∗ 2 ) ((rand_1-0.5)^*2) ((rand10.5)2)表示一个 [ − 1 , 1 ] [-1,1] [1,1]的随机数; r a n d 1 rand_1 rand1表示一个 [ 0 , 1 ] [0,1] [0,1]的随机数。

(2)步骤A2

该部分对应着“调查方向”步骤。调查人员将每个可疑位置的概率与其他位置的概率进行比较,以确定应进一步调查的最可能的可疑位置。当优化是一个最小化问题时, p w o r s t p_{worst} pworst是最低概率(最差目标值), p b e s t p_{best} pbest是最高概率(最佳目标值), X b e s t X_{best} Xbest是最佳位置。可以理解的是,虽然 p w o r s t p_{worst} pworst p b e s t p_{best} pbest不同,但任何概率较低的位置都可能会被放弃,转而选择另一个概率较高的位置。使用式(3)评价每个位置的概率 P r o b ( X A i ) Prob(X_{A_i}) Prob(XAi) P r o b ( X A i ) Prob(X_{A_i}) Prob(XAi)的高值对应于该位置的高概率。 P r o b ( X A i ) = ( p w o r s t − p A i ) / ( p w o r s t − p b e s t ) (3) Prob(X_{A_i})=(p_{worst}-p_{A_i})/(p_{worst}-p_{best})\tag{3} Prob(XAi)=(pworstpAi)/(pworstpbest)(3)搜索位置的更新受其他可疑位置的方向影响。然而,并非所有方向都改变了;更改更新位置中随机选择的方向,以增加搜索区域的多样性。在这一步中, X A i X_{A_i} XAi的移动只受最佳个体和其他随机个体的影响。步骤A2类似于步骤A1,式(4)给出了移动的一般公式。 X A 2 i = X b e s t + ∑ b = 1 a 2 α b ∗ X A b j (4) X_{A2_i}=X_{best}+\sum_{b=1}^{a_2}{\alpha_b}^*X_{A_{bj}}\tag{4} XA2i=Xbest+b=1a2αbXAbj(4)其中, X b e s t X_{best} Xbest为最佳位置; a 2 a_2 a2是影响 X A 2 i X_{A2_i} XA2i移动的个体数: a 2 ∈ { 1 , 2 , ⋯   , n − 1 } a_2\in\{1,2,\cdots,n-1\} a2{1,2,,n1} b = 1 , 2 , ⋯   , a 2 b=1,2,\cdots,a_2 b=1,2,,a2 α b ( α b ∈ [ − 1 , 1 ] ) \alpha_b(\alpha_b\in[-1,1]) αb(αb[1,1])是其他个体移动的有效系数。数值实验得出 a 2 = 3 a_2=3 a2=3。因此,使用式(5)生成新的可疑位置 X A 2 i j X_{A2_{ij}} XA2ij。然后计算概率(目标值),以确定是否更新可疑位置。 X A 2 i j = X b e s t + X A d j + r a n d 5 ∗ ( X A e j − X A f j ) (5) X_{A2_{ij}}=X_{best}+X_{A_{dj}}+{rand_5}^*(X_{A_{ej}}-X_{A_{fj}})\tag{5} XA2ij=Xbest+XAdj+rand5(XAejXAfj)(5)其中, X b e s t X_{best} Xbest是在步骤A1中更新的最佳位置, r a n d 5 rand_5 rand5 [ 0 , 1 ] [0,1] [0,1]范围内的随机数; d , e , f , i d,e,f,i d,e,f,i为四个可疑位置: { d , e , f , i } ∈ { 1 , 2 , ⋯   , N P } \{d,e,f,i\}\in\{1,2,\cdots,NP\} {d,e,f,i}{1,2,,NP} d , e d,e d,e f f f随机选择; j = 1 , 2 , ⋯   , D j=1,2,\cdots,D j=1,2,,D

(3)步骤B1

该部分对应着“行动”步骤。在收到调查小组关于最佳位置的报告后,追捕小组中的所有特工必须以协调的方式接近目标,以逮捕嫌疑人。根据式(6),每个代理 B i B_i Bi接近具有最佳概率(目标值)的位置。如果新接近的位置产生的概率(目标值)比旧位置的概率( p B i p_{Bi} pBi)更好,则更新该位置。 X B 1 i j = r a n d 6 ∗ X B i j + r a n d 7 ∗ ( X b e s t − X B i j ) (6) X_{B1_{ij}}={rand_6}^*X_{B_{ij}}+{rand_7}^*(X_{best}-X_{B_{ij}})\tag{6} XB1ij=rand6XBij+rand7(XbestXBij)(6)其中, X b e s t X_{best} Xbest是调查小组提供的最佳位置; r a n d 6 rand_6 rand6 r a n d 7 rand_7 rand7为两个 [ 0 , 1 ] [0,1] [0,1]范围内的随机数; j = 1 , 2 , ⋯   , D j=1,2,\cdots,D j=1,2,,D

(4)步骤B2

该部分扩展了“行动”步骤。无论何时采取任何行动,警察都会向总部报告新地点的概率(目标值)。总部立即更新位置,并命令追捕小组接近该位置。此时,每个代理 B i B_i Bi与所有其他代理进行密切协调;代理 B i B_i Bi向最佳位置移动,代理 B i B_i Bi受到其他团队成员(代理 B r B_r Br,概率为 p B r p_{B_r} pBr)的影响。如果 p B r p_{B_r} pBr优于 p B i p_{B_i} pBi,则代理 B i B_i Bi(即 X B 2 i X_{B2_i} XB2i)的新位置通过式(7)计算;否则,通过式(8)计算。当新发现的位置达到比旧位置更大的概率(目标值)时,将更新该位置。 X B 2 i j = X B r j + r a n d 8 ∗ ( X B r j − X B i j ) + r a n d 9 ∗ ( X b e s t − X B r j ) (7) X_{B2_{ij}}=X_{B_{rj}}+{rand_8}^*(X_{B_{rj}}-X_{B_{ij}})+{rand_9}^*(X_{best}-X_{B_{rj}})\tag{7} XB2ij=XBrj+rand8(XBrjXBij)+rand9(XbestXBrj)(7) X B 2 i j = X B i j + r a n d 10 ∗ ( X B i j − X B r j ) + r a n d 11 ∗ ( X b e s t − X B i j ) (8) X_{B2_{ij}}=X_{B_{ij}}+{rand_{10}}^*(X_{B_{ij}}-X_{B_{rj}})+{rand_{11}}^*(X_{best}-X_{B_{ij}})\tag{8} XB2ij=XBij+rand10(XBijXBrj)+rand11(XbestXBij)(8)其中, X b e s t X_{best} Xbest是步骤B1中提供的最佳位置, r a n d 8 , r a n d 9 , r a n d 10 rand_8,rand_9,rand_{10} rand8,rand9,rand10 r a n d 11 rand_{11} rand11 [ 0 , 1 ] [0,1] [0,1]范围内的随机数; r r r i i i为两个警察代理: { r , i } ∈ { 1 , 2 , ⋯   , N P } \{r,i\}\in\{1,2,\cdots,NP\} {r,i}{1,2,,NP},且 r r r随机选择; j = 1 , 2 , ⋯   , D j=1,2,\cdots,D j=1,2,,D

2、FBI算法流程图

FBI算法流程图如图1所示。
基于法医调查算法的函数寻优算法_第1张图片

图1 FBI算法流程图

二、仿真实验与结果分析

将FBI与FPA、SOS、ABC和TLBO进行对比,以常用23个测试函数中F1、F2(单峰函数/30维)、F7、F9(多峰函数/30维)、F19、F20(固定维度多峰函数/3维、6维)为例,实验设置种群规模为30,最大迭代次数为500,每种算法独立运算30次,结果显示如下:
基于法医调查算法的函数寻优算法_第2张图片基于法医调查算法的函数寻优算法_第3张图片基于法医调查算法的函数寻优算法_第4张图片基于法医调查算法的函数寻优算法_第5张图片基于法医调查算法的函数寻优算法_第6张图片基于法医调查算法的函数寻优算法_第7张图片

函数:F1
FBI:最优值: 0, 最差值: 0, 平均值: 0, 标准差: 0
FPA:最优值: 20.0273, 最差值: 128.0183, 平均值: 69.3226, 标准差: 27.0819
SOS:最优值: 4.1711e-139, 最差值: 3.3369e-134, 平均值: 1.9134e-135, 标准差: 6.1284e-135
ABC:最优值: 0.17171, 最差值: 293.8049, 平均值: 58.8109, 标准差: 83.8767
TLBO:最优值: 1.2837e-129, 最差值: 2.2041e-123, 平均值: 1.4697e-124, 标准差: 4.9021e-124
函数:F2
FBI:最优值: 8.3701e-211, 最差值: 2.786e-208, 平均值: 4.3167e-209, 标准差: 0
FPA:最优值: 4.6242, 最差值: 15.9339, 平均值: 9.0374, 标准差: 2.8059
SOS:最优值: 3.2472e-70, 最差值: 1.6823e-68, 平均值: 3.3079e-69, 标准差: 3.8518e-69
ABC:最优值: 97.4933, 最差值: 504000.5766, 平均值: 55819.6341, 标准差: 112308.8332
TLBO:最优值: 1.9098e-64, 最差值: 1.3213e-61, 平均值: 1.6032e-62, 标准差: 2.8034e-62
函数:F7
FBI:最优值: 3.8569e-06, 最差值: 0.00023172, 平均值: 8.4525e-05, 标准差: 5.8797e-05
FPA:最优值: 0.045801, 最差值: 0.19923, 平均值: 0.11089, 标准差: 0.036252
SOS:最优值: 8.7197e-05, 最差值: 0.0010881, 平均值: 0.000549, 标准差: 0.00023759
ABC:最优值: 0.012168, 最差值: 0.13667, 平均值: 0.083641, 标准差: 0.036229
TLBO:最优值: 1.5056e-05, 最差值: 0.001457, 平均值: 0.00053547, 标准差: 0.00031241
函数:F9
FBI:最优值: 0, 最差值: 0, 平均值: 0, 标准差: 0
FPA:最优值: 148.2451, 最差值: 201.5515, 平均值: 174.7268, 标准差: 11.7551
SOS:最优值: 0, 最差值: 0, 平均值: 0, 标准差: 0
ABC:最优值: 254.1587, 最差值: 337.063, 平均值: 307.9883, 标准差: 15.4477
TLBO:最优值: 0, 最差值: 0, 平均值: 0, 标准差: 0
函数:F19
FBI:最优值: -3.8628, 最差值: -3.8628, 平均值: -3.8628, 标准差: 2.7101e-15
FPA:最优值: -3.8628, 最差值: -3.8628, 平均值: -3.8628, 标准差: 2.0748e-15
SOS:最优值: -3.8628, 最差值: -3.8628, 平均值: -3.8628, 标准差: 2.7101e-15
ABC:最优值: -3.8628, 最差值: -3.8621, 平均值: -3.8626, 标准差: 0.00016766
TLBO:最优值: -3.8628, 最差值: -3.8628, 平均值: -3.8628, 标准差: 2.6684e-15
函数:F20
FBI:最优值: -3.322, 最差值: -3.322, 平均值: -3.322, 标准差: 1.0572e-07
FPA:最优值: -3.322, 最差值: -3.3215, 平均值: -3.3219, 标准差: 0.0001408
SOS:最优值: -3.322, 最差值: -3.2031, 平均值: -3.2863, 标准差: 0.055415
ABC:最优值: -3.3121, 最差值: -3.2564, 平均值: -3.2841, 标准差: 0.015342
TLBO:最优值: -3.322, 最差值: -3.102, 平均值: -3.2677, 标准差: 0.072536

实验结果表明:FBI算法的性能明显优于对比算法。

三、参考文献

[1] Jui-Sheng Chou, Ngoc-Mai Nguyen. FBI inspired meta-optimization[J]. Applied Soft Computing Journal, 2020, 93: 106339.

你可能感兴趣的:(最优化问题,matlab)