论文部分内容阅读
仿生优化群算法(Bionic Swarm Optimization Algorithm,BSOA)模拟了生物的群体行为,可以达到用简单方法解决复杂问题的目的。粒子群优化算法(Particle Swarm Optimization,PSO)、萤火虫算法(Firefly Algorithm,FA)和布谷鸟搜索算法(Cuckoo Search Algorithm,CS)是众多仿生优化群算法中的三种,它们的算法结构简单,需要调整的参数很少,但是不同程度地存在全局搜索能力差、收敛速度慢、解的精度不够高等缺陷。本文引入了混沌模型、模拟退火机制、细菌群体感应机制、主从结构、分层进化、反向学习等策略,对这些缺陷进行改进,并将部分改进算法用于解决工业机器人的运动学逆解问题。本文的主要研究内容及创新点如下:(1)粒子群优化算法的改进本文提出了三种改进的粒子群算法,混沌模拟退火粒子群算法(Chaotic Simulated Annealing PSO,CSAPSO),自适应动态学习因子粒子群算法(Adaptive Dynamic Learning Factor PSO,ADCPSO)和自适应学习因子混沌主从粒子群算法(Adaptive Learning Factor Chaotic Master-Slave PSO,ACCMSPSO)。CSAPSO主要是在评价阶段中引入模拟退火机制和混沌模型,用于对个体最优值和全局最优值的选择和构造中,算法的全局搜索能力和结果的鲁棒性得到了很大的提升。ADCPSO的特点是每个粒子的学习因子都实时的根据自身的适应度值和全局最优适应度值进行改变,使得每个粒子具备了不同的进化策略,强化了全局搜索能力。ACCMSPSO是在ADCPSO的基础上,引入主从粒子群的概念,并借鉴了细菌的群体感应机制,每当主群采用ADCPSO进化若干代以后,就会产生一个从群,且从群的初始粒子采用混沌的方法在主群的全局最优粒子的基础上产生。从群也采用ADCPSO进化若干代,然后再把从群中最好的若干个粒子代替主群中相同数量的粒子。改进算法加快了收敛速度,增强了全局搜索能力。(2)萤火虫优化算法的改进本文提出了三种改进FA,第一种是在步长因子非线性递减的萤火虫算法(Nonlinear decreasing Step FA,LNAFA)的基础上使最小吸引度min?自适应变化,这种算法称为最小吸引度m i n?自适应变化的LNAFA(Adaptive Minimum Attractiveness LNAFA,ABLNAFA),ABLNAFA使全局搜索能力、收敛速度和收敛精度都得到不同程度地提高。第二种是吸引度、步长自适应变化的萤火虫算法(Adative Beta&Alpha FA,ABAFA),吸引度和步长都能够自适应地变化,它提升了算法的总体性能。第三种是模拟退火主从萤火虫算法(Simulated Annealing Master-Slave FA,SAMSFA),SAMSFA在LNAFA的基础上引入四个方面的改进措施:一是最小吸引度min?能够自适应动态变化;二是在位置更新公式中额外加入全局最优项;三是引入模拟退火机制;四是引入分层的概念,主从族群依次进化,然后用从群优秀的个体代替主群较差的个体。(3)布谷鸟搜索算法的改进本文提出了两种改进CS,它们是基于反向学习策略的CS(Opposition-Based Learning CS,OBLCS)和局部搜索能力增强的OBLCS(Local Search Capability Enhanced OBLCS,LOBLCS)。OBLCS利用反向学习策略生成一个反向群并用于选择阶段中,LOBLCS则加入局部搜索的增强操作,即在最优位置的附近按照收敛方向搜索潜在的更优解。(4)仿生优化群算法的混合研究单一的仿生优化群算法的适应性不够好,为了提升算法的适应性,可以将两种或以上的仿生算法进行混合,以达到取长补短的作用。结合PSO、FA和CS的特点,本文提出了CS、PSO平行算法(CS and PSO Paralleled Algorithm,CSPSOPA),CS、PSO混合算法(CS and PSO Mixed Algorithm,CSPSOMA)以及FA、PSO混合算法(FA and PSO Mixed Algorithm,FAPSOMA),这三种算法大大提升了算法的全局搜索能力、收敛速度和适应性。(5)基于仿生优化群算法的机器人运动学逆解的求解方法本论文分别利用三种改进算法ACCMSPSO、SAMSFA和CSPSOMA对机器人运动学的逆解进行求解,ACCMSPSO改进了类似方法,而SAMSFA和CSPSOMA则是首次引入这个领域,其中CSPSOMA的效果最佳。和解析解法相比,仿生优化群算法克服了机器人结构的限制,可以应用于所有类型的串联多关节机器人中。最后,对论文所研究的仿生优化群算法和运动学逆解求解等问题进行总结,并指出有待进一步深入研究的问题。