主权项 |
一种利用遗传算法优化的脉冲矢量控制器点火控制方法,其特征在于,包括以下步骤:(1)根据脉冲矢量控制器中每列脉冲发动机的个数确定种群中个体的编码长度,假设脉冲矢量控制器中每列包含n个脉冲发动机,则个体编码长度设成n;(2)将每个脉冲发动机的使用状态用一个二进制字符表示,字符1表示该发动机未使用过,字符0表示该发动机已使用;然后沿弹轴方向将每一列脉冲发动机的使用状态编码成有序的0‑1字符串;(3)确定一定的种群规模m,并生成初始种群,种群中每个个体均表示成n位0‑1字符串的形式,个体对应的0‑1字符串反映的是对脉冲矢量控制器的点火指令要求;(4)确定优化算法的适应函数,适应函数根据点火代价函数构造,点火代价函数根据点火模型提出;(5)设置进化代数,对种群进行进化操作,具体包含选择、交叉、变异三个步骤,直至进化到最终代数,获得最优结果;每次进化操作包括:a)选择将种群中的每个个体对应的0‑1字符串和当前的发动机序列对应的0‑1字符串进行按位逻辑“与”运算,根据适应函数公式计算每个逻辑“与”运算后个体的适应函数值,由适应函数值确定每个个体的选择概率;得到个体选择概率后,利用轮盘赌的方式对各选择概率进行非线性排名选择;b)交叉对于父代中的一对个体,随机产生一个或多个整数,把父代个体中与随机数对应的基因位置进行基因交叉,得到新的个体构成子代;如某个体在交叉后,该个体对应的0‑1字符串中字符1的个数超过了脉冲发动机点火上限要求,则需要重新选择一个个体进行交叉操作,直至满足矢量控制器点火上限要求;c)变异在种群中随机确定进行变异的个体,并针对变异个体生成一随机数,而后对该个体中与此随机数对应的基因位置进行变异操作,即把该基因位置对应的字符进行求反运算;如某个体在变异后,该个体对应的0‑1字符串中字符1的个数超过了脉冲发动机点火上限要求,则需要重新选择一个个体进行变异操作,直至满足矢量控制器点火上限要求;(6)将步骤(5)获得的最优结果作为当前发动机序列的实际点火指令,最优结果中,字符1的位置即对应需要点火的发动机的位置。 |