基于蚁群算法的火力分配方法与流程

文档序号:12469431阅读:来源:国知局

技术特征:

1.一种基于蚁群算法的火力分配方法,其特征在于,包括以下步骤:

第一步,建立空战火力分配模型,包括空战威胁度模型和火力分配决策模型;

设红方N架战机与蓝方K架战机进行空战对抗,其中红方战机与蓝方战机的性能不同,且红方的预警机能够准确识别蓝方战机的型号、速度以及空间位置;设Ri为第i架红方战机,Bj为第j架蓝方战机,为Ri的轴线方向,为Ri的飞行速度,εji为Bj相对于Ri的离轴角,为Bj的轴线方向,为Bj的飞行速度,εij为Ri相对于Bj的离轴角,LOS为双方的视线方向,Dij为Ri与Bj之间距离;

(1)根据以上空战态势,分别针对角度威胁、距离威胁、速度危险和能力威胁进行建模,然后在此基础上建立蓝方对整个红方编队的整体空战威胁度模型;

(1.1)角度威胁函数:

式中Sij1表示Bj对Ri的角度威胁度,与Ri和Bj的离轴角之差成正比;

(1.2)距离威胁函数:

<mrow> <msup> <msub> <mi>S</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mn>2</mn> </msup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mrow> <msub> <mi>D</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&le;</mo> <msub> <mi>T</mi> <msub> <mi>a</mi> <mi>b</mi> </msub> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>1</mn> <mo>-</mo> <mfrac> <mrow> <msub> <mi>D</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>T</mi> <msub> <mi>a</mi> <mi>b</mi> </msub> </msub> </mrow> <mrow> <msub> <mi>L</mi> <msub> <mi>r</mi> <mi>b</mi> </msub> </msub> <mo>-</mo> <msub> <mi>T</mi> <msub> <mi>a</mi> <mi>b</mi> </msub> </msub> </mrow> </mfrac> </mrow> </mtd> <mtd> <mrow> <msub> <mi>T</mi> <msub> <mi>a</mi> <mi>b</mi> </msub> </msub> <mo>&le;</mo> <msub> <mi>D</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&le;</mo> <msub> <mi>L</mi> <msub> <mi>r</mi> <mi>b</mi> </msub> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <msub> <mi>D</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&GreaterEqual;</mo> <msub> <mi>L</mi> <msub> <mi>r</mi> <mi>b</mi> </msub> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>

式中表示蓝方导弹的攻击距离,表示蓝方雷达的最大探测距离;

(1.3)速度威胁函数:

<mrow> <msup> <msub> <mi>S</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mn>3</mn> </msup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mrow> <msub> <mi>V</mi> <msub> <mi>R</mi> <mi>i</mi> </msub> </msub> <mo>&le;</mo> <mn>0.5</mn> <mo>&times;</mo> <msub> <mi>V</mi> <msub> <mi>B</mi> <mi>j</mi> </msub> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>1.5</mn> <mo>-</mo> <mfrac> <msub> <mi>V</mi> <msub> <mi>R</mi> <mi>i</mi> </msub> </msub> <msub> <mi>V</mi> <msub> <mi>B</mi> <mi>j</mi> </msub> </msub> </mfrac> </mrow> </mtd> <mtd> <mrow> <mn>0.5</mn> <mo>&times;</mo> <msub> <mi>V</mi> <msub> <mi>B</mi> <mi>j</mi> </msub> </msub> <mo>&le;</mo> <msub> <mi>V</mi> <msub> <mi>R</mi> <mi>i</mi> </msub> </msub> <mo>&le;</mo> <mn>1.4</mn> <mo>&times;</mo> <msub> <mi>V</mi> <msub> <mi>B</mi> <mi>j</mi> </msub> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <msub> <mi>V</mi> <msub> <mi>R</mi> <mi>i</mi> </msub> </msub> <mo>&GreaterEqual;</mo> <mn>1.4</mn> <mo>&times;</mo> <msub> <mi>V</mi> <msub> <mi>B</mi> <mi>j</mi> </msub> </msub> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>

式中表示红方战机速度,表示蓝方战机速度;当红方较蓝方的速度越大,则Bj对Ri的速度威胁度越小;

(1.4)能力威胁函数:

空战能力公式为:

