❶ 局部路径规划算法
局部路径规划,常用的算法有栅格法、人工势场法、遗传算法、空间搜索法、层次法、动作行为法、Dijkstra算法、Lee算法、Floyd算法等
❷ 遗传算法怎么回事
遗传算法(Genetic Algorithm)是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法。它是由美国的J.Holland教授1975年首先提出,其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。遗传算法的这些性质,已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术。对于一个求函数最大值的优化问题(求函数最小值也类同),一般可以描述为下列数学规划模型: 遗传算法式中为决策变量,为目标函数式,式2-2、2-3为约束条件,U是基本空间,R是U的子集。满足约束条件的解X称为可行解,集合R表示所有满足约束条件的解所组成的集合,称为可行解集合。遗传算法的基本运算过程如下:a)初始化:设置进化代数计数器t=0,设置最大进化代数T,随机生成M个个体作为初始群体P(0)。b)个体评价:计算群体P(t)中各个个体的适应度。c)选择运算:将选择算子作用于群体。选择的目的是把优化的个体直接遗传到下一代或通过配对交叉产生新的个体再遗传到下一代。选择操作是建立在群体中个体的适应度评估基础上的。d)交叉运算;将交叉算子作用于群体。所谓交叉是指把两个父代个体的部分结构加以替换重组而生成新个体的操作。遗传算法中起核心作用的就是交叉算子。e)变异运算:将变异算子作用于群体。即是对群体中的个体串的某些基因座上的基因值作变动。群体P(t)经过选择、交叉、变异运算之后得到下一代群体P(t 1)。f)终止条件判断:若tT,则以进化过程中所得到的具有最大适应度个体作为最优解输出,终止计算
❸ 、局部路径规划方法
基于传感器信息的局部路径规划,常用的方法有栅格法、人工势场法、遗传算法、空间搜索法、层次法、动作行为法、Dijkstra算法、Lee算法、Floyd算法等。
❹ 遗传算法的现状
进入90年代,遗传算法迎来了兴盛发展时期,无论是理论研究还是应用研究都成了十分热门的课题。尤其是遗传算法的应用研究显得格外活跃,不但它的应用领域扩大,而且利用遗传算法进行优化和规则学习的能力也显着提高,同时产业应用方面的研究也在摸索之中。此外一些新的理论和方法在应用研究中亦得到了迅速的发展,这些无疑均给遗传算法增添了新的活力。遗传算法的应用研究已从初期的组合优化求解扩展到了许多更新、更工程化的应用方面。
随着应用领域的扩展,遗传算法的研究出现了几个引人注目的新动向:一是基于遗传算法的机器学习,这一新的研究课题把遗传算法从历来离散的搜索空间的优化搜索算法扩展到具有独特的规则生成功能的崭新的机器学习算法。这一新的学习机制对于解决人工智能中知识获取和知识优化精炼的瓶颈难题带来了希望。二是遗传算法正日益和神经网络、模糊推理以及混沌理论等其它智能计算方法相互渗透和结合,这对开拓21世纪中新的智能计算技术将具有重要的意义。三是并行处理的遗传算法的研究十分活跃。这一研究不仅对遗传算法本身的发展,而且对于新一代智能计算机体系结构的研究都是十分重要的。四是遗传算法和另一个称为人工生命的崭新研究领域正不断渗透。所谓人工生命即是用计算机模拟自然界丰富多彩的生命现象,其中生物的自适应、进化和免疫等现象是人工生命的重要研究对象,而遗传算法在这方面将会发挥一定的作用,五是遗传算法和进化规划(Evolution Programming,EP)以及进化策略(Evolution Strategy,ES)等进化计算理论日益结合。EP和ES几乎是和遗传算法同时独立发展起来的,同遗传算法一样,它们也是模拟自然界生物进化机制的智能计算方法,即同遗传算法具有相同之处,也有各自的特点。目前,这三者之间的比较研究和彼此结合的探讨正形成热点。
1991年D.Whitey在他的论文中提出了基于领域交叉的交叉算子(Adjacency based crossover),这个算子是特别针对用序号表示基因的个体的交叉,并将其应用到了TSP问题中,通过实验对其进行了验证。D.H.Ackley等提出了随机迭代遗传爬山法(Stochastic Iterated Genetic Hill-climbing,SIGH)采用了一种复杂的概率选举机制,此机制中由m个“投票者”来共同决定新个体的值(m表示群体的大小)。实验结果表明,SIGH与单点交叉、均匀交叉的神经遗传算法相比,所测试的六个函数中有四个表现出更好的性能,而且总体来讲,SIGH比现存的许多算法在求解速度方面更有竞争力。H.Bersini和G.Seront将遗传算法与单一方法(simplex method)结合起来,形成了一种叫单一操作的多亲交叉算子(simplex crossover),该算子在根据两个母体以及一个额外的个体产生新个体,事实上他的交叉结果与对三个个体用选举交叉产生的结果一致。同时,文献还将三者交叉算子与点交叉、均匀交叉做了比较,结果表明,三者交叉算子比其余两个有更好的性能。
1992年,英国格拉斯哥大学的李耘(Yun Li)指导博士生将基于二进制基因的遗传算法扩展到七进制、十进制、整数、浮点等的基因,以便将遗传算法更有效地应用于模糊参量,系统结构等的直接优化,于1997年开发了可能是世界上最受欢迎的、也是最早之一的遗传/进化算法的网上程序 EA_demo,以帮助新手在线交互式了解进化计算的编码和工作原理 ,并在格拉斯哥召开第二届IEE/IEEE遗传算法应用国际会议,于2000年组织了由遗传编程(Genetic Programming)发明人斯坦福的 John Koza 等参加的 EvoNet 研讨会,探索融合GA与GP结构寻优,超越固定结构和数值优化的局限性。
国内也有不少的专家和学者对遗传算法的交叉算子进行改进。2002年,戴晓明等应用多种群遗传并行进化的思想,对不同种群基于不同的遗传策略,如变异概率,不同的变异算子等来搜索变量空间,并利用种群间迁移算子来进行遗传信息交流,以解决经典遗传算法的收敛到局部最优值问题
2004年,赵宏立等针对简单遗传算法在较大规模组合优化问题上搜索效率不高的现象,提出了一种用基因块编码的并行遗传算法(Building-block Coded Parallel GA,BCPGA)。该方法以粗粒度并行遗传算法为基本框架,在染色体群体中识别出可能的基因块,然后用基因块作为新的基因单位对染色体重新编码,产生长度较短的染色体,在用重新编码的染色体群体作为下一轮以相同方式演化的初始群体。
2005年,江雷等针对并行遗传算法求解TSP问题,探讨了使用弹性策略来维持群体的多样性,使得算法跨过局部收敛的障碍,向全局最优解方向进化。
❺ 遗传算法研究进展
遗传算法[56,53]研究的兴起是在20世纪80年代末和90年代初期,但它的历史起源可追溯到20世纪60年代初期。早期的研究大多以对自然遗传系统的计算机模拟为主。早期遗传算法的研究特点是侧重于对一些复杂的操作的研究。虽然其中像自动博弈、生物系统模拟、模式识别和函数优化等给人以深刻的印象,但总的来说这是一个无明确目标的发展时期,缺乏带有指导性的理论和计算工具的开拓。这种现象直到20世纪70年代中期由于Holland和De Jong的创造性研究成果的发表才得到改观。当然,早期的研究成果对于遗传算法的发展仍然有一定的影响,尤其是其中一些有代表性的技术和方法已为当前的遗传算法所吸收和发展。
在遗传算法作为搜索方法用于人工智能系统中之前,已有不少生物学家用计算机来模拟自然遗传系统。尤其是Fraser的模拟研究,他于1962年提出了和现在的遗传算法十分相似的概念和思想。但是,Fraser和其他一些学者并未认识到自然遗传算法可以转化为人工遗传算法。Holland教授及其学生不久就认识到这一转化的重要性,Holland认为比起寻找这种或那种具体的求解问题的方法来说,开拓一种能模拟自然选择遗传机制的带有一般性的理论和方法更有意义。在这一时期,Holland不但发现了基于适应度的人工遗传选择的基本作用,而且还对群体操作等进行了认真的研究。1965年,他首次提出了人工遗传操作的重要性,并把这些应用于自然系统和人工系统中。
1967年,Bagley在他的论文中首次提出了遗传算法(genetic algorithm)这一术语,并讨论了遗传算法在自动博弈中的应用。他所提出的包括选择、交叉和变异的操作已与目前遗传算法中的相应操作十分接近。尤其是他对选择操作做了十分有意义的研究。他认识到,在遗传进化过程的前期和后期,选择概率应合适地变动。为此,他引入了适应度定标(scaling)概念,这是目前遗传算法中常用的技术。同时,他也首次提出了遗传算法自我调整概念,即把交叉和变异的概率融于染色体本身的编码中,从而可实现算法自我调整优化。尽管Bagley没有对此进行计算机模拟实验,但这些思想对于后来遗传算法的发展所起的作用是十分明显的。
在同一时期,Rosenberg也对遗传算法进行了研究,他的研究依然是以模拟生物进化为主,但他在遗传操作方面提出了不少独特的设想。1970年Cavicchio把遗传算法应用于模式识别中。实际上他并未直接涉及到模式识别,而仅用遗传算法设计一组用于识别的检测器。Cavicchio对于遗传操作以及遗传算法的自我调整也做了不少有特色的研究。
Weinberg于1971年发表了题为《活细胞的计算机模拟》的论文。由于他和Rosenberg一样注意于生物遗传的模拟,所以他对遗传算法的贡献有时被忽略。实际上,他提出的多层次或多级遗传算法至今仍给人以深刻的印象。
第一个把遗传算法用于函数优化的是Hollstien。1971年他在论文《计算机控制系统中的人工遗传自适应方法》中阐述了遗传算法用于数字反馈控制的方法。实际上,他主要是讨论了对于二变量函数的优化问题。其中,对于优势基因控制、交叉和变异以及各种编码技术进行了深入的研究。
1975年在遗传算法研究的历史上是十分重要的一年。这一年,Holland出版了他的着名专着《自然系统和人工系统的适配》。该书系统地阐述了遗传算法的基本理论和方法,并提出了对遗传算法的理论研究和发展极为重要的模式理论(schemata theory)。该理论首次确认了结构重组遗传操作对于获得隐并行性的重要性。直到这时才知道遗传操作到底在干什么,为什么又干得那么出色,这对于以后陆续开发出来的遗传操作具有不可估量的指导作用。
同年,De Jong完成了他的重要论文《遗传自适应系统的行为分析》。他在该论文中所做的研究工作可看作是遗传算法发展进程中的一个里程碑,这是因为他把Holland的模式理论与他的计算实验结合起来。尽管De Jong和Hollstien一样主要侧重于函数优化的应用研究,但他将选择、交叉和变异操作进一步完善和系统化,同时又提出了诸如代沟(generation gap)等新的遗传操作技术。可以认为,De Jong的研究工作为遗传算法及其应用打下了坚实的基础,他所得出的许多结论迄今仍具有普遍的指导意义。
进入20世纪80年代,遗传算法迎来了兴盛发展时期,无论是理论研究还是应用研究都成了十分热门的课题。尤其是遗传算法的应用研究显得格外活跃,不但它的应用领域扩大,而且利用遗传算法进行优化和规则学习的能力也显着提高,同时产业应用方面的研究也在摸索之中。此外一些新的理论和方法在应用研究中亦得到了迅速的发展,这些无疑均给遗传算法增添了新的活力。
随着应用领域的扩展,遗传算法的研究出现了几个引人注目的新动向:一是基于遗传算法的机器学习(Genetic Base Machine Learning),这一新的研究课题把遗传算法从历来离散的搜索空间的优化搜索算法扩展到具有独特的规则生成功能的崭新的机器学习算法。这一新的学习机制对于解决人工智能中知识获取和知识优化精炼的瓶颈难题带来了希望。二是遗传算法正日益和神经网络、模糊推理以及混沌理论等其他智能计算方法相互渗透和结合,这对开拓21世纪中新的智能计算技术将具有重要的意义。三是并行处理的遗传算法的研究十分活跃。这一研究不仅对遗传算法本身的发展,而且对于新一代智能计算机体系结构的研究都是十分重要的。四是遗传算法和另一个称为人工生命的崭新研究领域正不断渗透。所谓人工生命即是用计算机模拟自然界丰富多彩的生命现象,其中生物的自适应、进化和免疫等现象是人工生命的重要研究对象,而遗传算法在这方面将会发挥一定的作用。五是遗传算法和进化规划(Evolution Programming,EP)以及进化策略(Evolution Strategy,ES)等进化计算理论日益结合。EP和ES几乎是和遗传算法同时独立发展起来的,同遗传算法一样,它们也是模拟自然界生物进化机制的智能计算方法,既同遗传算法具有相同之处,也有各自的特点。
随着遗传算法研究和应用的不断深入和发展,一系列以遗传算法为主题的国际会议十分活跃。从1985年开始,国际遗传算法会议,即ICGA(International Conference on Genetic Algorithm)每两年举行一次。在欧洲,从1990年开始也每隔一年举办一次类似的会议,即 PPSN(Parallel Problem Solving from Nature)会议。除了遗传算法外,大部分有关ES和EP的学术论文也出现在PPSN中。另外,以遗传算法的理论基础为中心的学术会议有FOGA(Foundation of Genetic Algorithm)。它也是从1990年开始,隔年召开一次。这些国际学术会议论文集中反映了遗传算法近些年来的最新发展和动向。
❻ 大火的自动驾驶汽车都涉及了哪些技术
智能车(Intelligent vehicle)是一个集环境感知、规划决策、多等级辅助驾驶等功能于一体的综合系统,它集中运用了计算机、现代传感、信息融合、通讯、人工智能及自动控制等技术,是典型的高新技术综合体。下边就先给自动驾驶技术做一个总的分类,如下图所示,自动驾驶的关键技术依次可以分为环境感知,行为决策,路径规划和运动控制四大部分。
路径规划的方法根据智能车辆工作环境信息的完整程度,可分为两大类:
基于完整环境信息的全局路径规划方法;例如,从上海到北京有很多条路,规划处一条作为行驶路线即为全局规划。如栅格法、可视图法、拓扑法、自由空间法、神经网络法等静态路径规划算法。
基于传感器实时获取环境信息的局部路径规划方法;例如,在全局规划好的上海到北京的那条路线上会有其他车辆或者障碍物,想要避过这些障碍物或者车辆,需要转向调整车道,这就是局部路径规划。局部路径规划的方法包括:人工势场法、矢量域直方图法、虚拟力场法、遗传算法等动态路径规划算法等。
运动控制
规划好了行驶路径,接下来就需要控制车辆沿着期望的轨迹行驶,这就是运动控制部分需要完成的内容。运动控制包括横向控制和纵向控制,简单来说横向控制就是转向控制,纵向控制就是速度控制, 现在研究比较多的是横向控制,所运用的方法主要包括滑膜控制、模糊控制、神经网络控制、最优控制、自适应控制和纯跟踪控制等。通俗的讲就是,横向控制为给定一个速度,通过控制转向达到车辆沿着预定轨迹行驶的目的;而纵向控制目的是为了满足车辆行驶过程中的速度要求,有时候还需要配合横向控制达到满足车辆在轨迹跟踪的同时,还需要满足安全性、稳定性和舒适性的目的。因为车辆是一个特别复杂的系统,横向、纵向和垂向都有耦合关系的存在,因此就需要对智能车辆进行横、纵向,甚至横、纵、垂向的协同控制。由于其耦合关系的复杂性,所以说智能车辆运动控制的协同控制技术,也是该部分的技术难点。