基于遗传算法的Matlab 16阵元天线优化
1. 设计要求
题目一 :阵列天线综合
利用Matlab编制遗传算法或粒子群算法程序,并实现对间距为半波长均匀直线阵综合,指标如下:
1、阵元数:16元
2、副瓣电平:<-30dB
3、增益:>11dB
4、要求撰写设计报告,内容包括:所采用的算法基本原理,目标函数的设计,各个参数的设置源代码,仿真结果(增益方向图),参考文献。
2. 遗传算法
2.1 遗传算法的生物学基础
遗传算法的生物学基础自然选择学说认为适者生存,生物要存活下去,就必须进行生存斗争。生存斗争包括种内斗争、种间斗争以及生物跟环境之间的斗争三个方面。在生存斗争中,具有有利变异的个体容易存活下来,并且有更多的机会将有利变异传给后代,具有不利变异的个体就容易被淘汰,产生后代的机会就少得多。因此,凡是在生存斗争中获胜的个体都是对环境适应性比较强的个体。
2.2 遗传算法介绍
遗传算法(GA)是模拟生物在自然环境下的遗传和进化过程而形成的一种自适应全局优化概率搜索方法。其采纳了自然进化模型,从代表问题可能潜在解集的一个种群开始,种群由经过基因编码的一定数目的个体组成。每个个体实际上是染色体带有特征的实体。初始种群产生后,按照适者生存和优胜劣汰的原理,逐代演化产生出越来越好的解。在每一代,概据问题域中个体的适应度大小挑选个体,并借助遗传算子进行组合交叉和主客观变异,产生出代表新的解集的种群。这一过程循环执行,直到满足优化准则为止。最后,末代个体经解码,生成近似最优解。基于种群进化机制的遗传算法如同自然界进化一样,后生代种群比前生代更加适应于环境,通过逐代进化,逼近最优解。
2.3 算法流程
通过随机方式产生若干由确定长度(长度与待求解问题的精度有关)编码的初始群体。通过适应度函数对每个个体进行评价,选择适应度值高的个体参与遗传操作,适应度低的个体被淘汰。经遗传操作(复制、交叉、变异)的个体集合形成新一代种群,直到满足停止准则(进化代数GEN>=?)。将后代中变现最好的个体作为遗传算法的执行结果。其中,GEN是当前代数;M是种群规模,i代表种群数量。
图2.1 遗传算法流程图
2.4 选择
指个体被选中并遗传到下一代群体中的概率与该个体的适应度大小成正比。
p i = f i ∑ f i ( i = 1 , 2 , … , M ) p i=\frac{f_{i}}{\sum f_{i}} \quad(\mathrm{i}=1,2, \ldots, \mathrm{M}) pi=∑fifi(i=1,2,…,M)
式中 p i \ p_{i} pi ——个体i被选中的概率。
f i \ f_{i} fi——个体i的适应度。
∑ f i \sum f_{i} ∑fi——群体的累加适应度。
- 显然,个体适应度愈高,被选中的概率愈大。但是,适应度小的个体也有可能被选中,以便增加下一代群体的多样性。执行概率选择的手段是轮盘选择。
- 个体被选中的概率取决于个体的相对适应度:从统计意义讲,适应度大的个体,其刻度长,被选中的可能性大;反之,适应度小的个体被选中的可能性小,但有时也会被“破格”选中。
2.5 交叉
Ⅰ. 对群体中的个体进行两两随机配对。
若群体大小为M,则共有M/2 对相互配对的个体组。
Ⅱ. 每一对相互配对的个体,随机设置某一基因座之后的位置为交叉点。
若染色体的长度为l ,则共有l-1个可能的交叉点位置。
Ⅲ. 对每一对相互配对的个体,依设定的交叉概率pc在其交叉点处相互交换两个个体的部分染色体,从而产生出两个新的个体。
2.6 变异
对于基本遗传算法中用二进制编码符号串所表示的个体,若需要进行变异操作的某一基因座上的原有基因值为0,则变异操作将该基因值变为1,反之,若原有基因值为1,则变异操作将其变为0。
基本位变异因子的具体执行过程是:
Ⅰ. 对个体的每一个基因座,依变异概率pm指定其为变异点。
Ⅱ. 对每一个指定的变异点,对其基因值做取反运算或用其它等位基因值来代替, 从而产生出一个新的个体。
3. 阵列天线原理
直线阵:由N个相同的单元天线等间距地排列在一条直线上构成。
均匀直线阵:若各单元上的馈电电流大小相同,而相位沿线均匀递增或递减,这样的直线阵称为均匀直线阵。
N元直线阵的阵因子函数:
以阵列中第一个单元天线作为相位基准:
E ˙ 1 = E ˙ F 0 ( θ , φ ) e − j β r 1 \dot{E}_{1}=\dot{E} F_{0}(\theta, \varphi) e^{-j \beta r_{1}} E˙1=E˙F0(θ,φ)e−jβr1
第二个单元天线:辐射场的幅值差异不计,相位差为
Ψ = α + β d cos δ \Psi=\alpha+\beta d \cos \delta Ψ=α+βdcosδ
则第N个单元天线的相位差为:
( N − 1 ) Ψ = ( N − 1 ) ( α + β d cos δ ) (N-1) \Psi=(\mathrm{N}-1)(\alpha+\beta \mathrm{d} \cos \delta) (N−1)Ψ=(N−1)(α+βdcosδ)
N个相似元阵元在p处的辐射场叠加,表示为
E ˙ Σ = ∑ k = 1 N E ˙ k = E ˙ F 0 ( θ , φ ) e − j β r 1 [ 1 + e j Ψ ′ + e j 2 Ψ ′ + ⋯ + e j ( N − 1 ) Ψ ′ ] [ 1 + e j Ψ + e j 2 Ψ + ⋯ + e j ( N − 1 ) Ψ ] = 1 − e j N Ψ 1 − e j Ψ = e j N − 1 2 Ψ sin ( N Ψ 2 ) sin ( ψ 2 ) \begin{aligned} &\dot{E}_{\Sigma}=\sum_{k=1}^{N} \dot{E}_{k}=\dot{E} F_{0}(\theta, \varphi) e^{-j \beta r_{1}}\left[1+e^{j \Psi^{\prime}}+e^{j 2 \Psi^{\prime}}+\cdots+e^{j(N-1) \Psi^{\prime}}\right] \\ &{\left[1+e^{j \Psi}+e^{j 2 \Psi}+\cdots+e^{j(N-1) \Psi}\right]=\frac{1-e^{j N \Psi}}{1-e^{j \Psi}}=e^{j \frac{N-1}{2} \Psi} \frac{\sin \left(\frac{N \Psi}{2}\right)}{\sin \left(\frac{\psi}{2}\right)}} \end{aligned} E˙Σ