科学网

 找回密码
  注册
科学网 标签 无人机 相关日志

tag 标签: 无人机

相关日志

无人机航拍婚礼和创新性设计
shxf 2014-7-23 10:51
无人机航拍婚礼和创新性设计 朱亮 中国民用航空上海航空器适航审定中心 前天有个新闻挺吸引人的眼球,报道称:美国一家婚礼跟拍公司,上周上架了一项全新无人机航拍服务。无人机航拍服务报价为 400 美元,拍摄时长为 30 分钟左右。 针对这个新闻,一些做无人机的朋友来了兴趣,议论纷纷。他们称国内也有人在婚礼上用无人机运送戒指的环节,但都是千篇一律,没什么新意。而我呢,一直关注工业产品的创新性设计,借着婚礼庆典中无人机运送戒指这一场景,结合系统工程的基本原理阐述了一下针对无人机的创新设计过程,在此记录下来,供大家参考。 假设我们做为婚庆公司进行整个婚礼的策划,并假设选定无人机送戒指为必须的环节,阐述一下这一必须的环节可能表现出来的不同形式,以及对无人机设计产生的顶层设计需求。 假设暂时不用考虑时间、成本和进度。 【注释:实际产品开发过程中,这一环节是非常重要的,但属于项目管理考虑的范畴,暂不是此次讨论的重点】 那么作为婚庆公司,在策划一场婚礼的时候,一个重要的考虑因素是婚礼的主题:奢华的婚礼,还是唯美的婚礼? 【注释:工业产品的开发是一个知识密集性的工作,而知识的基础首先就是明确“定义”,比如这里什么是“奢华”?什么是“唯美”?我们仔细回想在学校学习的时候,最重要学习内容就是理解定义;而在研究的岗位上,实质也是在研究定义】 为什么需要选定主题?因为主题的选定,对于婚礼地点,婚礼的布置,婚礼的规模等等,产生设计影响。以布置为例,奢华的婚礼可能会用到更多代表奢华的金色物品,钻石,水晶等等,而唯美的婚礼可能会用到更多的白色,粉色和淡紫色物品。 【注释:在系统工程中,这就是顶层需求对下一层的设计产生影响,产生设计输入】 假设本婚庆公司的设计理念是用土豪似的拉风场面表达出婚礼的奢华,用小资似的调调表达出唯美的效果。 【注释:针对同样的事情,不同的公司有不同的设计实现理念,也就会有不同的设计实现手法】 落实到无人机送戒指环节。对于不同主题的婚礼,如何表达?其实这里就存在很多可创新的手法或者与众不同的创意。例如:无人机是什么机型?无人机是几个?无人机的涂装颜色是什么?无人机传递戒指的形式是什么? 对于奢华的婚礼,飞机的机型可以选择战斗机,多架,金色的涂装,在传递戒指时,可以首先在婚礼上空做出令人炫目的各种机动,拉出彩色的烟雾,最后运载着戒指的那架飞机俯冲至新郎新娘的上空,投下一个金色的降落伞,载着戒指缓缓的落到新郎的手中。 对于唯美的婚礼,可以选择四旋翼飞机,白色,粉红色,淡紫色的涂装,数量可以是多个,也可以是单个。在传递戒指的时候,不用做出拉风的各种机动,但是可以随着音乐翩翩起舞,然后缓缓的飞到新郎面前,停在新郎的手中,由新郎亲手拿出载荷,也就是戒指。 【注释:战斗机的特点是机动性好,速度快,适合表达大场面;四旋翼飞机的特点是稳定性好,速度慢,适合表达唯美的场面】 回到无人机设计。两种不同的选择,给无人机的设计和实现带来的就是顶层的任务规划和性能指标。例如:对于战斗机的机动,整个机动的形式是手动完成还是自动完成?多机如何进行任务协同?飞机执行任务时的环境条件是什么?单架机俯冲投递戒指的速度,高度,位置是什么?投递机构成功打开的概率是多少?如果投递机构无法正常投递的应急预案是什么?对于四旋翼飞机,则会因为执行的任务不同,产生不同的顶层设计要求,比如:飞机飞行与音乐的匹配程度如何?飞机飞向新郎的定位精度如何?由于飞机距离新郎,新娘过近,是否需要考虑类似旋翼断裂导致伤人的后果? 【注释:这就是系统工程中需求分析和需求捕获的过程,也是最重要的设计工作】 当捕获无人机的顶层需求之后,在飞机机体设计(如旋翼),任务执行机构设计(如投递任务舱门),导航系统设计,飞控系统设计等等,就必须考虑这些要求,通过技术手段实现这些要求。 【注释:这就是系统工程中需求分解和分配,同时分解和分配出的下一层需求成为下一层详细设计的输入】 总结一下,通过这个例子: 第一,真正的设计应当是自顶向下的正向设计过程,而不是自底向上的反求工程,即便是两个方法都要用,仍然是自顶向下是主导,因为“顶”来自客户的使用需要,即stakeholder‘s needs; 【注释:当前中国做了太多的仿制,导致中国人不会做自顶向下的设计,而只会做自底向上的设计。要知道自底向上是堆砌不出符合客户需要的合格产品的,即使能够堆砌出,也是偶然且需要付出极大的代价的】 第二,清晰的定义在设计时起到至关重要的作用,对于奢华的理解或者对于唯美的理解,各方要达成一致,婚庆公司可以有自己的建议,但以客户的观点为导向,否则婚庆公司干的越多,错的越多; 【注释:产品开发过程中要设置合适的开发阶段,并在每个阶段进行仔细而慎重的评审,在评审过程中要定义准确的利益相关方参与,并设置合理的判据】 第三,系统工程的理念和方法具有普世的价值,做工业产品开发和做婚庆服务在方法论层面一致; 【注释:无论做工业产品还是做服务性产品,在产品的顶层设计都需要有系统性思维(Systematic Thinking)】 第四,各行业中都蕴含很多知识,真要做好某个行业,除了方法论,还需要行业经验,不是自己擅长的行业,不要随便就拍胸脯; 【注释:掌握了方法论,不代表在一个行业成功,就能在另外一个行业成功。所以松下幸之助就说:人的成功要从自己最熟悉的行业做起。事实也证明:很多公司走多元发展的模式,往往都不成功,原因就在于各个行业存在不同的行业知识,不能简单用在一个行业中取得的知识和经验,生搬硬套的用到另外一个不同的行业】 第五,婚庆公司要做大做强,恐怕也需要规范化,流程化; 【注释:只有规范化、流程化,才使得产品质量得到可靠的保证。同时,从固化知识和经验的角度,也只有规范化、流程化,才能够将产品开发过程中形成的知识和经验有效固化,并成为企业的技术能力】 第六,创新的本源来自对于客户需要的理解,但在实现的方法上可以与新的技术结合,比如婚庆与航空技术,婚庆与信息技术。 【注释:本条很容易理解,不多加解释,但需要强调的是:一个企业能够持续的创新,需要不断的学习,思考,实践,再学习,再思考,再实践】 后记,我一直坚定认为:需求分析和管理成为建立企业能力的关键一步;需求分析和管理也成为自主创新、建立中国品牌的关键一步。 “需求分析“(RequirementAnalysis)指:基于对客户需要和目标,任务和操作,人、产品和流程的预期使用环境,约束条件和效率的衡量后所确定的、系统特定的性能特性和功能特性。在本次例子中,从确定婚礼的主题到最终无人机系统设计需求的确定,整个活动都是在不断的进行需求分析,只是不同的层次,详细程度不同。 “需求管理”(RequirementManagement) 指:记录、分析、跟踪和优先需求,并就需求与相关客户达成一致的过程,也是控制需求更改并就更改与相关客户沟通的过程。在本次例子中,如果需求发生变化,相应的实现方式也必然发生变化,但显然,不同层次的需求变化时,实现过程中付出的代价是不同的,越顶层的需求变化,导致的代价越大。 整个需求分析和管理需要:过程+方法+工具+经验。而当前我们当前面临的困难是:过程不清晰,方法不明白,工具不会用,经验还不足。 所以,在中国走向自主创新,建立创新中国的道路上,我们现在可以做的是:理清楚过程,搞明白方法,学会用工具,慢慢积累经验。
个人分类: 系统工程|5469 次阅读|0 个评论
无人机全球热的缘由
dsm9393 2014-7-7 22:47
无人机 全球热的缘由 都世民 一、无人机全球热具体表现 自 1917 年 至今 , 己经快一百年之久,无人机自诞生、幼年、少年、成年,到密月期大放光彩,如今无人机热己扩至全球。 据报道: 在全球已经 有 70 多个国家获得不同类型的无人机, 其中 50 多个国家正在发展本国无人机。 目前,除非洲大陆外,世界上许多国家都建立无人机制造基地。可以 想像 未来发展无人机的国家 还会 持续增加。 23 个国家被认为正在发展潜在的武装无人机 。 这 23 个国家正在发展武装无人机系统 , 不同武装无人机在大小、航程、载荷、杀伤性、复杂性等方面都不尽相同 。此外,还有 其它类型的武装无人机,包括微型无人机、自杀式无人机(即 “ 巡航导弹 ” 无人机)以及处于 方案论证 、概念开发或项目研发阶段的无人机 。 中国、印度、伊朗、俄罗斯、台湾、土耳其、阿拉伯联合酋长国、美国等八个国家(或地区)正在发展的无人机系统(主要包括用于情报、监视、目标获取、侦察与攻击( ISTAR-A )的中空长航时无人机。美国生产的 MQ-1“ 捕食者 ” 无人机便是典型一例。以色列、巴基斯坦、南非等三个国家正在发展无人机系统。 例如 , 南非的 “ 搜索者 400” 无人机 , 伊朗的 Ababil 无人机。主要用于侦察、监视与攻击。 有资料显示,目前真主党已经获得这种无人机,将来委内瑞拉也极有可能得到。不同类型的无人机, 有 各种不同的用途。   除此之外,法国、德国、希腊、意大利、黎巴嫩、朝鲜、韩国、西班牙、瑞典、瑞士、突尼斯、英国等 12 个国家正在发展 “ 其它类型 ” 的无人机。随着技术的不断进步,出现了一些微型无人机。它们携载较轻、较小的载荷,航程也很有限,或者用于类似于巡航导弹一样的一次性袭击。此外,一些国家在 “ 无人战斗航空器 ” ( UCAV )方面持续加大投入。例如,法国、希腊、意大利、西班牙、瑞典、瑞士等国正在合作研发一款无人战斗航空器,据称航程可达 2000 千米。正处于研发早期 . 无法得知各个国家武装无人机具体的发展情况,以及是否有些国家正在发展多型武装无人机。目前只有少数国家的武装无人机具备实战能力,其它国家或许要在若干年后才能具备这样的能力。 在这些国家中,美国拥有的无人机数量无疑是最多的 . 按照 2013 年 7 月的统计,美军拥有超过 1 万架 以上的 无人机 。 全球最大的无人机市场位于北美、欧洲与亚洲。 据有关资料分析, 全世界用于无人机采购与研发的总费用将从 2013 年的 66 亿美元,增加到 2022 年的 114 亿美元。 据英国《飞行国际》统计,截至 2006 年底,全球约有 4.8 万架军用无人机服役,到 2010 年增至 12 万架,它们大多数用于战场警戒、搜集情报、目标跟踪或毁损评估。 无人机市场方面,美国一直以来 , 在出口武装无人机方面都持谨慎态度,只出售给其盟国或友好国家,并且只出售非武装无人机 ―― 尽管这些非武装无人机可以加以改造,携带武器并参与作战。 例如,有报告显示,美国曾将非武装的 “ 收割者 ” 无人机卖给法国。 法国一旦得到该型无人机后,只要稍加改装便可以拥有武装无人机。此外,美国还向意大利出售了非武装的 “ 收割者 ” 无人机和 “ 捕食者 ” 无人机;向英国出售了非武装的 “ 收割者 ” 无人机。 以色列是最大的无人机输出国。 2010 年 2 月,以色列无人机共销往 42 个国家或地区(绝大多数为欧洲、亚洲与拉丁美洲国家)。 2012 年,该国无人机出口额占该国总的军事出口额将近 10% 。 除此之外,其它几个国家也在出售无人机,一些发展程度较高的发展中国家也瞄准了国际无人机出口市场。不过,目前来看,这些出口的无人机中几乎不包括整装的武装无人机。  新近俄罗斯宣布一项 3200 亿卢布(约合 89 亿美元)的无人机项目,以增强无人机舰队。发展中空打击和侦察能力。由于乌克兰危机,波兰将在 2016 年采购无人机几百架,约 30 亿兹罗提。爱沙尼亚计划 2016 年拨 600 万欧元购买RQ - 4全球鹰无人侦察机。 二、无人机全球热的原因是什么呢? 无人机的发展与战争需求紧密相关。 无人机在未来战争中, 会有 品类众多、功能各异的无人驾驶飞机 。 如今,无人机进入了一个实战应用和发展时期,无人机的研制和装备 不断增长 。据专家预测,今后无人机技术 还会有所 发展,无人作战飞机将在 一定 程度上替代有人驾驶作战飞机,成为未来作战飞机家族的成员 1. 无人机发射 无人机 :一不怕脏;二不怕累;三不怕苦,四不怕死;五不怕高,六不怕低。它可以大,也可以小。它有点神出鬼没,可以在手掌上飞出,也可以从陆地车辆发射;可以从舰艇上发射,也可从水下发射;还可以从空中发射。例如, 由中国天津大学自主开发的水下无人滑翔机 “ 海燕 ” , 在南海北部水深超过 1500 米的海域 , 通过了测试,创造了中国国产水下滑翔机无故障航程最远、时间最长、工作深度最大等诸多纪录。 由此可见想攻击无人机发射站的难度大。 2. 无人 侦察 机 无人侦察机 可以 风雨无阻、出生入死,大大减少了有人机的损失和人员的伤亡。去完成最危险而 又 “ 肮脏 ” 的侦察任务 。这比有人侦察机有明显优势。 当前无人机系统的发展已经 有一定程度的突破, 目前国际上一些无人飞行器的速度已经超过了 10 倍音速,有的飞行时间已经达到几周 、 几个月 、 几 年。 另外,一些飞行器的尺寸已经可以缩小到一只小鸟甚至一个昆虫的大小。小型无人机比较隐蔽,而且不受地形的限制,河流、高山、湖泊都没事。 随着纳米技术的发展,无人机尺寸还可能减小。这对于侦察、监视而言,有利于隐蔽,加上隐身技术的发展,新材料的涌现,更给无人机的神出鬼没增添新的内涵。 罗马利亚宇航协会研制的空中灵云( Air Strato )无人机,翼展 16 m,飞行高度 18000 m,可在平流层飞行。其载荷为 30 公斤。可进行侦察、监视、航空摄影和科学研究。 3. 航母和舰载无人机 为满足海上和空中作战的需要,舰艇上要求配备尽可能多的飞机以执行预警、侦察、中继、攻击等任务。而海军舰艇即使是航母 , 在空间上都并不宽裕,武器装备容纳空间有限,难以存放和起降数量众多的大中型飞机。而舰载无人机兼具成本低、体积小、作战使用灵活、费效比高、能够执行更危险、飞行时间更长的任务 , 可避免人员伤亡等优势。 现在 舰载无人机主要用于目标侦察与监视,同时也可用于执行战场控制、目标识别、海岸控制与损伤评估等任务。与之前的舰载无人机相比,它们具有用途多、留空时间长、载重大等特点。舰载无人机得到世界各国海军的广泛认可 。 舰载无人机具有更多的作战功能、更强的战斗力,执行更多的作战任务。 美国海军不久前刚完成的MQ -4 C , 称作海神无人机的首飞试验。该机实际航行 81 小时,飞行高度 18000 米。其上装有一套多功能传感器阵列,可获得 568 个数据点,它承担了情报搜集、侦察和监视工作。工作范围接近 700 万平方公里。航程 3700 公里。可以全天候工作3天以上。真是 “ 不怕累 ” ,无人能比。 4. 无人机 投弹 据报道英国MQ -9“ 死神 ” 无人机成功完成导弹投放试验,该机投放了 “ 硫磺石 ” 双模工作的导弹,9次成功命中目标,其导引方式是毫米波和半主动激光双制导集成方式。投放高度为 6096 m,投放距离为 7-12 km。操作人员以手动和自动方式成功跟踪目标。 这一试验有另一含义,如果导弹内有核弹,这一试验成功,也意味着未来空爆核弹不必由人来完成。此外,用无人机投放炸弹,这就很平常了。 5. 全球打击无人机系统 今年 2 月,英国国防部和BEA系统集团联合对外宣布首架隐形无人战战机“雷神”。该机可与美X -47 B和法国研制的“神经元”无人机相提並论。将于 2030 年服役。该机特点是隐身性能好、航速快、生存能力强和可靠性高。该机最大起飞重量 8000 kg,机长 12 m,翼展 10 m,高 3.98 m,采用阿杜尔 951 发动机,三角翼。该机可在全球任何地方通过卫星数据链接进行控制,目前尚为半自动化操作,由地面控制站遥控,通过网络将目标信息传回地面站,将来要升级为全自动。 6. 无人机 扩展卫星通信能力实现多功能 美国空军RQ - 4“全球鹰”无人机新近完成一项新任务,即扩展卫星通信能力。目的是改善数据通过卫星传输的能力,以及无人机的自适应功能。试验没有改变该无人机的软硬件及载荷的前提下,对不同卫星通信 , 观察其兼容性。验证专用卫星通信链路的工作能力。该机完成 11 万个小时的试验。指挥官可以获得实时图像信息和雷达探测海上和陆地动、静目标的信息。这一成功标志着无人机多功能的实现,即反恐、反海盗和救灾及人道救援的多项任务。 据悉,泰坦公司生产的高空太阳能无人机,可以收集全球各地信息,其翼展为 60 m,机翼上有 3000 块太阳能电池板,有效载荷可达 115 公斤。可以在 20000 m高度上連续飞行 5 年。可类比地球同步卫星,还可以用来作特殊通讯装置,可以每秒 1 G的速度传输资料,这比好多国家已开发的宽频网速还要快。此外,这种试制的背后目的 , 可能还会利用这种无人机替代失效卫星,作伪卫星。也许还会发展为反卫星工具。 这种太阳能无人机不仅白天飞行,还可以夜里飞行。可以作边界监视,防止偷渡出境或走私;可以执法、安保、反恐,追捕嫌疑人;可以监视人流、车流、船流量;还可以监视和检测石油管道、天然气管道、自来水管道、高压线等重要民用设施。 这种太阳能无人机可以用来救灾、消防、抗震、泥石流等,能迅速定位和勘查受灾范围。还能作广播电台、蜂窝中继通信的转发站。 7. 无人机 救援系统 无人机系统作救援的优势在于:成夲低、灵活方便、后勤保障要求简单、全天候 24 小时連续工作、任务多种多样、无论多危险,可低飞、也可高飞、搜索范围大。特别是岸基长航时无人机比现有多种海上救援手段要好,主要是任务多样、空间覆盖、实时性、使用配置综合看。但费用高些,若用舰载无人机可以降低费用。 8. 异构多无人机系统 所谓异构多无人机是指不同类型多无人机协同工作。不同类型的多无人机协同作战模式是无人机发展的方向。它可能在数分钟内,提供具有战略意义的杀伤、电子战攻击、近距离空中支援的效果。 多无人机协同完成任务是对各种无人机功能的互补,它包括直升无人机、固定翼无人机、旋翼无人机、飞船等。这种异构多无人机系统就具有多功能,可以完成跟踪识别、侦察、监视、巡逻等任务。 异构多无人机的实用化会实现图像处理实时化、功能最大化、分布式自主功能。对提高空间覆盖、可靠性、不同地点执行任务有很大好处。 在未来网络化战争中,要求无人机能提高网络吞吐量和传输速率,网络通信实时性,减少传输误码率,提高抗电子欺骗能力,保证网络安全和可靠,同时还要有兼容性。 9. “ 零伤亡 ” 概念 无人机将侦察、 监视、巡逻、 精确制导 、投 弹以及远程打击能力集于一身,使军队基本实现 “ 零伤亡 ” , 提升 了 攻击效能。无人机是进行定点打击的非常好的一种武器 。 10. 高超速无人机威胁反导系统 美国在 20 世纪 60 年代,就研究D - 21高速、高空无人侦察机,采用冲击发动机,升限高达 2.9 万米,最大速度 3.35 马赫。全长 12.8 m,翼展 5.79 m,高 2.14 m,起飞重量 5000 kg。美国自称这一机型是任何防空武器都无法击落的。 此外,美国还研究X - 43A / B型,是高超音速。X - 4 3 A创造了 9.7 马赫超高速记录,为世界所震惊。令人瞩目。 美国研制的X - 37B号称“空天战机”,在 2011 年 3 月,由火箭送上轨道,计划飞行 9 个月,后又飞行 6 个月。 2012 年6月返回地球。该机重约5吨,长 8.8 m,高 2.9 m,翼展 4.6 m,飞行速度 25 马赫。 俄罗斯也一直在研制名为“鹰”的超高速飞行器,飞行速度为 6- 1 4 马赫,全长 7.9 m,翼展 3.6 m。 未来的空袭将是卫星和无人侦察机侦察,战斗机护航,电子干扰机开路,预警机指挥,加油机保障,无人攻击机投弹,定点打击。超高速飞行器是各国竞相研制的主要方向。超高速飞行器对导弹防御系统威胁很大,因速度快、目标散射截面小,机动性强,现有的反导系统已无法拦截。这在一定程度上改变现有战争模式。 综上所述,无人机全球热有其必然性。未来若干年,还会继续。它还有潜在的发展空间。但也不能不指出,无人机系统也开始面临威胁,对其发展前途已有争议。
个人分类: 军事科普|3785 次阅读|0 个评论
无人机是怎样走上“神坛”
热度 2 dsm9393 2014-6-30 16:30
无人机 是怎样走上“神坛” 都世民 上个世纪 50 年代,世界上研制无人靶机的国家增加到 20 多个,发展了上百种基本型,生产数量超过 2 万多架。 1944 年,德军 将 V-1 无人攻击机真正用于实战 。它采用 脉冲式喷气发动机,还装有导航计算机、程序装置和自动驾驶仪等组成的飞行控制系统。战斗部装有 1 吨炸药。 V-1 的飞行速度为 640 千米 / 小时。 V-1 的飞行高度通常在 900 ~ 920 米,采用定高器维持飞行高度。数量达 8000 多架 。 20 世纪 60 年代初,美国的特里达因 · 瑞安航空公司首 次 研制的 “ 火蜂 ” 无人侦察机 。 美军将无人机作为遥控目标诱饵 , 首次用于越南战争 . 在美国和欧洲等地掀起了一场 “ 无人机热 ” ,各国对发展无人机寄予很大希望 。 以色列先后研制成功了 “ 侦察兵 ” 和 “ 猛犬 ” 两种无人侦察机。 一、“密月期” 大放异彩 1982 年 6 月 , 贝卡谷地一战,以军的无人机配合有人驾驶攻击机 , 一举摧毁了叙利亚军队的 19 个防空导弹阵地,却未损失一架战斗机,全世界 为之 震惊。于是 有人提出 “ 非接触 ” 和 “ 零伤亡 ” 作战理论。 无人机初试锋芒 20 世纪 90 年代以来,美国及其西方盟国发动了海湾战争、科索沃战争、阿富汗战争、伊拉克战争和利比亚战争,海湾战争广泛使用无人机参战,推动了无人机的发展 。 海湾战争只持续了 42 天,以美国为首的多国部队就投入了 2000 多架无人机,仅 “ 先锋 ” 一种无人机 , 就执行任务 533 次,飞行 1638 小时。 “ 先锋 ” 动力为 19 千瓦,作战半径约为 185 公里, 45 公斤的负载 , 包括红外或电子光学图像设备。 此后,在科索沃战争中出动了 9 种 100 多架无人机,在阿富汗战争中美军派出了 4 架 “ 全球鹰 ” 无人机和 1 个 “ 捕食者 ” 无人机编队参战,伊拉克战争中美军调集了 “ 全球鹰 ” 、 “ 捕食者 ” 、 “ 影子 ” 、 “ 猪人 ” 、 “ 龙眼 ” 等 10 余种无人机参战。 无人机在各战场创造的辉煌战绩惊异世人。从出奇不异,到群雄齐上阵,大有不可一世之态势。  无人机在 2011 年大显身手,它们的声望与日俱增,是因为另一个时髦的术语 —— 持续性,即一架无人机能一直盯住目标,直到有重要事情发生 , 进行定点打击。 2006 年,在伊拉克战争期间,美军就是利用无人机发现伊拉克基地组织头目的藏身之处,又利用无人机携带导弹 , 对那里进行精确打击。 据报道 有近 1000 架无人机活跃在伊拉克和阿富汗的反恐前线 。 据美国《洛杉矶时报》网站报道,新型 “ 弹簧小折刀 ” 无人机的重量不足 3 公斤,能够装入士兵的背包中 , 并通过类似迫击炮的炮管发射升空。一旦升空飞行,该无人机就开始把实时影像和 GPS 坐标传回 , 由发射该无人机的士兵 , 紧握手持式操纵装置。一旦士兵确认和锁定了目标,他们便向无人机下达急速俯冲的指令,该无人机会在撞击目标时爆炸。 “ 弹簧小折刀 ” 无人机 , 因其行动模式而被称为 “ 神风特攻队无人机 ” 。 无人机竟然成为斩首行动的神秘杀手,威名大震! 这就是无人机进入密月期的大好时光。曾几何时,美国的隐身飞机如同空中幽灵,进入伊拉克,如入无人之境,那时它是何等风光。 二、遍地开花 争艳第一 英国 Visiongain 公司的分析报告显示,由于无人机( UAV )用途广泛 , 军事需求不断增长, 2012 年 , 无人机市场将达到 72.6 亿美元。 这是 无人机市场的发展趋势。 报告预测了 2012 年至 2022 年期间的全球无人机市场,以及全球五大商圈的市场规模,包括高空长航时( HALE )无人机、中高空长航时( MALE )无人机、无人战斗机、战术无人机和小型无人机。 据 西方媒体报道 , 中国首型 “ 利剑 ” 隐身无人机。 “ 中国成为最新一个展示喷气动力、低雷达 散射 特 性 的 , 攻击无人机的重要航空航天强国 ” . 印度、伊朗、以色列、意大利、瑞典和俄罗斯也 都 在发展自己的隐身无人机。 中国像美国一样,实际上已经拥有了包括手抛式低空无人机、中 / 高空长航时无人机在内的整个系列。中国利用以色列 “ 哈比 ” 反雷达无人机技术,将数以百计歼 -6 之类的老式战斗机改装成为了诱饵无人机。诱饵无人机将使空战变得极为复杂。 中航工业自主研制的 “ 鹞鹰 ” 无人机 , 首次成功实现了高精度 、 全极化 、 合成孔径雷达和高光谱光学载荷 、 双装载科学试验飞行。国内第一次成功实现了高精度、多载荷、同平台遥感成像,获取了有重要科研价值的数据。 攻击无人机是无人机的一个重要发展方向。能够有效地克服 “ 爱国者 ” 或 C - 300 等反导导弹反应时间长、拦截距离近、拦截成功后的残骸对防卫目标仍有损害的缺点。德国的 “ 达尔 ” 攻击型无人机,能够有效地对付多种地空导弹,为己方 攻击机 开辟空中通道。以色列的 “ 哈比 ” 反辐射无人机,具有自动搜索、全天候攻击和同时攻击多个目标的能力。 无人机将从过去执行空中侦察、战场监视和战斗毁伤评估等任务的作战支援装备,逐渐升级为能执行压制敌防空系统、对地攻击、拦截战术弹道导弹和巡航导弹,可执行对空作战任务的真正的作战装备 . 各种无人系统将在太空、陆地、空中和海上发挥更大的作用。 ” 据英国《飞行国际》统计,截至 2006 年底,全球约有 4.8 万架军用无人机服役,到 2010 年将增至 12 万架,它们大多数用于战场警戒、搜集情报、目标跟踪或毁损评估。 三、专家助推 神话出笼 无人机的战绩屡屡,光环大增,威望大升。国内外的军事专家、科普作家纷纷发表言论,媒体极为关注,这就助推了无人机的神话出笼。 有专家认为: 无论在战略还是战术范围,无人机都将成为应用非常广泛的低风险、高费效比的战场感知平台,成为 C4ISR 系统的重要组成部分。 可能对未来空战的组织编制、作战原则、战术思想乃至国防策略等带来深刻的变革,给未来的防空作战带来更大的挑战。 另外 各国都在加紧研究这种 “ 一个无人系统施放另一无人系统 ” 的技术 。 随着科学家不断推进在人工智能方面的研究,这种情形可能很快就会发生变化,某一天这可能会开启制造能够独立作出生死攸关 “ 决策 ” 的无人机的大门。  科学家已开始研究能使光波发生弯曲的材料,这些材料能大大减少目标物发出的热辐射以及可见光波。这种技术背后的科学道理比较明了,尽管持怀疑态度者对此并不信服,并称他们只有在亲眼 “ 看不见 ” 这种材料时才会信服:通过促使周边的光波发生弯曲, “ 自适应伪装 ” 能把披上这种隐形材料的物体背后的场景呈现出来。 据新近报道: 美军已成功进行了无人机空中加油试验,这意味着无人机全球作战能力还将有大幅提升。 无人机与人不同,这些武器本身无需睡眠。无人机的新时代是更小巧、可远程遥控并具备智能的武器 . 小型无人机比较隐蔽,而且不受地形的限制,河流、高山、湖泊都没事。 张召忠教授告诉《北京科技报》,大约二三十年后,无人机将取代有人机! 还有专家评论认为:未来战争是打“钱”战,是不死人的战争!是无人战争! 不难看出无人机己经被神话,它的出现和登上历史舞台,已经风头出尽,是不是该想一想无人机怎样走下神坛?! 参考资料 1. 美军拟用微型无人机追杀恐怖分子全长仅 60 cm 文章来源: 腾讯网时间: 2012.06.15 09:56 http://news.qq.com/a/20120615/000468.htm 2. 2012 年无人机市场规模将达 72.6 亿美元 , 新闻来源: http://www.dsti.net/Information/News/75730 3. 白剑林 陈琦 , 无人机关键技术及信息化发展趋势 , (作者单位为中国人民解放军 93704 部队) 4. 无人机 编辑 …百度词条 5. 伊朗可能用俄制电子对抗系统击落美无人机 文章来源: 新浪网时间: 2011.12.07 11:14  新闻来源: http://mil.news.sina.com.cn/2011-12-06/1651676487.html 6. 美媒体称美军已成功进行无人机空中加油试验 文章来源: 新浪军事时间: 2012.03.14 16:51 分享到: 7. 中国无人机亮相:战争 “ 零伤亡 ” 将实现 发布日期 2009-12-02 21:00:42 更新日期 2009-12-02 百度网页 8. 海翼 , 无人机的前世今生 浴火凤凰 —— 且看无人机的前世今生 发布日期 2012-10-28 20:13:32 更新日期 2012-10-28 20:13:32 / 个人分类: 百度网页 9. 美刊评出能改变战争的五种 “ 未来武器 ” 2014-02-13 10:37:14| 来源:参考消息网 |
个人分类: 军事科普|3861 次阅读|2 个评论
无人机的由来
dsm9393 2014-6-29 22:55
无人机的 由来 都世民 什么是无人机呢?顾名思义就是没有人驾驶的飞机。如果用专业语言解释:是 指无人在机上驾驶、 利用无线电遥控设备和自备的程序控制装置 , 自主控制或遥控的飞机。它可执行对空、对地(海)作战任务,并具有可回收、可重复使用的特征。 无人机实际上是无人驾驶飞行器的统称,可分为旋转翼无人机和固定翼无人机两大类。 包括 无人直升机、无人固定翼机、无人多旋翼飞行器、无人飞艇、无人伞翼机 等。如果按无人机执行任务的类别来区分,它包括靶机、无人侦察机、无人攻击机、 舰载无人机 、 诱饵无人机 、 反辐射无人机 、 反导无人机 。而 靶机 又 可分为火炮靶机、导弹靶机。 这无人机是怎么来的呢?这要 追溯到 1917 年,美国的斯佩里和寇缔斯 两人 一起 , 对一架有人驾驶飞机进行了改装, 他们想把 它改造为无人驾驶鱼雷攻击飞机。改装 以 后,该机在长岛空军基地进行了数次试飞,但 其性能达不到军方要求, 军 方 停止 了 投资, 从此 无人问津。 1933 年,英国费尔雷公司将一架 “ 女王 ” 双翼飞机改装成无人驾驶靶机并投入实际使用。从此,无人驾驶飞机作为靶机被载入航空史册,并开始用在靶场上 , 它成为无人机家族中的一个重要成员。此后不久,美国的航空专家雷金纳德 · 德里为美国陆军研制出了供打靶用的无线电遥控机。 1939 年,美国又研制出了一种单翼无人机,取名为 RP-4 。 什么是 靶机 呢?军方在研制导弹时,需要进行试验。对于地面发射的导弹,能不能击中 空 中飞行目标,它包括各种飞机和导弹。在进行实验时,必须有一个靶子,简单的靶子可以用气球,但气球运动速度慢,它的雷达反射特性与实际目标相差太大,所以有人就想用无人驾驶的飞机作靶机,仿真目标性能好,价格也便宜。可以考验地面防空武器系统各部分性能和总体性能。这当中包括雷达、通信、发射架及指令系统、应答系统、数据处理系统、指挥系统等。 应当指出的是:无人机的发展与战争需求紧密相关。它的宏观尺寸有大,有小。前面说的是指大飞机。对于微型飞机就不同了。它是指 机长和翼展都不足 15 厘米 的无人机。 这种飞机是怎么来的呢?是通过元器件的小型化和集成化就能演变出来吗?其实这种微型飞机肯定不需要人驾驶,关键在于这么小是怎么飞起来的?研制者是从人造昆虫的研制中发展而来。 1994 年 , 英国剑桥大学的动物学家在模拟昆虫的试验中,发现昆虫翅膀向下摆动时,随着翅膀向前移动会形成微旋涡,从而在翼上形成低气压,产生较大升力。这一发现引起美国防部极大兴趣,曾两次拨款支持人造飞虫研制。这才导致人造微型飞行器的出现。
个人分类: 军事科普|4793 次阅读|0 个评论
[转载]​中国将测试新型无人机 可有效消除雾霾
热度 2 redtree 2014-3-6 15:59
中国将测试新型无人机 可有效消除雾霾 来源:环球时报 发布时间:2014-3-6 11:28:12 据香港《南华早报》报道,身为航空官员的一名全国人大代表表示,中国将测试一种可以消除雾霾的新型无人机,帮助解决内地愈加严重的污染危机。 媒体报道称,马永胜说,在中国气象局和航空专家的带领下,这种加装了翼伞的无人机即将于本月晚些时候在机场和港口展开试验。 马永胜是中航工业航宇公司董事长。该公司研发出中国第一种翼伞无人机,能够携带700公斤重的消雾催化剂,飞行高度可达5000米。 几年来,中国一直在使用飞机和固定翼无人机向空中喷洒化学物,以凝结污染物,并令其降落在地面上。 柔翼无人机的载重量是固定翼无人机的3倍,使用成本仅为其1/10,而采购成本和维护成本要比同量级固定翼无人机便宜20%至30%。 马说这种翼伞无人机操作简便,无需复杂的降落设备,这使其适合在机场和港口条件下作业。他表示,这款无人机还可应用于抢险救灾、航拍航测等领域。同时还可应用于农业领域,在指定地区播撒农作物种子。 李克强总理周三在全国人大会议上表示,要向污染宣战。他形容雾霾是大自然向粗放发展方式亮起的红灯,政府将会以细颗粒物(PM2.5)和可吸入颗粒物(PM10)治理为突破口。李总理说,政府将把工厂和电厂作为目标,从源头打击污染。 周三,空气污染相较于上周令人担忧的程度有所缓解。美国大使馆称,周三上午9时,北京空气中的PM2.5浓度为每立方米82微克。北京市环境保护监测中心在其微博账户中称,周三上午7时,首都PM2.5指数良好,每立方米为10至31微克。
个人分类: 环境新闻|1249 次阅读|2 个评论
2014无人机遥感博士后招聘,请大家推荐或转发!
guijunyang 2014-2-12 13:24
2014 年博士后招聘 研究方向: 无人机多遥感器观测及育种信息获取。农作物种业是国家战略性、基础性核心产业,是促进农业长期稳定发展、保障国家粮食安全的根本。国外育种突出特点是将信息技术、传感器技术、自动化技术应用于田间性状的采集,快速获取育种材料的形态、组分、品质、病虫害等性状信息。我国育种主要依赖于经验育种,性状参数的获取大多依靠人工观测 , 导致整体育种效率较低。研究适合无人机搭载的多遥感器观测平台,实现作物性状信息快速高效获取,为大规模育种提供信息支撑。 隶属项目、工作时间与待遇 : 863 课题《基于轻型无人机载高分辨率遥感的规模化作物育种与养分管理研究》。工作期限为两年,如需要可适当延期。享受北京农业信息技术研究中心规定的博士后待遇。博士后出站考核为优秀者,可双向选择留所工作。 招收条件: 1. 本硕博均为“ 985 ”、“ 211 ”或知名院所毕业,年龄一般在 35 周岁以下,具有光学工程、摄影测量与遥感专业背景。已经或近期即将在国内外获得博士学位; 2. 具有较强无人机、航空遥感研究经验,具有良好的光学遥感器研发及数据处理和分析编程开发能力; 3. 博士期间第一或通讯作者发表高水平 SCI 论文 2 篇以上; 4. 有良好的团队合作能力、语言表达能力和较强的工作交流英语听说水平和英文学术论文写作能力。 联系人: 杨贵军 ( 遥感技术部 ) , 010-51503647 ; EMAIL:yanggj@nercita.org.cn 部门介绍扫描微信二维码 \ 个人相册 单位网站: www.nercita.org.cn
6441 次阅读|0 个评论
神经形态芯片的一个应用前景:无人机控制
swordbell 2014-2-3 22:55
在CNKI上检索博硕士(论文)、无人机、神经网络等3个关键词的交集,检索出几篇用神经网络控制无人机飞行的博士和硕士论文。无人机飞行过程中,需要根据传感器传来的参数对飞行控制参数进行调整,以控制无人机的飞行。这种过程如同计算函数y=f(x)一样,输入一个自变量,也就是传感器参数x,输出一个因变量,也就是飞行控制参数y,自动控制系统根据y操作动力、机械系统控制飞行。当然,在一般情形下,这里的x是向量,是一组传感器的值,输出y也是向量,是一组控制参数。对于神经网络控制,函数f就是神经网络的转换矩阵,也就是所谓的神经元突触矩阵。如果输入和输出不计入神经网络,对于单层神经网络是1个转换矩阵,比如感知器,对于2层神经网络就是2个转换矩阵,比如BP神经网络。现在的问题是要确定转换矩阵中每个一元素的值。通常情况下是这样确定转换矩阵的,采集许多组传感器的值以及与这些值相对应的正确的控制参数,用这些采样的传感值和正确的控制参数训练神经网络,使网络的转换矩阵在输入采样传感值时能够计算出正确的控制参数。这个过程称为神经网络的学习。学习算法多种多样,其中一大类算法是优化问题,优化中的一个主要方法是用最小二乘求待定系数。解决最小二乘的方法是求偏导数为0的n元线性方程组,但在实际计算中,为了避免矩阵除法,一般都采用类似于牛顿法那样的近似计算。当神经网络的转换矩阵确定之后,无人机的飞行控制也就解决了。不过在无人机的飞行过程中,并不是让机载计算机实时计算传感器的传感值与转换矩阵的乘法运算,因为机载计算机的计算速度有限,更何况有的神经网络可能还要用到对数函数、三角函数、除法、开方等运算,这些运算都比较耗时。虽然矩阵运算可以用并行计算进行,但是机载计算机可能并不是并行计算机。比较可行的办法是把无人机可能遇到的情况,也就是传感器可能传进来的传感值列成表,然后计算出对应的控制参数表,把这个参数表存入机载计算机中,机载计算机所要做的是根据传感器传来值查控制参数表。 单从飞行的角度,空中的环境要比地面的环境简单,因而传感器采集的样品种类少,样品本身也不复杂,但是飞行是在三维空间中进行,因而飞行控制参数要比地面无人车行驶控制参数多。 从IBM介绍自己的神经形态芯片的情况看 ,它可以免编程通过对样品的学习,以设定参数的方法确定一个Baltzmann机网络。IBM说这种芯片可以实现多种神经网络,但没有给出这些神经网络的种类和名称,只给出了Baltzmann机这一个种类。 2007年,IBM从美国国防高级研究项目局(Defense Advanced Research Projects Agency:DARPA)承接SyNAPSE(Systems of Neuromorphic Adaptive Plastic Scalable Electronics,神经性自适应弹性可伸缩电子系统)项目时,DARPA的目标就是要神经形态芯片能够控制无人载具和无人武器,能够辅助士兵对战场复杂环境快速做出判断。从神经形态芯片的发展态势来看,控制无人机这样的目标是可以实现的。不过目前还缺乏实例报导。
3296 次阅读|0 个评论
专家评论"利剑"无人机
可变系时空多线矢主人 2013-11-23 16:59
专家评论 利剑 无人机 2013 年 11 月 22 日 10:38 来源: 人民网 - 军事频道 手机看新闻 网上流传的国产 “ 利剑 ” 无人机首飞图片 人民网 11 月 22 日 报道: 昨天下午,国内超级大本营军事论坛上,出现了国产隐身无人攻击机“利剑”原型机的首飞照片,迅速在网上引起了大面积的“围观”和转发。军事专家孟祥青在接受媒体采访时表示,“利剑”首飞消息还需经官方证实,此类无人隐身攻击机的作用就是在第一时间,对敌方的纵深目标和高价值目标,特别是有很强防空能力的目标进行突防任务。 网络消息称,当天 13 时许,由中航工业沈阳飞机设计研究所设计、中航工业洪都公司制造的国产“利剑”无人攻击机,在西南某试飞中心成功完成首飞,历时近 20 分钟。 《环球时报》报道称,“利剑”的首飞意味着中国已实现从无人机向无人作战飞机的跨越。目前世界航空强国都在发展自己的无人作战飞机,包括美国 X-47B 、法国主导的“神经元”、英国的“雷神”都已完成首飞并进行测试。“利剑”首飞使中国成为世界第四个试飞大型隐形无人攻击机的国家。 “利剑”首飞消息还需经官方证实 谈到“利剑”首飞的消息是否属实时,孟祥青表示,这个消息在网上已经铺天盖地了,今年 5 月份,网上有消息称“利剑”在跑道上进行滑行试验,但是还没有起飞,当时网上就猜测,离首飞的时间不远。 孟祥青说,关于“利剑”首飞的消息,目前网上有很多图片,但是,这个消息现在还没有被官方证实,我们还是要以国防部新闻发言人最后的证实为准。 或担负对敌高价值目标突防任务 谈到无人攻击机的作用和优势时,孟祥青表示,无人机,顾名思义,它在战场上的作用之一就是最大限度减少人员的伤亡。除此之外,它还有一个很大的好处,制空时间比较长,有人驾驶战机会有疲劳驾驶的时限,无人机这方面就不受限制,只要发动机、设计方面允许,可以几十个小时长期滞空。 孟祥青说,大型的军用无人机,主要分为两类,一是高空长时无人机,像美国的“全球鹰”,还有“死神”等,这类无人机主要是以侦察监视为主要任务,同时也有对地打击的能力。此类无人机有一个缺陷,因为没有隐身性能,尽管滞空时间长,但这也意味着目标暴露的时间也长。因此,这就产生第二类,无人隐身机攻击机,最典型的就是美国的 X-47B ,还有法国的“神经元”,现在都属于试验状态。网上说“利剑”属于 X-47B 的翻版,它的作用就是在第一时间对敌方的纵深目标和高价值目标,特别是有很强防空能力的目标实施突防,这个作战效果是非常明显的。 国产 “ 利剑 ” 隐形无人机(资料图) 据目击者称,昨天中午 1 时许,这款广受关注的明星无人机,在西南某试飞中心成功首飞,历时近 20 分钟。 在日趋庞大的中国无人机群中,“利剑”是最闪亮的明星之一。早在 2011 年 12 月中旬,该机的原型机就下线,今年 5 月,该机进行了地面滑跑测试,引发了众目睽睽的聚焦。“利剑”刺破苍穹,意味着,我国成为继美国( X-47B )、法国(“神经元”)、英国(“雷神”)之后,世界上第四个完成大型飞翼隐形无人攻击机首飞的国家。 从网络上流传的照片上可以看到,“利剑”无人机长得并不像一把剑,而像是一个巨大的飞翼,与 B-2 隐形轰炸机、 X-47B 无人机、“神经元”无人机较为相似。 网上拿中国“利剑”与美国 X-47B 比较,形容它们很相似,对此,军事专家李莉表示: 如果作为未来真正能够主导主要作战方向的无人作战飞机,它们应该有一些性能是共同的。并不是说一个国家一个标准,总体上得延续一个共同的标准。 首先就是它们的气动外形肯定比较像,从“利剑”和 X-47B 来看,外形的基本特征都是没有尾翼,我们称之为飞翼式布局。就是没有垂直尾翼和水平尾翼,整个飞行控制完全靠机翼来完成,这表明它的自动化程度非常高,完全由计算机上面所有的传感器、控制系统来完成。 第二个特征,必须具备一定的机动性能,一般来说,侦察类、长航时的无人机,比如美国的“全球鹰”,它强调长时间在空中悬停,哪怕速度比较慢,只要完成侦察任务就够了。但是战斗机不一样,特别是无人战斗机,强调一定的速度,有时候甚至也强调超音速,需快速飞往任务空域,所以必须具备一定的机动性和速度性。 第三个特征,必须具备一定的载弹量,因为不是单纯执行侦察任务,不能仅仅搭载光学的侦察机和红外传感器,还需要搭载武器。现在的导弹,一枚起码有几百公斤重,要是挂载三四枚的话,得有两吨的载弹量。对于无人攻击机来说,既强调速度,又要自动化程度高,此外还要一定的武器携带量,这才能展示其攻击性能。 国产 “ 利剑 ” 隐形无人机(资料图) 据目击者称,昨天中午 1 时许,这款广受关注的明星无人机,在西南某试飞中心成功首飞,历时近 20 分钟。环球时报报道称,国产“利剑”无人攻击机成功完成首飞,标志着中国已加入隐形无人攻击机研制的第一梯队。意味着我国成为继美国( X-47B )、法国(“神经元”)、英国(“雷神”)之后,世界上第四个完成大型飞翼隐形无人攻击机首飞的国家。 谈到中国未来最需要什么样的隐身无人攻击机时,李莉表示,如果能完成未来远距离向敌作战目标纵深突击的飞机,应该是大型的隐身无人机,重量能达到六吨到十吨,这是大型无人机,因为只有这样大的个头和体量,才能在上面挂载武器,否则就是空谈。 此外,还有隐身性能,如果不隐身,怎么能去突防任务?虽然无人机的成本比有人机要低,但是如果完不成任务,跟没有是一样的,因此,要解决隐身材料、气动外形等问题,这仍然是一个综合工程。 除了个头大和隐身,还必须要有一个比较大的武器携载能力,这几个都具备以后,才能真正定义为是未来我们需要的无人机。 李莉说,还有一点,将来的隐身无人攻击机,是否也能像美国的 X-47B 一样,在航母上起飞。只有搭载在航母上,“腿”才能伸得更长,才能飞得远。如果还能和有人战斗机,比如与歼 20 形成有效搭配,由歼 20 指挥多架无人机战斗机进行攻击,它的作战能力才能真正焕发出来。 资料图:网络流传利剑无人机首飞的照片 西方也一直对“利剑”无人机给予高度关注。美国《航空周刊》在“利剑”刚刚露面时就猜测它可执行侦察和攻击任务,未来可能装备解放军海军和空军部队。报道还说,这是中国第一种采用无尾飞翼布局的飞机,标志着中国在飞控软件方面也取得重大突破。加拿大《汉和防务评论》认为,中国已为隐形无人机设计了多种 GPS 制导炸弹,将来还可以采用使用“北斗”系统的制导炸弹。“利剑”使用俄制发动机,从照片上看,它的基本尺寸应该和 X-47B 接近,而外形更类似美国空军开发的 X-45C 无人机。目前各国隐形无人攻击机使用的动力系统都是现成的战斗机用涡扇发动机,不过“利剑”的发动机尾喷口几乎没有进行任何处理,完全暴露在外,可能会影响其隐形效果。与之相比, X-47B 和“神经元”等无人机都对尾喷口进行了处理,降低红外辐射。 谈到中国“利剑”隐身无人攻击机在世界处于何种水平时,李莉表示,美国的 X-47B 完成了从研发、试飞到弹射的一体化进程,所以,它进行的是最为全面的测试。其它国家,如法国的“神经元”,英国的“雷神”,包括中国的“利剑”,现在是处于一个初期研发阶段,下一步面临的试验任务、改装任务还有很多。如果说“利剑”首飞是事实,这是一个重大的突破,主要体现在,我们全球大型的无人作战机领域拥有一席之地,这是非常重要的,因为大型无人机反映的是一个国家综合的工业基础。首先,无人机出去执行任务,需要有航迹规划,要知道怎么飞,沿什么路线飞,攻击什么目标等,如果没有一个庞大的测绘系统,没有高精度的卫星系统,在太空中能够获取到实时的定位,完成不了无人机的打击任务。所以只要在解决了测绘系统、信息的分发系统以后,才能谈到无人机的问题,这也反映我们在这些方面的基础是比较强的。 此外,更难的是,“利剑”本身的气动外形比较复杂,一个没有尾翼的飞机,能不能在空中保持平衡,机翼做成多大,进气道又在飞机背部,什么样的形状才能隐身等,这都考验一个国家强大的工业制造基础。 李莉说,现在在这两个方面,起码我们有重要的突破,下一步,比如挂载什么武器,完成什么目标,怎么打击,相对来说,都是比较容易的了。 延伸阅读 : · 专家 : 中国航母期待新型无人战机 或跟歼 20 有效搭配 · 利剑首飞成功 中国已跻身隐形无人机第一梯队 · 中国利剑无人作战攻击机成功首飞 意义重大 · 组图:中国利剑隐身无人机成功首飞 采用无尾飞翼式布局 · 徐勇凌:中国已具备无人机在航母着陆及空中加油技术 · 英国超级无人机将试飞 可自行选择打击目标 ( 图 ) 请看附件! ()1评无人机.doc
个人分类: 其它|1981 次阅读|0 个评论
[抗日]兔儿岛鬼子兵安倍晋三你不懂爱
冯用军 2013-11-4 13:37
近月来,倭国小丑头目和右倾军国主义分子大肆叫嚣要击落中国钓鱼岛上巡航无人机,甚至意欲重演中日北洋海战,执意挑起战争行为并妄图发起第三次世界大战,以报所谓二战失败之仇、投降之耻。 我们历来倡导“和气生财”、“和平相处”,不仅珍惜和平、爱好和平,而且创造条件来制造和平,但中国人重来都是不好欺负的,也是从来不怕战争的,我们有信心、有能力保家卫国,消灭一切来犯之敌。 在此警告安倍晋三及其党羽,你们不懂爱、不懂和平,永远成为不了一个文明国家、文明民族。 打倒土豪,抵制日货 保家卫国,复兴中华 一、安倍晋三哪里来的底气? 安倍晋三近期表现如此狂妄,无非是有了一点底气。美国的亚太再平衡战略,让日本觉得有了失散多年的孩子找到娘的感觉,特别是美国在钓鱼岛问题上的明显偏袒,“鱼鹰”战机进驻冲绳,帮助日本训练两栖部队夺岛作战,让日本的胆色增加不少;日本右翼发展壮大,民情大范围右倾,有民调显示,90%的日本人对中国没有好感,让安倍晋三认为有民意支持;“安倍经济学”短暂的成功,日本经济在10多年萎靡不振后有向好趋势,在经济上感到有了支撑;这届安倍政府摆脱了前几任执政不过一年半载的魔咒,有了执政几年的可能,认为政权“稳固”,可以放手干一些“大事”了。另外还有一个数据,就是一批不爱国的中国人支持倭国汽车,使得倭国汽车销量自2012年“钓鱼岛事件”大幅下滑后到2013年开始止跌回稳并略有增长,尤其是2013年10月份以来增幅加快【我要问一句那些买倭国车的中国人:你们非要开鬼子车,不买你会死吗?】。其实上述的支撑都是不可靠的,变数很大。很可能因为安倍的近视和糊涂,所干的事太“大”、太蠢,失去控制而猝然倒塌。如果日本硬要用“战争行为”来对付中国,倒霉的一定是日本。现代战争打的是承受力,日本政府和国民是否有这样的承受力,安倍晋三要想明白。 二、中国有打赢新中日战争的信心吗? 日本人叫嚣中国军队的军人都是独生子、小皇帝,中国军队有打赢新中日战争的信心吗? 中国的体量实在是太大,经济实力又超过了日本并继续拉大距离;中国的军力突飞猛进,单一军种(海军)可能与日本各有所长;而综合军力则远远高于日本。日本从上到下很是焦虑。根据上述同一个民调,我国民众也有90%对日本没有好感。我国政府任何一个对日本的强硬回应,都会得到广大民众的坚决支持。上个世纪三四十年代被日本侵略的屈辱深埋在中华民族的心底里,日本一部分人对侵略中国的死不认账,更不时激起对日本的仇恨,这是我们不愿意看到的。中国几代领导人都在做我们自己人民的工作,把“中日传统友谊”、“中日不再战”作为双方的主流民意,进行认真广泛的交流,并取得相当成果。可是日本右翼尤其是安倍晋三政权,毫不珍惜双方几代领导人和人民的友谊成果,几至消耗殆尽,很可能再次兵戎相见。因此有必要再次督促安倍晋三:请放明白,切勿挑起“战争行为”! 三、击落中国无人机意味着什么? 击落在我国钓鱼岛空域巡航的无人机,从性质上讲,就是名副其实的战争行为,而不是什么摩擦或冲突。日本“国家收购钓鱼岛”后,中日双方在钓鱼岛海域的行动,已经是摩擦和冲突。现在的局势正处于这个阶段。我国没有当亚洲领袖的欲望,也不想走武装崛起的道路。我国更不会主动升级当前的紧张局势,这对中日双方都不好。正确的方向应该是双方坐下来,心平气和地谈谈钓鱼岛的争议问题,找到共识。在这之前,如果做不到釜底抽薪,至少不能火上烧油。日本政府声称要击落我无人机,无疑是火上烧油。当心玩火者自焚。 我当然不会因受日本的恐吓而不再派无人机去钓鱼岛空域巡航,也当然不会只派单机去冒被击落的风险。钓鱼岛空域在我军力控制范围之内。日本果真击落了我无人机,就是打响了战争的第一枪。后面的局势恐怕就不是日本所能控制的了。按照对等原则,我击落在钓鱼岛空域飞行的日本飞机,应是最低限度的回应。请安倍晋三和日本政府做好心理准备。中国的反制手段在多个领域从低烈度到高烈度有许多种,正如我国防部发言人所声明的,“不要低估中国军队维护国家领土主权的坚定意志和决心,我们必将采取果断措施予以反击”。请安倍晋三和日本政府不要误判,想明白了再做打算。 四、安倍晋三究竟搞了啥惹人恨? 安倍晋三再次当选日本首相后,就犯了“糊涂”。他在多个场合表示对第一次任首相时没有参拜靖国神社表示后悔,对现在任上无法参拜表示无奈,并贡献祭品;他积极推动“修宪”和“行使集体自卫权”,力争把自卫队升格为正规军;他支持钓鱼岛“国有化”,并坚持该岛归属没有争议;他多年来首次增加军费,拟成立“海军陆战队”并积极进行夺岛训练,让美军“鱼鹰”旋翼机进驻冲绳;对我船、机巡航钓鱼岛海域和进出公海海峡进行抵近监视和干扰;他频繁访问我国周边国家,插手南海事务,妄图构建包围我国的“价值观包围圈”;他还想当亚洲领袖,带头制衡中国,使中国无法和平崛起。安倍还有一些小动作,如头戴坦克帽登上新型坦克亮相,用抗日战争时进攻中国的“出云号”旧舰名命名新舰,登上731号战机,让人联想到细菌战部队。近日他竟然“批准可击落所谓‘侵犯日本领空’的无人机”。综上所述,安倍晋三已经发展到了利令智昏的地步,再不予以警醒,令其悬崖勒马,恐怕要坠入万劫不复的地步。近 日,我国防部发言人严正警告,如果日本击落我无人机,就是战争行为。不知安倍晋三是否明白什么是“战争行为”?当年日本偷袭美国珍珠港是战争行为,日本袭击北洋水师是战争行为,发动对中国的“一二八事变”、“九一八事变”和“卢沟桥事变”都是战争行为。 中国政府不是北洋政府,中国领导人不是李鸿章,中国人不是二狗子! 只要日本敢挑起战争,我们热血男儿就敢赴日作战、血洗东京靖国屎社! 拓展阅读: 周恩来:不向日索赔是不愿加重日本人民负担 2013-11-04 13:16:50 来源: 人民网 (北京) 人民网北京11月4日电 为纪念周恩来诞辰115周年,由人民出版社出版的《你是这样的人——回忆周恩来口述实录》一书近日在京首发。该书由1998年拍摄电视文献片《百年恩来》主要采访记录整理而成。原采访200余人,本书选取有重要价值的34人的采访记录,这些讲述人均为与周恩来有亲密交往者。选题内容生动感人,再现了周恩来公而忘私的革命精神和丰富的感情世界。全书基本保持了被采访人的个性和语言特点,使读者能从书中共同体验他们人生中最宝贵的记忆与最真挚的情感。书中的许多被采访者已经故去,因此本书所记录的大量鲜为人知的史料更加弥足珍贵。 新的开端:周恩来亲自迎接日本首相田中角荣 林丽韫(全国人大原常委,中国国际文化交流中心副理事长) 1972年9月25日中午时分,这是北京一年中最好的季节,天高云淡风轻。首都机场上,少先队员们高举鲜花,载歌载舞,迎接日本首相田中角荣一行的到来。我紧随在周总理身后。对于年仅39岁的我来说,这是一个值得自己牢记的日子。当田中角荣走下舷梯时,周总理说:“欢迎你来!”他和田中的手紧紧握在了一起。那一刻,中日双方的朋友们都很高兴,终于等到这一天了! 中日邦交正常化的过程,在毛主席、周总理的亲自领导下,经过20多年的民间推动,点点滴滴,细水长流,这一天终于有了结果。田中自己后来也说,轨道是百姓给铺起来的,他是顺着轨道走向中日邦交的谈判桌上的。 当时,日本历届政治家都紧跟着美国,也跟着美国敌视中国,美国的外交政策怎么样,就紧跟着后面走,不敢超越一步。所以,中日两国长期不能恢复邦交。尼克松同中国进行秘密外交,它的这些盟国也都看着呢。当时的说法是:不要赶不上最后一趟班车。 日本的舆论有个形象的比喻:有的首相是“鸭子戏水”。但田中不是,从田中上台前的讲话中就看出他极有可能迈出这一步。于是,周总理就派出孙平化、萧向前当先锋,到日本去做准备工作。1972年7月,田中角荣在选举中获胜,出任新首相,大平正芳任外相,二阶堂进任内阁官房长官。在第一次内阁会议上,田中就公开宣布“要加快与中华人民共和国邦交正常化的步伐”。他还表示:充分理解中国政府一贯主张的中国邦交正常化三原则。 周总理敏锐地抓住时机,作出了积极反应。7月10日,他派中日友协副秘书长孙平化率上海芭蕾舞剧团抵达东京,进行友好访问演出,并指示孙平化争取向田中首相当面转达他的邀请:“只要田中首相能到北京当面谈,一切问题都好商量。”7月16日,周总理在会见日本社会党前委员长佐佐木更三时又表示:“如果日本现任首相、外相或其他大臣来谈恢复邦交问题,北京机场准备向他们开放,欢迎田中本人来。” 日本方面的反应也是神速的。7月22日,大平外相破例会见了孙平化和萧向前。孙平化转达了周总理的邀请,大平当即表示衷心感谢。他说:“日本政府也在考虑,到了一定阶段要实现政府首脑访华。这要选择一个适当的时机,日方正在为此做准备,如去北京,一定要有丰硕的成果。”还说:“因为田中首相和我都是政治家,这是有关我们政治生命的重大问题,也是关系日本命运的重大问题,对日中两国也均事关重大”。8月15日,田中首相在东京的帝国饭店接见了孙平化和萧向前,表示感谢周总理的邀请,他已决定访华,9月21日,日本政府以官房长官谈话的方式正式宣布田中首相将于9月25日至29日访问中国。田中访华一事完全确定了下来。 9月25日那天,北京的天空特别晴朗,天气特别的好。机场礼节性的寒暄之后,周总理陪同田中一行到钓鱼台宾馆,一坐下来田中就问周总理:“这个钓鱼台宾馆什么时候盖的,这么好的宾馆。”周总理说,“这是建国10周年的十大建筑之一。”这么一来宾主就打开话题,谈笑风生了。周总理和田中角荣就中日两国邦交正常化问题先后举行了四次会谈,并正式签署联合声明,我有幸全程担任这次具有重要历史意义的会谈翻译,并参加了两国政府联合声明的签字仪式。 翻译错将田中谈到日本侵华战争的伤害译成“添了麻烦” 在抵达北京的当晚,田中出席周总理为他举行的欢迎晚宴时,发生了一个曲折。那天,我和唐闻生分别担任周总理的日文和英文翻译。按惯例,领导人的讲话由本国的译员来翻译。田中的随身翻译是在台北学的中文,他将田中在答谢辞的一句话:日本侵华战争给中国人民造成的伤害,轻描淡写地译成了“添了麻烦”。这时,宴会厅里立刻响起一片嗡嗡的议论声,站在周总理一侧的唐闻生立时表示不满:“怎么这么轻飘飘的?”周总理听到了小唐的话。我知道这句话日文的原词,也觉得翻译得不好。日文的那句话,如果翻译的时候在词汇的选择上更贴切些,更符合原意些,在词汇上带有道歉的成分,就是将道歉的意思表达得更好一些,也不是不可以。但翻译却选择了轻飘飘的“添了麻烦”的表达方式。周总理当时很平静,是在第二天正式会谈的时候才提了出来。当天,款待客人的礼节还是顾及到了。 第二天会谈时,周总理严肃地说:“你给路过的女孩子的裙子上洒了水,你可以说‘添了麻烦’,这个怎么能说‘添了麻烦’呢。日本军国主义者给中国人民造成了那么多的伤害,怎么是一句‘添了麻烦’就能解决的?!连一点反省的意思都没有,这是不能接受的!” 在这之后的30多年时间里,为田中的这句话,我每每要接受日本记者的采访,尤其是中日邦交正常化逢五逢十的纪念日,记者换了一批又一批,问题却总还是这一个:是不是田中当时就是这么说的?翻译也是这么翻的?你当时的感受是什么?我的回答也总是这样的:田中的原话用得不合适,翻译也不妥。如果翻译时带点道歉的词补救一下,也是可以的。原话本来比较暧昧,再加上翻译就更暧昧。什么叫“添了麻烦”,听上去轻飘飘的,给中国人的感觉就是一点也没道歉,这是不能接受的! 当时我就想过,翻译不仅仅只是一个传声的机器。我们在周总理身边工作,老人家对我们翻译工作要求是很严谨的,他鼓励我们要做到博学多才,要努力学习,扩大知识面。对工作对象要做到十分了解。他自己更是做在了前面。田中来访前,周总理就特别要求我们看田中1972年6月担任首相前写的《日本列岛改造论》,里面有田中的政治倾向和施政方针。他还嘱咐我们,尤其是谈判时的翻译更要严谨,特别是条约性的译文,一点也马虎不得。他在日本留学过,我在翻译的时候他会仔细地听。他很体谅翻译。我在翻译和平共处五项原则的时候,第一条还没有翻译完,他就小声地帮我提示第二条,当时我特别地感动。 田中评价周恩来:躯如杨柳摇微风,心似巨岩碎大涛 周总理跟毛主席一样,在革命战争年代养成的 生活 习惯,晚上工作,凌晨休息,中午起床。这是周总理一直以来的生活习惯,但为了田中,他要改。田中在家的时候有自己的豪宅,有院子,还养了锦鲤,他习惯早睡早起,每天5点起床,在自家院子里活动,生活很规律。田中要来华,周总理事先就交代下去:“我得将我的生活习惯调整得跟他比较接近才行,所以,今后晚上10点钟之后就不要送简报了。”事实上是做不到的。尽管周总理要求工作人员在谈判期间10点之后不要再送简报了,可实际上还在送,他看材料还是看到很晚,有时候三更半夜要材料的情况都有。 周总理在中日建交谈判中很辛苦,因为在田中来之前,有些细节没有完全谈妥,所以在谈的时候总有一些交锋,当时双方交锋最激烈的就是台湾问题,也就是一个中国的原则问题。这个问题不解决,中日邦交不可能实现正常化。在中日邦交正常化前,日本同台湾保持着“外交”关系,日台之间还签订过所谓“和平条约”,而日本要实现同中国邦交正常化,自然就要与台湾“断交、废除条约”。田中此举是冒着政治与生命的双重危险的,因此田中要求中方体谅他面临的实际困难,予以关照。最后,本着周总理提出的求同存异、原则性和灵活性相结合的原则,双方充分运用政治智慧找到了一种折中的解决办法。 《中日联合声明》前言中写明:日本方面痛感日本国过去由于战争给中国人民造成的重大损害的责任,表示深刻的反省。日本方面重申站在充分理解中华人民共和国政府提出的“复交三原则”的立场上,谋求实现日中邦交正化这一见解。中国方面对此表示欢迎。而《中日联合声明》的第二条则是:“日本承认中华人民共和国是代表中国人民的唯一合法政府。”而日台合约问题,是在两国联合声明签订后,由大平外相对外宣布废除日台条约,即与台湾断交。 周总理的外交风格非常重要的一点是“以理服人”,既坚持原则,又通过求同存异,累积共识,消除异见。周总理在这方面做得非常出色。通过这次谈判,田中对周总理的敬佩溢于言表。田中在会谈后对日本的记者书写了周总理给他的印象:“躯如杨柳摇微风,心似巨岩碎大涛。” 周恩来解答:毛主席当年为何决定不向日本索赔 《中日联合声明》经过艰苦的谈判,台湾问题、战争赔款的问题基本达成一致后,毛主席决定接见田中一行。那天到毛主席那里去的时候,田中一进门就想要到洗手间去一下。毛主席就等他。当时田中就很严肃了,说紧张也可以。他见到毛主席,就是很拘谨的样子。看到这种情境,毛主席当时就表示欢迎,然后很风趣地问:“吵架吵完了没有?”田中马上说:“吵完了,吵完了。”毛主席就又转向大平,幽默地说:“天下太平嘛。”大家马上就都笑了起来,气氛就轻松下来,才开始坐下来聊。 毛主席所说的“吵架”,除了台湾问题之外,就是作为战胜国的赔款问题了。在《中日联合公报》第七条中,中华人民共和国政府宣布:为了中日两国人民的友好关系,放弃对日本国的战争赔偿要求。 周总理告诉我们:这是主席决定了,不向日本索赔了。为什么不索赔呢?实际上因为我们中国也吃过赔款的苦头,赔款都是从老百姓的腰包里取出来的。中国人民在那么穷困的情况下,比如庚子赔款为一亿三千零三十七万两。庚子赔款每个中国人被摊派大约一两银子,实际上等于加重老百姓的负担。从这个角度,觉得战后的日本,也是从战争的废墟当中重建起来,重新发展经济的,尽管到1972年中日建交的时候,他们经济已经开始好转了。但是赔款毕竟还得从日本老百姓的兜里拿出来,是在加重老百姓的税赋。 当时周总理还在我们内部讲过,实际上日本赔给印尼这些东南亚国家的战争赔款,都是一些物质赔偿。而且都不是拿最先进的东西来做赔偿的。比方说铁路也不是新的,都是把旧的东西重新刷一刷,修补修补就算了。人家把破旧的东西赔给你。从这个角度来讲,以次充好给你,没多大意思。所以主席便决定不要赔款了。 9月29日上午10时,在人民大会堂,中日两国政府正式签署了联合声明,中日两国恢复邦交。第二天,周总理陪同田中飞往上海。在专机上,周总理给田中题了几个字——“言必信,行必果”。当时周总理拿了一张纸,将这几个字写了出来,很平和地交给了田中。意思就是说中日建交虽然有这么圆满的结果,但是日本方面要言而有信,见诸行动!周总理这六个字的分量是很重的。 日本外相险醉酒失态 周恩来不露声色维护其面子 在上海的欢迎宴会上,大平外相显得异常高兴,在酒宴上频频敬酒。这时,我听到田中用很惊讶的口气说:“哟,大平君,不得了,这么能喝酒啊?大平君今天大功告成,太高兴了,开怀畅饮,从没看到他这么喝酒的,他酒量如此之大我也是第一次知道啊。”我跟着周总理,一向是什么都要翻给他听,要把场面上的情况让老人家知道,于是,我就将田中的话翻给他听。田中这很普通的一段话,周总理就听进去了。 不一会儿,他就对我说:小林,你跟我走。我当时还没有体会到老人家的意思,他就拿着酒杯,站起来走过去。走过去以后就陪着大平向那一桌的主人、客人敬酒,说了一些为中日友好、为客人的身体健康的话。然后,周总理十分巧妙地对大平说:“大平先生,请同我们一起回座位吧。”大平那时的酒也差不多了,但还没到喝醉失态的地步。周总理就很自然、很体面地在别人都还没感觉到有什么问题的时候,将大平请回了座位,没让他再喝下去。 别人都没注意到田中的一句话,偏偏周总理就注意到了,就细心到这个程度。当听到田中说“大平这么开怀畅饮,我是第一次看到”时,周总理就立即采取了措施。处于兴奋状态的大平外长如果那样喝下去,肯定会醉酒失态的。而周总理考虑到一国的外长,在这样一个大型的欢迎宴会上,失态后总是有失于这个国家的体面。所以就主动把他请回到座位上。周总理的这个办法真巧妙,不露声色。他就是特别为别人着想,这么大的场面,维护了大平的面子,没让他失态。外长喝醉了酒,那不是成了大笑话了吗? 周总理高度评价田中角荣:他比尼克松勇敢 周总理在大会堂东大厅会见日本客人,合影完毕,日本记者还在那里不停地照。这时,就有礼宾官让客人们入座,并请记者离开。结果呢,周总理就走向大厅外,他的一步差不多等于我的一步半,我就跑步紧跟着他。他出去,干吗呢?他去跟记者打招呼了。他说:“刚才没来得及跟你们握握手,没跟你们致意啊。”日本的记者都很高兴,万万没想到我们的周总理会是这样的。他所做的诸如种种“小事”,每一个细节,都一次次打动着日本客人,也正是这点点滴滴的小事,汇集成促进中日友好的力量。 就这样,在谈判期间,周总理还细心地安排了田中的饮食起居。对田中的生活细节,事先都了解得清清楚楚。包括国宴上的音乐,也是把田中家乡的音乐给奏出来了。田中听了很意外也很高兴,老家的音乐都出来了能不高兴吗?最后周总理还陪着他,到为田中演奏的我国军乐队那里去答谢。 送别田中时,周总理这样说:“我们和日本的交往有两千多年的历史,半个世纪的对立,20多年的工作。今天,我们已经看到时代螺旋式地前进了。”周总理十分欣赏田中角荣的决断能力和超凡勇气。的确,从田中上台到实现中日邦交正常化,仅仅用了84天,这种势如破竹的形势,就连日本国内也有“迅雷不及掩耳”的感觉。 事后,周总理经常对我们讲,一个历史人物就是有勇气做到别人做不到的,就会名垂青史,我们要永远记住他们。说田中跨出了历史性的一步,别人当首相不一定有这个勇气,敢超在美国之前跟中国建交。周总理在会见日本客人时也高度评价田中:“田中先生一上任就立即作出决断,恢复邦交,这是了不起的,是值得称赞的,他比尼克松勇敢。” 本文摘自《你是这样的人——回忆周恩来口述实录》 主编:邓在军 出版社:人民出版社 出版时间:2013-9 (原标题:周恩来揭秘:毛主席当年为何决定不向日本索赔)
个人分类: CNPI中国国家国力研究院|2529 次阅读|0 个评论
无人机将走向何方
ScienceNews 2013-9-13 16:10
作者:本刊见习记者 段歆涔 目前,全球有五十个左右的国家在使用无人机。相关数据显示,美国将保持在这一领域的统治地位,而主要新兴市场是中国、印度、俄罗斯和韩国。无人机市场正处在市场生命周期的早期阶段,伴随着生产与销售增长,巨大的服务市场也即将开启。无人机已在伊拉克和阿富汗展示了巨大价值,其重要性还将在未来进一步增长。边境监视和国土安全也将成为无人机大显身手的应用领域。虽然全球防务预算环境日益严峻,但无人机仍被视作未来军事行动中极为重要的装备。 无人机时代来临 “暴风雨”无人机——翼展3.2米,巡航速度75节——被设计在强烈风暴中飞行。今年3月,在针对一新项目的试运行期间,它却被安排在蔚蓝平静的天空中飞行。在地面,美国科罗拉多大学博尔德分校(UC Boulder)博士生Maciej Stachura正在敲击一台平板电脑,在控制飞机起飞后,让飞机自带的电脑来自主控制飞机的飞行。系统工程师James Mack始终把双手放在控制器旁,以防随时可能出现的问题;另一名博士生Neeti Wagle则在仔细凝望天空,确保“暴风雨”不会和任何东西发生碰撞。 “暴风雨”此次的任务是找到发送模拟呼救信号的一个灯塔。“暴风雨”在空中盘旋,它的汽油发动机所发出的特殊的噪声让人想到这类飞机的俗名:无人机。科学界更常用的叫法是无人驾驶飞行器(UAV)。 飞行时间已持续了40分钟左右,UC Boulder的团队仔细观察着空中的状况,听着周围的声音,注目着“暴风雨”在晴朗的天空里变成了一个遥远的小点。随后,Stachura的话语中却流露出一丝不安:“‘暴风雨’目前的飞行状况并不好。此时此刻,它应该离我们越来越近。”最终,“暴风雨”转向,调头朝着灯塔的方向飞行。Stachura明显松了一口气:“这才是正确的路径。” 在科学界,无人机的使用也经历了类似曲折的历程。1970年代,美国宇航局(NASA)首次尝试在高空研究中使用定制的无人机,但随后对无人机的使用陷入低潮。原因在于,配备一流传感器的无人机造价极其昂贵,令研究者望而却步,但便宜的装置却无法提供所需的研究价值。 所幸,在过去十年中,价格的降低和技术的进步——从机载导航使用全球定位系统(GPS)到自动驾驶仪的小型化——使得很多科学团体愿意使用无人机来进行实验。 目前,无人机提供了一个收集数据的有效方式,尤其在极地研究、火山研究和野生生物学等领域取得了重要进展。具有多年研究无人机经验的佛罗里达大学盖恩斯维尔分校的生态学家Adam Watts说:“无人机研制将会成为一项不可或缺的革命性技术——它们正在朝这个方向进发”。 但是,技术和法律上的障碍阻挡了无人机更广泛的应用。研究人员正试图提高无人机的自主性、操纵灵敏性和持久性。尤其是美国的法规,严格限制使用无人机的场合和方式。如果规定可以放宽——有迹象表明——会有更多数量的这类“会飞的科学机器人”在天空中大放异彩。 价格与续航成短板 近年来,军方使用无人机来追剿敌人,引发了越来越多的对无人机审查的情况。但是仍有一定数量的无人机被用于科学研究。NASA使用诺斯罗普·格鲁曼公司的“全球鹰”来开展飓风和气候研究,它能飞至距地面近20公里的高空——远高于商用飞机的飞行高度。NASA接收了美国空军的这架无人机并可以免费使用,但是感兴趣的科学家要想使用该无人机,必须支付2千万美元的费用(且不包含传感器)。 大多数研究人员不得不凑合使用更小更便宜的系统。几千美元可以买到一架现成的无线电摇控的固定翼无人机,诸如“暴风雨”。仅300美元就能买到旋翼直升机。装上一些传感器、一个自动驾驶仪和一台预先装入算法的便宜的计算机,研究人员就拥有了一套无人机系统(UAS)。 除了设备上的差异,军用和民用无人机研究项目已经紧密联系在一起,且双方之间能够互相借鉴优势。实际上,很多大学的无人机项目,一部分是由军队资助的。 目前而言,大部分从事无人机研究的研究人员专注于技术的提高,旨在使设备更灵活、更自主以及更好地适应多无人机协同任务。自主飞行需要一系列算法,以破解来自传感器的数据,决定飞行的方向,控制飞行路线,对无人机摄像头捕捉到的物体进行分类。 由于无人机主要使用燃气发动机和电池,因此如何增加续航时间也是研究人员所关注的一个问题。为了减轻重量和节省成本,研究人员常常使用小型无人机,但由于燃料容量小,所以航行时间也短。为了应对这一短板,一些小组努力研制更加小型化的电池,另外一些小组则尝试让无人机像鸟类和滑翔机那样,利用上升气流和风的特性使它飞得更远。苏黎世瑞士联邦理工学院自制系统实验负责人Roland Siegwart的小组正在研制无需着陆的太阳能飞机,他开玩笑说:“把它们当做低轨卫星好了。”但它们在实际收集数据的工作中比卫星更有效率,因为研究人员可以控制它们的飞行轨迹。Siegwart说:“通过它们,我们可以实时掌握丛林火灾的情况、监控偷砍森林的行为、还能协助搜寻遭遇海难的人。 严格的监管 研究无人机的团队不断地通过网络视频来了解其他研究团队的最新进展。最出名的“YouTube明星”当属来自宾夕法尼亚大学的Vijay Kumar。他的团队在室内控制配有视频图符系统的四旋翼直升机,该系统是一种动作捕捉系统,被用于好莱坞大片拍摄以及视频游戏制作。韩国科学技术高级研究院机器人中心主任Hyunchul Shim说:“规则已经被网络改变了。”Siegwart也说:“网络的信息传播速度更快,这对吸引学生参与进来很有帮助。” 新发明使无人机的效率更高,成本更低,监管将成为横在无人机进一步研究与普及过程中的一道坎。Siegwart说:“这仍然是一大问题。” 尤其是在美国,联邦航空管理局(FAA)规定:在户外作业的无人机必须获得官方的许可方可飞行(对非商业用途的业余无人机爱好者的管理则相对宽松一些)。UC Boulder无人机研究工程中心负责人Eric Frew抱怨道:“哪怕我们只是在校园操场上作业,哪怕只飞6英尺高,也必须获得许可。这种规定完全就是一刀切。” 位于华盛顿的FAA要求无人机运营者必须申请、获得两种许可证中的一种,方可在户外利用无人机作业进行科研。申请需要提交一大堆的信息,据该机构沟通部门的反应:“这些信息被FAA用来评估户外作业是否会对其他飞机、人群以及地面财产构成威胁。”这意味着在城市和人口密集地区,无人机作业将不被允许。而且许可的飞行范围只有20平方英里(大约32平方公里)。 FAA要求每次飞行必须由经过认证的飞行员执行。在3月的测试飞行中,Stachura把大部分的时间都用来适应通过电脑屏幕控制飞机的这种操控方式。FAA还要求每次飞行必须有观察员在场,以便留心潜在的对撞;同时,还要求有专门人员在当地机场监控无线电信号。 用途广泛 美国雅典城乔治亚大学研究无人机的专家Eric Johnson,研究了世界各国针对无人机的规定,他说:“在北约国家中,美国的无人机管制是最严的。”但是只要不发生事故,各国似乎能达成这样的共识:有关无人机的法规将进一步放宽。去年通过的《FAA现代化与改革法案》,要求美国运输部出台计划,在2015年前将民用无人机的使用整合到国家航空管理系统中。 Johnson说,与此相反的是,澳大利亚和加拿大允许大多数类型的无人机操作,也许是因为这两个国家空域大,且官僚程度较弱。 大多数无人机研究主要集中于提高无人机本身,一些科学家已经着手将设备投入使用。3月,NASA使用了一架电动军用无人机“龙眼”,采样和拍摄哥斯达黎加Turrialba火山释放的有害气体羽状物。 James Maslanik是UC Boulder研究遥感的专家,自2000年以来,他一直参与了一系列在极地地区使用无人机观测海冰的研究。无人机能够冒险进入对于载人飞机而言过于危险的区域。 生物学家也开始在他们的野外作业中使用无人机。在印度,动物保护组织WWF使用无人机来追踪犀牛偷猎者。 对于不精通工程技术知识的研究人员,无人机提供了大量的机会。例如,苏格兰环境保护代理处,于2012年从瑞士公司senseFly购买了一架无人机,用于调查河口海藻的繁殖情况。该机构的科学家Susan Stevens说:“你尽管不是这一领域的专家,但是可以通过无人机技术,充分地参与其中。”■ 《科学新闻》 (科学新闻2013年第07期 科学·深度)
818 次阅读|0 个评论
隐 身 飞 机
热度 1 yincwxa2006 2013-7-9 10:43
隐形对于一般人来说都不陌生,虽然这些说法大多数来自小说和神话,但是在现实生活中也不乏隐形的例子。比如说变色龙就能够通过改变自己的颜色来进行隐形。人们通过研究仿生学,并且应用了最新的技术和材料,终于在庞大的飞机上也实现了隐形 . 从原理上来说,隐形飞机的隐形并不是让我们的肉眼都看不到,它的目的是让雷达无法侦察到飞机的存在。 所谓隐身飞机( stealthaircraft ),就是利用各种技术 减弱雷达反射波、红外辐射等特征信息,使敌方探测 系统不易发现的飞机。 目前,飞机隐身的方法主要有以下三个方面: (1) 是减小飞机的雷达反射面,从技术角度讲,其主 要措施有设计合理的飞机外型、使用吸波材料、主动 对消、被动对消等; (2) 是降低红外辐射,主要是对飞机上容易产生红外 辐射的部位采取隔热、降温等措施; (3) 是运用隐蔽色降低肉眼可视度。 20 世纪 70 年代东西方的冷战大大促进了双方航空技术 的发展,美国和苏联都将当时最先进的技术用在了新 型飞机研制计划中 1954 年,洛克希德公司提出了研制高空侦察机的计 划 ,有了 U-2 高空战略侦察机 1959 年,洛克希德公司又提出了另一个高空高速侦察 机方案,这就有了后来的 SR-71 侦察 由于当时隐身技术的研究刚刚开始 . 所以只能 通过提高 飞机的速度和飞行高度 , U 一 2 和 sR 一 71 的首要任务 就是飞越敌方领空执行战略任务 隐形飞机.ppt 密码为用户名
个人分类: 高超声速飞行器|2981 次阅读|1 个评论
随机选择一条路径走--二维精确威胁 无人机航迹规划matlab程序
yincwxa2006 2013-7-9 10:34
%蚁群算法 主要适用于航迹规划,主体思想来源于胡中华博士论文 基于智能优化算法的无人机航迹规划若干关键技术研究 %%%程序编写者 西北工业大学自动化学院 Email: yincwxa2013@mail.nwpu.edu.cn %随机选择一条路径走 %% All rights reserved % 输入参数列表 % % Tau 初始信息素矩阵(认为前面的觅食活动中有残留的信息素) % NN 迭代次数(指蚂蚁出动多少波) % MM 蚂蚁个数(每一波蚂蚁有多少个) % X0 起始点(最短路径的起始点) % Y0 终止点(最短路径的目的点) % Alpha 表征信息素重要程度的参数 % Beta 表征启发式因子重要程度的参数 % rou 信息素蒸发系数 % Q 信息素增加强度系数 % x1 规划区域左下角坐标(二维坐标) % x2 规划区域右下角坐标(二维坐标) % x3 规划区域左上角坐标(二维坐标) % x4 规划区域右上角坐标(二维坐标) % N1 栅格法划分二维空间,每个小网格的边长 % N2 节点数个数 % KR 雷达威胁点个数KR= % KM 导弹威胁点个数KM= % KA 高炮威胁点个数KA= % KC 大气威胁点个数KC= % W 雷达、导弹、高炮、大气、耗油威胁的权重构成的权重向量 % 输出参数列表 % ROUTES 每一代的每一只蚂蚁的爬行路线 % PL 每一代的每一只蚂蚁的爬行路线长度 % Tau 输出动态修正过的信息素 clear clc tic; %X0=input('输入飞行器起点坐标(二维坐标)X0=') %Y0=input('输入飞行器目标点坐标(二维坐标)Y0=') %NN=input('输入迭代次数NN=') %MM=input('输入蚂蚁数MM=') %x1=input('输入规划区域左下角坐标(二维坐标)') %x2=input('输入规划区域右下角坐标(二维坐标)') %x3=input('输入规划区域左上角坐标(二维坐标)') %x4=input('输入规划区域右上角坐标(二维坐标)')% x1~x4主要是确定规划区域,由坐标来限制区域 %N1=input('输入网格大小为')%栅格法划分二维空间,每个小网格的边长,此处是正方形网格 X0= Y0= NN= 40 MM= 20 x1= x2= x3= x4= N1=2 h1=(x4(1)-x1(1))/N1 ;%网格行数 v1=(x4(2)-x1(2))/N1;%网格列数 N2=h1*v1;%计算节点数个数,即网格划分后的节点个数 %%%%%%%%%%%%%%%%%%%%%%%%%%%对区域内网格划分后 确定节点坐标 并储存 t=1; for i=1:h1 for j=1:v1 tempx=x1(1)+(i-1)*N1; %%对区域栅格化后第(i,j)位置节点的横坐标 tempy=x1(2)+(j-1)*N1; %%对对区域栅格化后第(i,j)位置节点的纵坐标 P(t,:)= ; %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 t=t+1; end end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%栅格化并存储节点坐标结束%%%%%%%%%%% %%%%%%%%%%%%%%%% 开始存储各种威胁点的坐标%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %KR=input('输入雷达威胁点个数KR=') %KM=input('输入导弹威胁点个数KM=') %KA=input('输入高炮威胁点个数KA=') %KC=input('输入大气威胁点个数KC=') KR= 4 KM= 4 KA= 3 KC= 2 %t=1; %for i=1:KR % P_KR(t,:)=input('输入雷达威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % P_KR_edg(t,:)=input('输入雷达威胁点的边界(按顺序下边界、上边界输入)') % t=t+1; % end %t=1; %for i=1:KM % P_KM(t,:)=input('输入导弹威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % P_KM_edg(t,:)=input('输入导弹威胁点的边界(按顺序下边界、上边界输入)') % t=t+1; %end % t=1; %for i=1:KA % P_KA(t,:)=input('输入高炮威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % P_KA_edg(t,:)=input('输入高炮威胁点的边界(按顺序下边界、上边界输入)') % t=t+1; %end % t=1; %for i=1:KC % P_KC(t,:)=input('输入大气威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % P_KC_edg(t,:)=input('输入高炮威胁点的边界(按顺序下边界、上边界输入)') % t=t+1; %end P_KR= P_KM= P_KA= P_KC= P_KR_edg= P_KM_edg= P_KA_edg= P_KC_edg= %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%威胁点坐标输入结束%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%% 计算导引因子%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% for i=1:N2 lamd(i)=1/sqrt( (P(i,1)-Y0(1))^2+(P(i,2)-Y0(2))^2 ); end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%开始设计启发因子%%%%%%%%%%%%%%%%%%% %w=input('输入由雷达、导弹、高炮、大气、耗油威胁的权重构成的权重向量(注意顺序)W=') w= ROUTES=cell(NN,MM); %用细胞结构存储每一代的每一只蚂蚁的爬行路线 PL=zeros(NN,MM); %用矩阵存储每一代的每一只蚂蚁的爬行路线长度 Tau=ones(N2,N2).*3; %初始信息素浓度 任选一个常数,本处选择3 %Alpha=input('输入信息素重要程度Alpha=') %Beta=input('输入启发因子重要程度Beta=') %rou=input('输入信息素挥发程度rou=') %gama=input('输入导引因子重要性程度gama=') %Q=input('输入信息素增加强度系数Q=') %C0=input('输入单位耗油量C0=') Alpha=1 Beta= 0.25 rou= 0.4 gama=10 Q= 10 C0=1 %%%%%%%%%%%%%%%%%%%%%%%%%下面开始迭代计算 for ik=1:NN %(迭代NN次) for m=1:MM %% 第一步:状态初始化 tt=round((X0(1)-x1(1))/N1)+1+round((X0(2)-x1(2))/N1)*h1;% 根据起点坐标得到节点数,采用四舍五入的方法将起点归并到相应的节点处 tt2=round((Y0(1)-x1(1))/N1)+1+round((Y0(2)-x1(2))/N1)*h1;% 根据目标坐标得到节点数,采用四舍五入的方法将起点归并到相应的节点处 Current=tt; ;%当前节点初始化为起始点,一般默认起点在第一个节点,故此处可以设Current=1 Path=tt;%爬行路线初始化 PLkm=0;%爬行路线长度初始化 TABUkm=ones(1,N2);%禁忌表初始化 TABUkm(Current)=0;%已经在初始点了,因此要排除 %第二步:下一步可以前往的节点 Len_LJD=3; % 可以走的节点个数 从起点开始朝下走,有三个方向可以走,分别是 节点2 节点1+v1 节点 1+v1+1 LJD= ;% 可以走的节点的集合 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此处增加导引因子 在线计算 %%计算从当前位置到下一个可选位置的所有雷达威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KR if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KR(k,1)-P_KR(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KR_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KR(k,1)-P_KR(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KR_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:)) ); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^2)); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))) end end else if abs(P_KR(k,1)-P(LJD(i),1))P_KR_edg(k,2) t=t+0 else if abs(P_KR(k,1)-P(LJD(i),1))P_KR_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KR(k,1)-P(LJD(i),1))^2+ (P_KR(k,2)- x)^2- P_KR_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))) ; b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KR(k,1)-P(LJD(i),1))^2+ (P_KR(k,2)- x )^2)^2)); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZR(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有导弹威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KM if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KM(k,1)-P_KM(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KM_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KM(k,1)-P_KM(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KM_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KM(k,1)-x)^2+ (P_KM(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KM_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:)) ); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1);% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 end syms x f=sym(simple(1/((P_KM(k,1)-x)^2+ (P_KM(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KM(k,1)-P(LJD(i),1))P_KM_edg(k,2) t=t+0 else if abs(P_KM(k,1)-P(LJD(i),1))P_KM_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KM(k,1)-P(LJD(i),1))^2+ (P_KM(k,2)- x)^2- P_KM_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KM(k,1)-P(LJD(i),1))^2+ (P_KM(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZM(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有高炮威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KA if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KA(k,1)-P_KA(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KA_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KA(k,1)-P_KA(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KA_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KA(k,1)-x)^2+ (P_KA(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KA_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))) ; b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KA(k,1)-x)^2+ (P_KA(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KA(k,1)-P(LJD(i),1))P_KA_edg(k,2) t=t+0 else if abs(P_KA(k,1)-P(LJD(i),1))P_KA_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KA(k,1)-P(LJD(i),1))^2+ (P_KA(k,2)- x)^2- P_KA_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KA(k,1)-P(LJD(i),1))^2+ (P_KA(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZA(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有大气威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KC if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KC(k,1)-P_KC(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KC_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KC(k,1)-P_KC(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KC_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KC(k,1)-x)^2+ (P_KC(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KC_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KC(k,1)-x)^2+ (P_KC(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KC(k,1)-P(LJD(i),1))P_KC_edg(k,2) t=t+0 else if abs(P_KC(k,1)-P(LJD(i),1))P_KC_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KC(k,1)-P(LJD(i),1))^2+ (P_KC(k,2)- x)^2- P_KC_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KC(k,1)-P(LJD(i),1))^2+ (P_KC(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZC(Current,LJD(i))=t; end for i=1:Len_LJD Eta(Current,LJD(i))=1/(w(1)*ZR(Current,LJD(i))+w(2)*ZM(Current,LJD(i))+w(3)*ZA(Current,LJD(i))+w(4)*ZC(Current,LJD(i))) end %下面开始循环 觅食停止条件:蚂蚁未遇到食物或者陷入死胡同 while (Current~=tt2)(Len_LJD=1) %% 第三步:转轮赌法选择下一步怎么走 PP=zeros(1,Len_LJD); for i=1:Len_LJD PP(i)=(Tau(Current,LJD(i))^Alpha)*(Eta(Current,LJD(i))^Beta)*((lamd(LJD(i)))^gama);%%%在此处加入了导引因子 end PP=PP./(sum(PP));%建立概率分布 Pcum=cumsum(PP); Select=find(Pcum=rand); if isempty(Select) %判别是否为空 to_visit=LJD(1); else to_visit=LJD(Select(1)) %选择随机产生的第一个下标所对应的节点 end %Select=find(PP=max(PP));%选择概率较大的下标 一条路线走 %to_visit=LJD(Select);%选择概率较大的下标所对应的节点 %% 第四步:状态更新和记录 Path= ;%路径增加 CtoVLenght=sqrt((P(Current,1)-P(to_visit,1))^2+(P(Current,2)-P(to_visit,2))^2)%计算当前点到下一个节点之间的距离 PLkm=PLkm+CtoVLenght;%路径长度增加 Current=to_visit;%蚂蚁移到下一个节点 TABUkm(Current)=0;%已访问过的节点从禁忌表中删除 %%%%%%%%%%下面寻找新的节点,在其附近的九宫图相邻点构成的节点集合 ttt= ;%根据九宫图确定可以走的路径 for kkkk=1:N2 if sum(ttt==kkkk)0 %%%%% 只搜索循环中ttt中有的节点进行判别 if TABUkm(kkkk)==0 %%% 查找到环中ttt中有的节点是否走过 如果走过则将该节点结合ttt中的数值设为0便于后面排除 ttt(find(ttt==kkkk))=0 ; end end end tsite=find(ttt0ttt=N2); %排除九宫图构造中不存在的点和走过点的下表 LJD=ttt(tsite) ; %查找到当前可以走的点 ; Len_LJD=length(LJD);%可选节点的个数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此处增加导引因子 在线计算 %%计算从当前位置到下一个可选位置的所有雷达威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KR if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KR(k,1)-P_KR(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KR_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KR(k,1)-P_KR(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KR_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:)) ); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^2)); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KR(k,1)-P(LJD(i),1))P_KR_edg(k,2) t=t+0 else if abs(P_KR(k,1)-P(LJD(i),1))P_KR_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KR(k,1)-P(LJD(i),1))^2+ (P_KR(k,2)- x)^2- P_KR_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))) ; b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KR(k,1)-P(LJD(i),1))^2+ (P_KR(k,2)- x )^2)^2)); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZR(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有导弹威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KM if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KM(k,1)-P_KM(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KM_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KM(k,1)-P_KM(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KM_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KM(k,1)-x)^2+ (P_KM(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KM_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:)) ); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1);% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 end syms x f=sym(simple(1/((P_KM(k,1)-x)^2+ (P_KM(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KM(k,1)-P(LJD(i),1))P_KM_edg(k,2) t=t+0 else if abs(P_KM(k,1)-P(LJD(i),1))P_KM_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KM(k,1)-P(LJD(i),1))^2+ (P_KM(k,2)- x)^2- P_KM_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KM(k,1)-P(LJD(i),1))^2+ (P_KM(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZM(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有高炮威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KA if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KA(k,1)-P_KA(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KA_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KA(k,1)-P_KA(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KA_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KA(k,1)-x)^2+ (P_KA(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KA_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))) ; b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KA(k,1)-x)^2+ (P_KA(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KA(k,1)-P(LJD(i),1))P_KA_edg(k,2) t=t+0 else if abs(P_KA(k,1)-P(LJD(i),1))P_KA_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KA(k,1)-P(LJD(i),1))^2+ (P_KA(k,2)- x)^2- P_KA_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KA(k,1)-P(LJD(i),1))^2+ (P_KA(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZA(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有大气威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KC if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KC(k,1)-P_KC(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KC_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KC(k,1)-P_KC(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KC_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KC(k,1)-x)^2+ (P_KC(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KC_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KC(k,1)-x)^2+ (P_KC(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KC(k,1)-P(LJD(i),1))P_KC_edg(k,2) t=t+0 else if abs(P_KC(k,1)-P(LJD(i),1))P_KC_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KC(k,1)-P(LJD(i),1))^2+ (P_KC(k,2)- x)^2- P_KC_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KC(k,1)-P(LJD(i),1))^2+ (P_KC(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZC(Current,LJD(i))=t; end for i=1:Len_LJD Eta(Current,LJD(i))=1/(w(1)*ZR(Current,LJD(i))+w(2)*ZM(Current,LJD(i))+w(3)*ZA(Current,LJD(i))+w(4)*ZC(Current,LJD(i))) end end %第五步:记下每一代每一只蚂蚁的觅食路线和路线长度 ROUTES{ik,m}=Path; if Path(end)==tt2 PL(ik,m)=PLkm; else PL(ik,m)=inf; end end %%%%%%********** 至此 所有一群蚂蚁全部走一次 完成一次迭代 %% 第六步:更新信息素 temp_sit=find(PL(ik,:)==min(PL(ik,:))); %获取路径最短的一个蚂蚁走的路 ROUT=ROUTES{ik,temp_sit(1)} %获取路径最短蚂蚁经过的路径 Best_t=0; for j=1:length(ROUT) Best_t=Best_t+W(1)*ZR(ROUT(j))+W(2)*ZM(ROUT(j))+W(3)*ZA(ROUT(j))+W(4)*ZC(ROUT(j));%计算出最优路径下是雷达、导弹、高炮、大气威胁的综合值 end Best_t=Best_t+C0*min(PL(ik,:))%计算出最优路径下是雷达、导弹、高炮、大气威胁。耗油量的综合值即为最优路径的代价 Delta_Tau=zeros(N2,N2); %更新量初始化 for j1=1:length(ROUT) for j2=1:length(ROUT) Delta_Tau(ROUT(j1),ROUT(j2))=Q/Best_t; %对最优路径上的蚂蚁通过的结点进行信息素更新 其他的全部为0 end end Tau= rou.*Tau+(1-rou).*Delta_Tau;%信息素挥发一部分,新增加一部分 end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%下面输出最短距离 和最短距离对应的路径%%%%%%%%%%%%% Temp_SIT=find(PL==min(min(PL))); row= mod(Temp_SIT(1),NN);% mod 是取余数 if row==0 row=NN; end lie=ceil(Temp_SIT(1)/NN);% ceil(X)向上取整 MIN_Path_Length=PL(row,lie) % 输出最短路径长度 MIN_Path=ROUTES{row,lie} % 输出最短路径 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% 迭代完成 下面是作图 %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% plotif=1;%是否绘图的控制参数 if plotif==1 %绘收敛曲线 meanPL=zeros(1,NN); minPL=zeros(1,NN); for i=1:NN PLK=PL(i,:); Nonzero=find(PLK) PLKPLK=PLK(Nonzero); meanPL(i)=mean(PLKPLK); minPL(i)=min(PLKPLK); end figure(1) plot(minPL,'r*'); hold on plot(meanPL); grid on title('收敛曲线(平均路径长度和最小路径长度)'); xlabel('迭代次数'); ylabel('路径长度'); figure(2) for i=1:NN plot(PL(i,:)); hold on end figure(3) hold on plot(P_KR(:,1),P_KR(:,2),'b*') plot(P_KM(:,1),P_KM(:,2),'g^') plot(P_KA(:,1),P_KA(:,2),'+') plot(P_KC(:,1),P_KC(:,2),'ro') Temp_ROUT=ROUTES{NN,MM}; plot(P(Temp_ROUT,1),P(Temp_ROUT,2),'x') end timeTotal = toc
个人分类: 航迹规划|3255 次阅读|0 个评论
基于蚁群算法的无人机航迹规划matlab算法
yincwxa2006 2013-6-27 15:49
本算法的主题思想是基于胡中华博士的论文,但是在具体编程的过程中发现其博士论文中在制定启发因子的时候,存在一定的问题,没有分清远离威胁点、在威胁点威胁范围内的威胁概率计算情况,并对威胁概率的点计算转换成连续区间的威胁概率,即转换成定积分的形式进行编程 本算法只是初步算法, 总体来说是可以运行的,但是因为程序设计过程中没有考虑算法的复杂度,考虑的东西太多,反而增加了算法的复杂度,导致耗时比较多 %蚁群算法 主要适用于航迹规划,主体思想来源于胡中华博士论文 基于智能优化算法的无人机航迹规划若干关键技术研究 %%%程序编写者 西北工业大学自动化学院 Email: yincwxa2013@mail.nwpu.edu.cn %随机选择一条路径走 %% All rights reserved % 输入参数列表 % % Tau 初始信息素矩阵(认为前面的觅食活动中有残留的信息素) % NN 迭代次数(指蚂蚁出动多少波) % MM 蚂蚁个数(每一波蚂蚁有多少个) % X0 起始点(最短路径的起始点) % Y0 终止点(最短路径的目的点) % Alpha 表征信息素重要程度的参数 % Beta 表征启发式因子重要程度的参数 % rou 信息素蒸发系数 % Q 信息素增加强度系数 % x1 规划区域左下角坐标(二维坐标) % x2 规划区域右下角坐标(二维坐标) % x3 规划区域左上角坐标(二维坐标) % x4 规划区域右上角坐标(二维坐标) % N1 栅格法划分二维空间,每个小网格的边长 % N2 节点数个数 % KR 雷达威胁点个数KR= % KM 导弹威胁点个数KM= % KA 高炮威胁点个数KA= % KC 大气威胁点个数KC= % W 雷达、导弹、高炮、大气、耗油威胁的权重构成的权重向量 % 输出参数列表 % ROUTES 每一代的每一只蚂蚁的爬行路线 % PL 每一代的每一只蚂蚁的爬行路线长度 % Tau 输出动态修正过的信息素 clear clc %X0=input('输入飞行器起点坐标(二维坐标)X0=') %Y0=input('输入飞行器目标点坐标(二维坐标)Y0=') %NN=input('输入迭代次数NN=') %MM=input('输入蚂蚁数MM=') %x1=input('输入规划区域左下角坐标(二维坐标)') %x2=input('输入规划区域右下角坐标(二维坐标)') %x3=input('输入规划区域左上角坐标(二维坐标)') %x4=input('输入规划区域右上角坐标(二维坐标)')% x1~x4主要是确定规划区域,由坐标来限制区域 %N1=input('输入网格大小为')%栅格法划分二维空间,每个小网格的边长,此处是正方形网格 X0= Y0= NN= 40 MM= 20 x1= x2= x3= x4= N1=2 h1=(x4(1)-x1(1))/N1 ;%网格行数 v1=(x4(2)-x1(2))/N1;%网格列数 N2=h1*v1;%计算节点数个数,即网格划分后的节点个数 %%%%%%%%%%%%%%%%%%%%%%%%%%%对区域内网格划分后 确定节点坐标 并储存 t=1; for i=1:h1 for j=1:v1 tempx=x1(1)+(i-1)*N1; %%对区域栅格化后第(i,j)位置节点的横坐标 tempy=x1(2)+(j-1)*N1; %%对对区域栅格化后第(i,j)位置节点的纵坐标 P(t,:)= ; %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 t=t+1; end end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%栅格化并存储节点坐标结束%%%%%%%%%%% %%%%%%%%%%%%%%%% 开始存储各种威胁点的坐标%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %KR=input('输入雷达威胁点个数KR=') %KM=input('输入导弹威胁点个数KM=') %KA=input('输入高炮威胁点个数KA=') %KC=input('输入大气威胁点个数KC=') KR= 4 KM= 4 KA= 3 KC= 2 %t=1; %for i=1:KR % P_KR(t,:)=input('输入雷达威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % P_KR_edg(t,:)=input('输入雷达威胁点的边界(按顺序下边界、上边界输入)') % t=t+1; % end %t=1; %for i=1:KM % P_KM(t,:)=input('输入导弹威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % P_KM_edg(t,:)=input('输入导弹威胁点的边界(按顺序下边界、上边界输入)') % t=t+1; %end % t=1; %for i=1:KA % P_KA(t,:)=input('输入高炮威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % P_KA_edg(t,:)=input('输入高炮威胁点的边界(按顺序下边界、上边界输入)') % t=t+1; %end % t=1; %for i=1:KC % P_KC(t,:)=input('输入大气威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % P_KC_edg(t,:)=input('输入高炮威胁点的边界(按顺序下边界、上边界输入)') % t=t+1; %end P_KR= P_KM= P_KA= P_KC= P_KR_edg= P_KM_edg= P_KA_edg= P_KC_edg= %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%威胁点坐标输入结束%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%% 计算导引因子%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% for i=1:N2 lamd(i)=1/sqrt( (P(i,1)-Y0(1))^2+(P(i,2)-Y0(2))^2 ) end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%开始设计启发因子%%%%%%%%%%%%%%%%%%% %w=input('输入由雷达、导弹、高炮、大气、耗油威胁的权重构成的权重向量(注意顺序)W=') w= ROUTES=cell(NN,MM); %用细胞结构存储每一代的每一只蚂蚁的爬行路线 PL=zeros(NN,MM); %用矩阵存储每一代的每一只蚂蚁的爬行路线长度 Tau=ones(N2,N2).*3; %初始信息素浓度 任选一个常数,本处选择3 %Alpha=input('输入信息素重要程度Alpha=') %Beta=input('输入启发因子重要程度Beta=') %rou=input('输入信息素挥发程度rou=') %gama=input('输入导引因子重要性程度gama=') %Q=input('输入信息素增加强度系数Q=') %C0=input('输入单位耗油量C0=') Alpha=1 Beta= 0.25 rou= 0.4 gama=10 Q= 10 C0=1 %%%%%%%%%%%%%%%%%%%%%%%%%下面开始迭代计算 for ik=1:NN %(迭代NN次) for m=1:MM %% 第一步:状态初始化 tt=round((X0(1)-x1(1))/N1)+1+round((X0(2)-x1(2))/N1)*h1;% 根据起点坐标得到节点数,采用四舍五入的方法将起点归并到相应的节点处 tt2=round((Y0(1)-x1(1))/N1)+1+round((Y0(2)-x1(2))/N1)*h1;% 根据目标坐标得到节点数,采用四舍五入的方法将起点归并到相应的节点处 Current=tt; ;%当前节点初始化为起始点,一般默认起点在第一个节点,故此处可以设Current=1 Path=tt;%爬行路线初始化 PLkm=0;%爬行路线长度初始化 TABUkm=ones(1,N2);%禁忌表初始化 TABUkm(Current)=0;%已经在初始点了,因此要排除 %第二步:下一步可以前往的节点 Len_LJD=3; % 可以走的节点个数 从起点开始朝下走,有三个方向可以走,分别是 节点2 节点1+v1 节点 1+v1+1 LJD= ;% 可以走的节点的集合 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此处增加导引因子 在线计算 %%计算从当前位置到下一个可选位置的所有雷达威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KR if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KR(k,1)-P_KR(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KR_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KR(k,1)-P_KR(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KR_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:)) ); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^2)); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))) end end else if abs(P_KR(k,1)-P(LJD(i),1))P_KR_edg(k,2) t=t+0 else if abs(P_KR(k,1)-P(LJD(i),1))P_KR_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KR(k,1)-P(LJD(i),1))^2+ (P_KR(k,2)- x)^2- P_KR_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))) ; b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KR(k,1)-P(LJD(i),1))^2+ (P_KR(k,2)- x )^2)^2)); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZR(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有导弹威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KM if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KM(k,1)-P_KM(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KM_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KM(k,1)-P_KM(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KM_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KM(k,1)-x)^2+ (P_KM(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KM_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:)) ); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1);% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 end syms x f=sym(simple(1/((P_KM(k,1)-x)^2+ (P_KM(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KM(k,1)-P(LJD(i),1))P_KM_edg(k,2) t=t+0 else if abs(P_KM(k,1)-P(LJD(i),1))P_KM_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KM(k,1)-P(LJD(i),1))^2+ (P_KM(k,2)- x)^2- P_KM_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KM(k,1)-P(LJD(i),1))^2+ (P_KM(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZM(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有高炮威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KA if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KA(k,1)-P_KA(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KA_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KA(k,1)-P_KA(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KA_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KA(k,1)-x)^2+ (P_KA(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KA_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))) ; b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KA(k,1)-x)^2+ (P_KA(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KA(k,1)-P(LJD(i),1))P_KA_edg(k,2) t=t+0 else if abs(P_KA(k,1)-P(LJD(i),1))P_KA_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KA(k,1)-P(LJD(i),1))^2+ (P_KA(k,2)- x)^2- P_KA_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KA(k,1)-P(LJD(i),1))^2+ (P_KA(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZA(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有大气威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KC if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KC(k,1)-P_KC(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KC_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KC(k,1)-P_KC(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KC_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KC(k,1)-x)^2+ (P_KC(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KC_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KC(k,1)-x)^2+ (P_KC(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KC(k,1)-P(LJD(i),1))P_KC_edg(k,2) t=t+0 else if abs(P_KC(k,1)-P(LJD(i),1))P_KC_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KC(k,1)-P(LJD(i),1))^2+ (P_KC(k,2)- x)^2- P_KC_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KC(k,1)-P(LJD(i),1))^2+ (P_KC(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZC(Current,LJD(i))=t; end for i=1:Len_LJD Eta(Current,LJD(i))=1/(w(1)*ZR(Current,LJD(i))+w(2)*ZM(Current,LJD(i))+w(3)*ZA(Current,LJD(i))+w(4)*ZC(Current,LJD(i))) end %下面开始循环 觅食停止条件:蚂蚁未遇到食物或者陷入死胡同 while (Current~=tt2)(Len_LJD=1) %% 第三步:转轮赌法选择下一步怎么走 PP=zeros(1,Len_LJD); for i=1:Len_LJD PP(i)=(Tau(Current,LJD(i))^Alpha)*(Eta(Current,LJD(i))^Beta)*((lamd(LJD(i)))^gama);%%%在此处加入了导引因子 end PP=PP./(sum(PP));%建立概率分布 Pcum=cumsum(PP); Select=find(Pcum=rand); if isempty(Select) %判别是否为空 to_visit=LJD(1); else to_visit=LJD(Select(1)) %选择随机产生的第一个下标所对应的节点 end %Select=find(PP=max(PP));%选择概率较大的下标 一条路线走 %to_visit=LJD(Select);%选择概率较大的下标所对应的节点 %% 第四步:状态更新和记录 Path= ;%路径增加 CtoVLenght=sqrt((P(Current,1)-P(to_visit,1))^2+(P(Current,2)-P(to_visit,2))^2)%计算当前点到下一个节点之间的距离 PLkm=PLkm+CtoVLenght;%路径长度增加 Current=to_visit;%蚂蚁移到下一个节点 TABUkm(Current)=0;%已访问过的节点从禁忌表中删除 %%%%%%%%%%下面寻找新的节点,在其附近的九宫图相邻点构成的节点集合 ttt= ;%根据九宫图确定可以走的路径 for kkkk=1:N2 if sum(ttt==kkkk)0 %%%%% 只搜索循环中ttt中有的节点进行判别 if TABUkm(kkkk)==0 %%% 查找到环中ttt中有的节点是否走过 如果走过则将该节点结合ttt中的数值设为0便于后面排除 ttt(find(ttt==kkkk))=0 ; end end end tsite=find(ttt0ttt=N2); %排除九宫图构造中不存在的点和走过点的下表 LJD=ttt(tsite) ; %查找到当前可以走的点 ; Len_LJD=length(LJD);%可选节点的个数 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%此处增加导引因子 在线计算 %%计算从当前位置到下一个可选位置的所有雷达威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KR if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KR(k,1)-P_KR(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KR_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KR(k,1)-P_KR(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KR_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:)) ); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^2)); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KR(k,1)-P(LJD(i),1))P_KR_edg(k,2) t=t+0 else if abs(P_KR(k,1)-P(LJD(i),1))P_KR_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KR(k,1)-P(LJD(i),1))^2+ (P_KR(k,2)- x)^2- P_KR_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))) ; b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KR(k,1)-P(LJD(i),1))^2+ (P_KR(k,2)- x )^2)^2)); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZR(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有导弹威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KM if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KM(k,1)-P_KM(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KM_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KM(k,1)-P_KM(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KM_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KM(k,1)-x)^2+ (P_KM(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KM_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:)) ); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1);% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 end syms x f=sym(simple(1/((P_KM(k,1)-x)^2+ (P_KM(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KM(k,1)-P(LJD(i),1))P_KM_edg(k,2) t=t+0 else if abs(P_KM(k,1)-P(LJD(i),1))P_KM_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KM(k,1)-P(LJD(i),1))^2+ (P_KM(k,2)- x)^2- P_KM_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KM(k,1)-P(LJD(i),1))^2+ (P_KM(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZM(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有高炮威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KA if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KA(k,1)-P_KA(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KA_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KA(k,1)-P_KA(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KA_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KA(k,1)-x)^2+ (P_KA(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KA_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))) ; b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KA(k,1)-x)^2+ (P_KA(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KA(k,1)-P(LJD(i),1))P_KA_edg(k,2) t=t+0 else if abs(P_KA(k,1)-P(LJD(i),1))P_KA_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KA(k,1)-P(LJD(i),1))^2+ (P_KA(k,2)- x)^2- P_KA_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KA(k,1)-P(LJD(i),1))^2+ (P_KA(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZA(Current,LJD(i))=t; end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%计算从当前位置到下一个可选位置的所有大气威胁点的威胁和 for i=1:Len_LJD t=0; for k=1:KC if P(Current,1)~=P(LJD(i),1) k1=(P(Current,2)-P(LJD(i),2))/(P(Current,1)-P(LJD(i),1)) if abs(k1*P_KC(k,1)-P_KC(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KC_edg(k,2) t=t+0 %如果距离超过最大距离 威胁概率为0 else if abs(k1*P_KC(k,1)-P_KC(k,2)+P(LJD(i),2)-k1*P(LJD(i),1))/sqrt(1+k1^2)P_KC_edg(k,1) t=t+1 %如果距离小于比最小距离 威胁概率为1 else %如果距离介于最小和最大之间 则需要重新计算概率 % EDG_INV_min(k,:)=solve('(P_KR(k,1)-x)^2+ (P_KR(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KR_edg(k,1)^2=0 ');%确定下届的区间 % if EDG_INV_min(k,1)P(Current,1) % EDG_INV_min(k,1)=P(Current,1); % end % if EDG_INV_min(k,2)P(LJD(i),1) % EDG_INV_min(k,2)=P(LJD(i),1); % end% 可以不考虑下届的区间 如果经过下届 肯定被击中 概率为1 所以不用考虑 EDG_INV_max(k,:)=solve('(P_KC(k,1)-x)^2+ (P_KC(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2- P_KC_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,1) b=P(Current,1); end if aP(LJD(i),1) a=P(LJD(i),1); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KC(k,1)-x)^2+ (P_KC(k,2)- P(LJD(i),2) -k1*(x-P(LJD(i),1)) )^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2/abs(P(Current,1)-P(LJD(i),1))); end end else if abs(P_KC(k,1)-P(LJD(i),1))P_KC_edg(k,2) t=t+0 else if abs(P_KC(k,1)-P(LJD(i),1))P_KC_edg(k,1) t=t+1 else EDG_INV_max(k,:)=solve('(P_KC(k,1)-P(LJD(i),1))^2+ (P_KC(k,2)- x)^2- P_KC_edg(k,2)^2=0 ');%确定上届的区间 a=max(eval(EDG_INV_max(k,:))); b=min(eval(EDG_INV_max(k,:))); if bP(Current,2) b=P(Current,2); end if aP(LJD(i),2) a=P(LJD(i),2); end% 根据最远距离确定飞入威胁区的行走区域 从而便于积分 积分区间为 EDG_INV_max 这个是二维坐标 分布为左边界和右边界 syms x f=sym(simple(1/((P_KC(k,1)-P(LJD(i),1))^2+ (P_KC(k,2)- x)^2)^(1/2))); k2=int(f,b,a); t=t+eval(k2*abs(P(Current,2)-P(LJD(i),2))); end end end end ZC(Current,LJD(i))=t; end for i=1:Len_LJD Eta(Current,LJD(i))=1/(w(1)*ZR(Current,LJD(i))+w(2)*ZM(Current,LJD(i))+w(3)*ZA(Current,LJD(i))+w(4)*ZC(Current,LJD(i))) end end %第五步:记下每一代每一只蚂蚁的觅食路线和路线长度 ROUTES{ik,m}=Path; if Path(end)==tt2 PL(ik,m)=PLkm; else PL(ik,m)=inf; end end %%%%%%********** 至此 所有一群蚂蚁全部走一次 完成一次迭代 %% 第六步:更新信息素 temp_sit=find(PL(ik,:)==min(PL(ik,:))); %获取路径最短的一个蚂蚁走的路 ROUT=ROUTES{ik,temp_sit(1)} %获取路径最短蚂蚁经过的路径 Best_t=0; for j=1:length(ROUT) Best_t=Best_t+W(1)*ZR(ROUT(j))+W(2)*ZM(ROUT(j))+W(3)*ZA(ROUT(j))+W(4)*ZC(ROUT(j));%计算出最优路径下是雷达、导弹、高炮、大气威胁的综合值 end Best_t=Best_t+C0*min(PL(ik,:))%计算出最优路径下是雷达、导弹、高炮、大气威胁。耗油量的综合值即为最优路径的代价 Delta_Tau=zeros(N2,N2); %更新量初始化 for j1=1:length(ROUT) for j2=1:length(ROUT) Delta_Tau(ROUT(j1),ROUT(j2))=Q/Best_t; %对最优路径上的蚂蚁通过的结点进行信息素更新 其他的全部为0 end end Tau= rou.*Tau+(1-rou).*Delta_Tau;%信息素挥发一部分,新增加一部分 end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%下面输出最短距离 和最短距离对应的路径%%%%%%%%%%%%% Temp_SIT=find(PL==min(min(PL))); row= mod(Temp_SIT(1),NN);% mod 是取余数 if row==0 row=NN; end lie=ceil(Temp_SIT(1)/NN);% ceil(X)向上取整 MIN_Path_Length=PL(row,lie) % 输出最短路径长度 MIN_Path=ROUTES{row,lie} % 输出最短路径 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% 迭代完成 下面是作图 %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% plotif=1;%是否绘图的控制参数 if plotif==1 %绘收敛曲线 meanPL=zeros(1,NN); minPL=zeros(1,NN); for i=1:NN PLK=PL(i,:); Nonzero=find(PLK) PLKPLK=PLK(Nonzero); meanPL(i)=mean(PLKPLK); minPL(i)=min(PLKPLK); end figure(1) plot(minPL,'r*'); hold on plot(meanPL); grid on title('收敛曲线(平均路径长度和最小路径长度)'); xlabel('迭代次数'); ylabel('路径长度'); figure(2) for i=1:NN plot(PL(i,:)); hold on end figure(3) hold on plot(P_KR(:,1),P_KR(:,2),'b*') plot(P_KM(:,1),P_KM(:,2),'g^') plot(P_KA(:,1),P_KA(:,2),'+') plot(P_KC(:,1),P_KC(:,2),'ro') Temp_ROUT=ROUTES{NN,MM}; plot(P(Temp_ROUT,1),P(Temp_ROUT,2),'x') end
8264 次阅读|0 个评论
基于蚁群优化算法的无人机航迹规划matlab程序--无导引因子
yincwxa2006 2013-6-8 11:31
%蚁群算法 主要适用于航迹规划,主体思想来源于胡中华博士论文 基于智能优化算法的无人机航迹规划若干关键技术研究 %%%程序编写者 西北工业大学自动化学院 Email: yincwxa2013@mail.nwpu.edu.cn %% All rights reserved % 输入参数列表 % % Tau 初始信息素矩阵(认为前面的觅食活动中有残留的信息素) % NN 迭代次数(指蚂蚁出动多少波) % MM 蚂蚁个数(每一波蚂蚁有多少个) % X0 起始点(最短路径的起始点) % Y0 终止点(最短路径的目的点) % Alpha 表征信息素重要程度的参数 % Beta 表征启发式因子重要程度的参数 % rou 信息素蒸发系数 % Q 信息素增加强度系数 % x1 规划区域左下角坐标(二维坐标) % x2 规划区域右下角坐标(二维坐标) % x3 规划区域左上角坐标(二维坐标) % x4 规划区域右上角坐标(二维坐标) % N1 栅格法划分二维空间,每个小网格的边长 % N2 节点数个数 % KR 雷达威胁点个数KR= % KM 导弹威胁点个数KM= % KA 高炮威胁点个数KA= % KC 大气威胁点个数KC= % W 雷达、导弹、高炮、大气、耗油威胁的权重构成的权重向量 % 输出参数列表 % ROUTES 每一代的每一只蚂蚁的爬行路线 % PL 每一代的每一只蚂蚁的爬行路线长度 % Tau 输出动态修正过的信息素 clear clc %X0=input('输入飞行器起点坐标(二维坐标)X0=') %Y0=input('输入飞行器目标点坐标(二维坐标)Y0=') %NN=input('输入迭代次数NN=') %MM=input('输入蚂蚁数MM=') %x1=input('输入规划区域左下角坐标(二维坐标)') %x2=input('输入规划区域右下角坐标(二维坐标)') %x3=input('输入规划区域左上角坐标(二维坐标)') %x4=input('输入规划区域右上角坐标(二维坐标)')% x1~x4主要是确定规划区域,由坐标来限制区域 %N1=input('输入网格大小为')%栅格法划分二维空间,每个小网格的边长,此处是正方形网格 X0= Y0= NN= 10 MM= 40 x1= x2= x3= x4= N1=2 h1=(x4(1)-x1(1))/N1 ;%网格列数 v1=(x4(2)-x1(2))/N1;%网格行数 N2=h1*v1;%计算节点数个数,即网格划分后的节点个数 %%%%%%%%%%%%%%%%%%%%%%%%%%%对区域内网格划分后 确定节点坐标 并储存 t=1; for i=1:h1 for j=1:v1 tempx=x1(1)+(i-1)*N1; %%对区域栅格化后第(i,j)位置节点的横坐标 tempy=x1(2)+(j-1)*N1; %%对对区域栅格化后第(i,j)位置节点的纵坐标 P(t,:)= ; %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 t=t+1; end end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%栅格化并存储节点坐标结束%%%%%%%%%%% %%%%%%%%%%%%%%%% 开始存储各种威胁点的坐标%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %KR=input('输入雷达威胁点个数KR=') %KM=input('输入导弹威胁点个数KM=') %KA=input('输入高炮威胁点个数KA=') %KC=input('输入大气威胁点个数KC=') KR= 4 KM= 4 KA= 3 KC= 2 %t=1; %for i=1:KR % P_KR(t,:)=input('输入雷达威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % t=t+1; % end %t=1; %for i=1:KM % P_KM(t,:)=input('输入导弹威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % t=t+1; %end % t=1; %for i=1:KA % P_KA(t,:)=input('输入高炮威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % t=t+1; %end % t=1; %for i=1:KC % P_KC(t,:)=input('输入大气威胁点的(按顺序输入二维坐标)') %%对对区域栅格化后第(i,j)位置节点的坐标存储,作为第t个节点的坐标,排列顺序是从下往上,从左到右排列 % t=t+1; %end P_KR= P_KM= P_KA= P_KC= %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%威胁点坐标输入结束%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%开始设计启发因子%%%%%%%%%%%%%%%%%%% %W=input('输入由雷达、导弹、高炮、大气、耗油威胁的权重构成的权重向量(注意顺序)W=') W= for i=1:N2 %%%雷达威胁总和 for j=1:KR R_ybs(i,j)=1/(((P(i,1)- P_KR(j,1))^2+(P(i,2)- P_KR(j,2))^2)^2); end ZR(i)=sum(R_ybs(i,:)); %%%导弹威胁总和 for j=1:KM M_ybs(i,j)=1/(((P(i,1)- P_KM(j,1))^2+(P(i,2)- P_KM(j,2))^2)^(1/2)); end ZM(i)=sum(M_ybs(i,:)); %%%高炮威胁总和 for j=1:KA A_ybs(i,j)=1/(((P(i,1)- P_KA(j,1))^2+(P(i,2)- P_KA(j,2))^2)^(1/2)); end ZA(i)=sum(A_ybs(i,:)); %%%大气威胁总和 for j=1:KC C_ybs(i,j)=1/(((P(i,1)- P_KC(j,1))^2+(P(i,2)- P_KC(j,2))^2)^(1/2)); end ZC(i)=sum(C_ybs(i,:)); %%%油耗威胁因为涉及到最终的航迹轨迹节点个数,不便于计算,在此程序处理中忽略 Eta(i)=1/(W* ');%计算出所有代价加权和之后的倒数作为第i个节点的启发因子 end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ROUTES=cell(NN,MM);%用细胞结构存储每一代的每一只蚂蚁的爬行路线 PL=zeros(NN,MM);%用矩阵存储每一代的每一只蚂蚁的爬行路线长度 Tau=ones(N2,N2).*100; %初始信息素浓度 任选一个常数,本处选择3 %Alpha=input('输入信息素重要程度Alpha=') %Beta=input('输入启发因子重要程度Beta=') %rou=input('输入信息素挥发程度rou=') %Q=input('输入信息素增加强度系数Q=') %C0=input('输入单位耗油量C0=') Alpha=1 Beta= 0.25 rou= 0.6 Q= 10 C0=1 %%%%%%%%%%%%%%%%%%%%%%%%%下面开始迭代计算 for ik=1:NN %(迭代NN次) for m=1:MM %% 第一步:状态初始化 tt=round((X0(1)-x1(1))/N1)+1+round((X0(2)-x1(2))/N1)*h1;% 根据起点坐标得到节点数,采用四舍五入的方法将起点归并到相应的节点处 tt2=round((Y0(1)-x1(1))/N1)+1+round((Y0(2)-x1(2))/N1)*h1;% 根据目标坐标得到节点数,采用四舍五入的方法将起点归并到相应的节点处 Current=tt; ;%当前节点初始化为起始点,一般默认起点在第一个节点,故此处可以设Current=1 Path=tt;%爬行路线初始化 PLkm=0;%爬行路线长度初始化 TABUkm=ones(1,N2);%禁忌表初始化 TABUkm(Current)=0;%已经在初始点了,因此要排除 %第二步:下一步可以前往的节点 Len_LJD=3; % 可以走的节点个数 从起点开始朝下走,有三个方向可以走,分别是 节点2 节点1+v1 节点 1+v1+1 LJD= ;% 可以走的节点的集合 m %下面开始循环 觅食停止条件:蚂蚁未遇到食物或者陷入死胡同 while (Current~=tt2)(Len_LJD=1) %% 第三步:转轮赌法选择下一步怎么走 PP=zeros(1,Len_LJD); for i=1:Len_LJD PP(i)=(Tau(Current,LJD(i))^Alpha)*(Eta(LJD(i))^Beta); end Current PP=PP./(sum(PP));%建立概率分布 Pcum=cumsum(PP); Select=find(Pcum=rand); if isempty(Select) %判别是否为空 to_visit=LJD(1); else to_visit=LJD(Select(1)) %选择随机产生的第一个下标所对应的节点 end %Select=find(PP=max(PP));%选择概率较大的下标 一条路线走 %to_visit=LJD(Select);%选择概率较大的下标所对应的节点 %% 第四步:状态更新和记录 Path= ;%路径增加 CtoVLenght=sqrt((P(Current,1)-P(to_visit,1))^2+(P(Current,2)-P(to_visit,2))^2);%计算当前点到下一个节点之间的距离 PLkm=PLkm+CtoVLenght;%路径长度增加 Current=to_visit; %蚂蚁移到下一个节点 TABUkm(Current)=0;%已访问过的节点从禁忌表中删除 %%%%%%%%%%下面寻找新的节点,在其附近的九宫图相邻点构成的节点集合 ttt= %根据九宫图确定可以走的路径 for kkkk=1:N2 if sum(ttt==kkkk)0 %%%%% 只搜索循环中ttt中有的节点进行判别 if TABUkm(kkkk)==0 %%% 查找到环中ttt中有的节点是否走过 如果走过则将该节点结合ttt中的数值设为0便于后面排除 ttt(find(ttt==kkkk))=0 ; end end end tsite=find(ttt0ttt=N2); %排除九宫图构造中不存在的点和走过点的下表 LJD=ttt(tsite) %查找到当前可以走的点 Len_LJD=length(LJD);%可选节点的个数 end %第五步:记下每一代每一只蚂蚁的觅食路线和路线长度 ROUTES{ik,m}=Path ; if Path(end)==tt2 PL(ik,m)=PLkm; else PL(ik,m)=inf; end end %%%%%%********** 至此 所有一群蚂蚁全部走一次 完成一次迭代 %% 第六步:更新信息素 temp_sit=find(PL(ik,:)==min(PL(ik,:))); %获取路径最短的一个蚂蚁走的路 ROUT=ROUTES{ik,temp_sit(1)} %获取路径最短蚂蚁经过的路径 Best_t=0; for j=1:length(ROUT) Best_t=Best_t+W(1)*ZR(ROUT(j))+W(2)*ZM(ROUT(j))+W(3)*ZA(ROUT(j))+W(4)*ZC(ROUT(j));%计算出最优路径下是雷达、导弹、高炮、大气威胁的综合值 end Best_t=Best_t+C0*min(PL(ik,:));%计算出最优路径下是雷达、导弹、高炮、大气威胁、耗油量的综合值即为最优路径的代价 Delta_Tau=zeros(N2,N2); %更新量初始化 for j1=1:length(ROUT) for j2=1:length(ROUT) Delta_Tau(ROUT(j1),ROUT(j2))=Q/Best_t; %对最优路径上的蚂蚁通过的结点进行信息素更新 其他的全部为0 end end Tau= rou.*Tau+(1-rou).*Delta_Tau;%信息素挥发一部分,新增加一部分 end %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%下面输出最短距离 和最短距离对应的路径%%%%%%%%%%%%% Temp_SIT=find(PL==min(min(PL))); row= mod(Temp_SIT(1),NN);% mod 是取余数 if row==0 row=NN; end lie=ceil(Temp_SIT(1)/NN);% ceil(X)向上取整 MIN_Path_Length=PL(row,lie) % 输出最短路径长度 MIN_Path=ROUTES{row,lie} % 输出最短路径 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% 迭代完成 下面是作图 %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% plotif=1;%是否绘图的控制参数 if plotif==1 %绘收敛曲线 meanPL=zeros(1,NN); minPL=zeros(1,NN); for i=1:NN PLK=PL(i,:); Nonzero=find(PLK); PLKPLK=PLK(Nonzero); meanPL(i)=mean(PLKPLK); minPL(i)=min(PLKPLK); end figure(1) plot(minPL,'r*'); hold on plot(meanPL); grid on title('收敛曲线(平均路径长度和最小路径长度)'); xlabel('迭代次数'); ylabel('路径长度'); figure(2) for i=1:NN plot(PL(i,:)); hold on end figure(3) hold on plot(P_KR(:,1),P_KR(:,2),'b*') plot(P_KM(:,1),P_KM(:,2),'g^') plot(P_KA(:,1),P_KA(:,2),'+') plot(P_KC(:,1),P_KC(:,2),'ro') Temp_ROUT=ROUTES{NN,MM}; plot(P(Temp_ROUT,1),P(Temp_ROUT,2),'x') end
6817 次阅读|0 个评论
[转载]微型无人机飞LiDAR?
热度 1 hawkhhg 2013-5-14 21:44
原文参见:http://www.lidarnews.com/content/view/9723/ Look – Up in the Air, It’s a Bird, It’s a Plane… No It’s Just Another Drone Print Written by Fran Rabuck Saturday, 11 May 2013 无人机UAVs:采用iPad或者安卓手机控制飞行。 Drones as they’re commonly called or UAVs (Unmanned Aerial Vehicles) have shown applications in other areas as well. They are being used as a tool for border control, fire/safety/rescue missions, aerial inspections of power lines, and yes even on large scale systems for aerial photography and LiDAR scanning. 价格:AR Drone 300美金。 两个软件公司:senseFly and Pix4D. 应用领域:建筑,景观,城市,矿场,农田等。 “…Mapping a construction site, landscape, cityscape or mine, monitoring industrial sites, managing agricultural land... The drone developed by senseFly, the result of 6 years of research in the Laboratory of Intelligent Systems at EPFL, facilitates the work of experts across various fields.” 纳米无人机: This is creating a new class of “nano-drone” products like the DragonFly that are as small as an insect. 小型lidar系统: Advanced Scientific Concepts has worked on developing small, light weight LiDAR scanners. These small LiDAR components are available now from Advanced Scientific Concepts with the TigerEye 3D flash LiDAR camera.
3057 次阅读|2 个评论
有趣的动物视觉启示2:“昆虫眼”相机用于微型无人机
热度 1 王中任 2013-5-5 10:18
最新一期IEEE spectrum 报道了University of Illinois和 Beckman Institute Biomimicry受昆虫复眼启发联合研发了“昆虫眼”相机,如下图所示,该相机为160度,180像素,半球形的外形使得相机能获得极宽广的视野,另外,半球形的微镜头阵列可以帮助相机获得无限的景深,这样不管目标多远,都可以清晰成像。 预计这种新型“昆虫眼”相机能够用于微型无人机,可以用于救灾和军事上。 Ref: http://spectrum.ieee.org/robotics/robotics-hardware/insecteye-camera-offers-wideangle-vision-for-tiny-drones/?utm_source=techalertutm_medium=emailutm_campaign=050213
个人分类: 科研感悟|8162 次阅读|1 个评论
雅安地震,0.16米无人机遥感影像很出彩!!
热度 14 shipo 2013-4-23 13:49
测绘局在雅安地震第一时间(4.20 晚上8点半)用 无人机遥感影像制作了0.16米灾区的地图,居民集聚区损毁程度、滑坡情况和公路以及河流阻断情况一目了然啊 (见下图中芦山县宝盛乡灾区道路阻塞和损坏状况)。看来无人机在应急减灾中作用显著啊! 这几天看新闻,反映最多的就是 交通问题 ,第一线救援和资助不能及时到达主要灾区,救援官兵们只能一个点一个点地排除阻断,救援的黄金时间被耽误,同时不间断听到有志愿者在路上因为滚石或路面问题牺牲,真心为这些牺牲的同胞们难过。 既然无人机灵活可控,并且受天气影响小,可不可以在第一时间用无人机将通往重灾区的主要道路线的遥感影像获取到?这样就能很直观地目视解译出哪些路段损坏情况严重等状况,为安排和组织疏通交通提供第一手可靠资料! 芦山县宝盛乡道路损毁情况(图1) 芦山县宝盛乡道路损毁情况(图2) 芦山县宝盛乡道路损毁情况(图3) 芦山县宝盛乡道路损毁情况(图4) 影像资料来源 : http://www.sbsm.gov.cn/article/chyw/201304/20130400123927.shtml
个人分类: 生活泛海|12379 次阅读|20 个评论
无人机的启示
热度 1 gaojianguo 2013-3-21 08:57
副标题—有感于布伦南当选中情局局长 由奥巴马总统提名,布伦南成功当选中央情报局局长,他之前是白宫国土安全及反恐事务顾问。布伦南在官场上的飞黄腾达与使用无人机打击恐怖分子有直接关系,头号恐怖分子拉登就是死于无人机的射杀。无人机从概念提出,到模型小试,再到成功实践见证了航空科技的发展,可以认为是一个窥探航空发展史的案例缩影。一种新的技术方法或者科学改变了一个人的命运,确切的说直接改变了两个人的命运,一是拉登,另外一个就是本文的主人公布伦南。 科学或技术从物质层面和精神上改变人们认识事物、处理问题的方式,一种新的技术的涌现和成功运用往往暗示着一种老的、落后的技术手段被淘汰。人们在数十年前使用收音机、之后大家对更小的收音机和随身听趋之若鹜,再后来是mp3,而现在则是多功能的智能手机,综合了几乎普通PC的所 有 功能,在几年之前又有多少人能想到现在的智能手机不仅可以听歌、听广播和看电影呢?当随身听和mp3流行的时候,制造和销售收音机的厂家或企业必然面临倒闭,这是我们身边活生生的科技改变生活的案例。 我们中有的是天生的弄潮儿,他们具有高于人类平均水平的智商和觉悟,他们能够创造新的科学和技术;而大部分人是跟随者,能够很好的应用,这些人是“时势造英雄”,可以照样生活的很好,活得也不错。但有一部分不那么敏感的人,他们就是“黔驴技穷”的一帮,注定失败和被淘汰。正所谓,历史前进的车轮浩浩荡荡不可阻挡,“适者生存”也就是这个道理。进一步分析明理人会发现科技真是好东西,它从 本质上促进人类社会的新陈代谢 。试想,掌握“核心技术”的老一代抱残守缺,哪还有年轻一代发展的空间了?新的科学来临之时,由于老一代没有很好的学习(当然他们的学习能力也随着年龄的增长而下降),他们就会不适应新的科学带来的考验,自然也就不能胜任新的生产环境了。 当然,我在此绝无贬低老一辈的意思,因为科学还需要传承。在此我只是试图揭示科学是人类社会自我更新的原动力这一规律。即使有人认为“旧的不去新的不来”,但“青出于蓝而胜于蓝”则说明了“更好”是建立在“较好”的基础上的。然而,正如德国物理学家普朗克曾经说的那样:一个新的科学真理的胜利,不是通过说服其反对者让他们明白过来实现的,而是由于其反对者最终死去,而熟悉这个真理的新一代成长起来了。而当时站在历史前沿的洋务派李鸿章对保守派势力也是嫉恶如仇;改革初期邓小平同志劝退一大批“老革命”大大降低了改革的阻力,说明我们的进步本来就是新旧交替的过程。 所以,年轻人一定要要把握大好青春学习真正的科学、技术,否则就会提前衰老。
个人分类: 生活点滴1|3383 次阅读|6 个评论
尝试用多旋翼无人机航拍获取高分正射影像
热度 1 hujianbo 2013-3-14 10:10
尝试用多旋翼无人机航拍获取高分正射影像
买了多旋翼无人机MD4-1000,性能比较好,也挺好用的。用了一下,拍得结果后处理后如下(分辨率调低,原图太大了): 我们单位 某公路两侧200米范围
个人分类: 科教相关|7479 次阅读|2 个评论
浅谈全球鹰的热屏蔽
w312678856 2013-1-4 13:22
个人分类: 风吹多了|216 次阅读|0 个评论

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-19 21:34

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部