C=[ln B+ln(∑A1+1)+ln(∑A2)]ε1ε2ε3ε4 (4)

式中B为战机的机动性能参数;A1是火力攻击能力参数;A2为其雷达探测能力衡量参数;ε1是飞行员的操控能力系数;ε2是战机生存能力系数;ε3是战机航程范围系数;ε4是战机电子对抗能力系数;战机的空战能力C的值可以根据飞机型号查表得出;

定义能力威胁函数为:

<mrow> <msup> <msub> <mi>S</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mn>4</mn> </msup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mrow> <mfrac> <msub> <mi>C</mi> <mi>j</mi> </msub> <msub> <mi>C</mi> <mi>i</mi> </msub> </mfrac> <mo>&GreaterEqual;</mo> <mn>1.5</mn> </mrow> </mtd> <mtd> <mn>0.75</mn> </mtd> <mtd> <mrow> <mn>1.5</mn> <mo>&GreaterEqual;</mo> <mfrac> <msub> <mi>C</mi> <mi>j</mi> </msub> <msub> <mi>C</mi> <mi>i</mi> </msub> </mfrac> <mo>&gt;</mo> <mn>1</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0.5</mn> </mtd> <mtd> <mrow> <mfrac> <msub> <mi>C</mi> <mi>j</mi> </msub> <msub> <mi>C</mi> <mi>i</mi> </msub> </mfrac> <mo>=</mo> <mn>1</mn> </mrow> </mtd> <mtd> <mn>0.25</mn> </mtd> <mtd> <mrow> <mn>1</mn> <mo>&gt;</mo> <mfrac> <msub> <mi>C</mi> <mi>j</mi> </msub> <msub> <mi>C</mi> <mi>i</mi> </msub> </mfrac> <mo>&GreaterEqual;</mo> <mn>0.3</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mrow> <mfrac> <msub> <mi>C</mi> <mi>j</mi> </msub> <msub> <mi>C</mi> <mi>i</mi> </msub> </mfrac> <mo>&lt;</mo> <mn>0.3</mn> </mrow> </mtd> <mtd> <mrow></mrow> </mtd> <mtd> <mrow></mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> </mrow>

其中,Ci表示红方战机的空战能力,Cj表示蓝方战机的空战能力;

(1.5)结合以上威胁函数的设定可得蓝方战机Bj对红方战机Ri的空战威胁度为:

Sij=ω1Sij12Sij23Sij34Sij4 (6)

其中0<ωi<1为权重,且∑ωi=1;

蓝方战机Bj对整个红方编队的威胁度为:

<mrow> <msub> <mi>S</mi> <mi>j</mi> </msub> <mo>=</mo> <munder> <mo>&Sigma;</mo> <mi>i</mi> </munder> <msub> <mi>S</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>7</mn> <mo>)</mo> </mrow> </mrow>

(2)火力分配决策模型

空战中红方将对蓝方发射一定数量的导弹,火力分配决策模型的目标即为所有导弹化解蓝方的威胁度之和达到最大;

设红方战机Ri携带的导弹数量为Mi,对蓝方战机Bj分配的导弹数量为:

<mrow> <msub> <mi>E</mi> <mi>j</mi> </msub> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mrow> <msub> <mi>S</mi> <mi>j</mi> </msub> <mo>&le;</mo> <mn>1</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>2</mn> </mtd> <mtd> <mrow> <mn>1</mn> <mo>&lt;</mo> <msub> <mi>S</mi> <mi>j</mi> </msub> <mo>&le;</mo> <mn>3</mn> </mrow> </mtd> </mtr> <mtr> <mtd> <mn>3</mn> </mtd> <mtd> <mrow> <msub> <mi>S</mi> <mi>j</mi> </msub> <mo>&gt;</mo> <mn>4</mn> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>8</mn> <mo>)</mo> </mrow> </mrow>

其中Sj为蓝方战机Bj对整个红方编队的威胁度;

火力分配决策模型为:

<mrow> <mi>F</mi> <mrow> <mo>(</mo> <mi>&pi;</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mrow> <mi>&pi;</mi> <mo>&Element;</mo> <mi>&Omega;</mi> </mrow> </munder> <munder> <mo>&Sigma;</mo> <mi>i</mi> </munder> <munder> <mo>&Sigma;</mo> <mi>j</mi> </munder> <msub> <mi>X</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <msub> <mi>S</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>9</mn> <mo>)</mo> </mrow> </mrow>

s.t

<mrow> <munder> <mo>&Sigma;</mo> <mi>j</mi> </munder> <msub> <mi>X</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&le;</mo> <msub> <mi>M</mi> <mi>i</mi> </msub> <mo>,</mo> <mrow> <mo>(</mo> <mi>i</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mi>N</mi> <mo>)</mo> </mrow> </mrow>

<mrow> <munder> <mo>&Sigma;</mo> <mi>i</mi> </munder> <msub> <mi>X</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>&le;</mo> <msub> <mi>E</mi> <mi>j</mi> </msub> <mo>,</mo> <mrow> <mo>(</mo> <mi>j</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mi>K</mi> <mo>)</mo> </mrow> </mrow>

<mrow> <mi>k</mi> <mo>=</mo> <munder> <mo>&Sigma;</mo> <mi>i</mi> </munder> <munder> <mo>&Sigma;</mo> <mi>j</mi> </munder> <msub> <mi>X</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mi>min</mi> <mo>{</mo> <munder> <mo>&Sigma;</mo> <mi>i</mi> </munder> <msub> <mi>M</mi> <mi>i</mi> </msub> <mo>,</mo> <munder> <mo>&Sigma;</mo> <mi>j</mi> </munder> <msub> <mi>E</mi> <mi>j</mi> </msub> <mo>}</mo> </mrow>

其中Ω表示所有攻击方案构成的解空间;Xij表示红方战机携带的第i枚导弹是否用于攻击蓝方战机j,Xij取值为0或1,1时表示红方战机携带的第i枚导弹用于攻击蓝方战机j,否则为0;k为实际用于攻击目标的导弹数量;

第二步,基于改进的蚁群算法解决空战火力分配的优化问题

将空战火力分配过程模拟成一个蚁群网络;将红方战机的每一发导弹都看作是一个红方的节点,将蓝方每架战机需要分配的导弹看作是一个蓝方的节点;

(2.1)设置种群中蚂蚁数量为:

m=Nr+∑Ej (10)

其中Nr为红方携带的导弹总数,Ej为第j架蓝方战机上分配的导弹数量;

(2.2)将m只蚂蚁随机地放置在红方战机的导弹上,并设置各路径上初始信息素浓度均为1;

(2.3)m只蚂蚁按照伪随机概率选择规则选择蓝方应当分配导弹的位置,蚂蚁在移动过程中的规则如下:

规则一:蚂蚁只能够移动到蓝方战机导弹分配数量不足的位置,蓝方每架战机分配的导弹数量不能超过设定的分配数量,红方战机最多发射携带导弹的剩余数;

规则二:红方战机上的每只蚂蚁每次只能到达一个目标点,即每枚导弹只能攻击一个目标;

规则三:每只蚂蚁各自进行目标选择,互不干扰;每只蚂蚁在到达当前允许分配的一个目标后,同样以伪随机概率选择规则返回红方战机位置,此时蚂蚁的移动目标为红方剩余的导弹位置;接着进行下一枚导弹的目标选择,直到完成Nr枚导弹的目标分配;

规则四:所有蚂蚁在结束一次循环之后,需要进行信息素的更新,并且每只蚂蚁在各自循环中的最优路径上产生新的信息素,每只蚂蚁产生新的信息素的同时考虑路径上信息素的耗散或挥发。

2.根据权利要求1所述的基于蚁群算法的火力分配方法,其特征在于,在步骤(1.1)中,0°<εijji≤180°,当Ri离轴角为180°,Bj离轴角为0°,即Bj在正后方追击Ri时,Bj对Ri的角度威胁度为1。

3.根据权利要求1所述的基于蚁群算法的火力分配方法,其特征在于,在步骤(1.2)中,当红方战机位于蓝方攻击范围时,距离威胁度值取最大值1;当红方战机处于蓝方雷达探测距离以外时,距离威胁度取最小值0。

4.根据权利要求1所述的基于蚁群算法的火力分配方法,其特征在于,在第二步的规则三中,蚂蚁进行目标选择时按照如下伪随机概率选择规则进行:

<mrow> <msup> <mi>j</mi> <mo>&prime;</mo> </msup> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mi>arg</mi> <munder> <mrow> <mi>m</mi> <mi>a</mi> <mi>x</mi> </mrow> <mrow> <mi>s</mi> <mo>&Element;</mo> <msub> <mi>J</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> </munder> <mo>{</mo> <msup> <mrow> <mo>&lsqb;</mo> <mi>&tau;</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>s</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> </mrow> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <msup> <mrow> <mo>&lsqb;</mo> <mi>&eta;</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>,</mo> <mi>s</mi> <mo>)</mo> </mrow> <mo>&rsqb;</mo> </mrow> <mi>&beta;</mi> </msup> <mo>}</mo> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>q</mi> <mo>&le;</mo> <msub> <mi>q</mi> <mn>0</mn> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mi>J</mi> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>o</mi> <mi>t</mi> <mi>h</mi> <mi>e</mi> <mi>r</mi> <mi>s</mi> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>11</mn> <mo>)</mo> </mrow> </mrow>

其中j′为下一个需要访问的节点;J为q>q0时,下一个待访问节点,访问J节点的概率pij由如下状态转移概率来进行选择:

<mrow> <msub> <mi>p</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfenced open = "{" close = ""> <mtable> <mtr> <mtd> <mrow> <mfrac> <mrow> <msup> <mrow> <mo>&lsqb;</mo> <mrow> <mi>&tau;</mi> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <msup> <mrow> <mo>&lsqb;</mo> <mrow> <mi>&eta;</mi> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>,</mo> <mi>j</mi> </mrow> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> <mi>&beta;</mi> </msup> </mrow> <mrow> <munder> <mi>&Sigma;</mi> <mrow> <mi>s</mi> <mo>&Element;</mo> <msub> <mi>J</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> </munder> <msup> <mrow> <mo>&lsqb;</mo> <mrow> <mi>&tau;</mi> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>,</mo> <mi>s</mi> </mrow> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> <mi>&alpha;</mi> </msup> <mo>&CenterDot;</mo> <msup> <mrow> <mo>&lsqb;</mo> <mrow> <mi>&eta;</mi> <mrow> <mo>(</mo> <mrow> <mi>i</mi> <mo>,</mo> <mi>s</mi> </mrow> <mo>)</mo> </mrow> </mrow> <mo>&rsqb;</mo> </mrow> <mi>&beta;</mi> </msup> </mrow> </mfrac> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>j</mi> <mo>&Element;</mo> <msub> <mi>allowed</mi> <mi>k</mi> </msub> </mrow> </mtd> </mtr> <mtr> <mtd> <mrow> <mn>0</mn> <mo>,</mo> </mrow> </mtd> <mtd> <mrow> <mi>o</mi> <mi>t</mi> <mi>h</mi> <mi>e</mi> <mi>r</mi> <mi>s</mi> </mrow> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>12</mn> <mo>)</mo> </mrow> </mrow>

式中:

Jk(i)为第k只蚂蚁在已访问节点i后仍需要访问的节点集合;

τ(i,s)为当前导弹i与分配位置s之间的信息素浓度;

η(i,s)为启发函数,取为蓝方目标对红方的威胁度,某架蓝方战机对整个红方编队的威胁越大,选择对其进攻的概率越大;

α为信息启发因子,用来衡量路径上信息素的影响程度,取α=3;

β为期望启发因子,用来衡量蓝方对红方威胁度的影响程度,取β=0.3;

q0为初始设定的参数,通过做实验对比分析,取q0=0.3;

allowedk={1,2,…,n}-tabu,代表蚂蚁k接下来可以选择的目标点。

5.根据权利要求4所述的基于蚁群算法的火力分配方法,其特征在于,在第二步的规则四中,信息素更新方式如下:

τ(i,j)=(1-ρ1)·τ(i,j)+ρ1·Δτ(i,j) (13)

式中:

Δτ(i,j)为最优路径(i,j)上的信息素增量;

Sij为最优路径上蓝方对红方的威胁度;

ρ1为信息素在每次循环过程中的挥发系数,取ρ1=0.6;

ρ2为比例系数,取ρ2=0.2;

设置每条路径的信息素浓度的上限为τmax(t),下限为τmin(t);更新每条路径信息素的上下限的准则是:若该路径上信息素高于τmax(t),则该路径信息素取为τmax(t);若该路径上信息素低于τmin(t),则取为τmin(t)。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1