散分,倒数第一楼80%

coxie007 2011-09-26 12:04:27
散分,倒数第一楼80%
...全文
48 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lijie0820 2011-09-26
  • 打赏
  • 举报
回复
该结帖了
重楼之泪 2011-09-26
  • 打赏
  • 举报
回复
给我80%
完美灬缺陷 2011-09-26
  • 打赏
  • 举报
回复
第一楼80%
lijpwsw 2011-09-26
  • 打赏
  • 举报
回复
曰……
chuanzhang5687 2011-09-26
  • 打赏
  • 举报
回复
007重出江湖
Q446512799 2011-09-26
  • 打赏
  • 举报
回复
0.0
lijie0820 2011-09-26
  • 打赏
  • 举报
回复
007重出江湖
MATLAB智能算法实现(⼀) MATLAB智能算法实现 (⼀) 写在前⾯:突然想做点⼉什么,为⾃⼰本科四年的学习⽣涯画上⼀个句点。⽤⼀款⾃⼰喜欢的软件实现⼀些⽼师们在上课时总提到的智能算 法应该是⼀件极有意义的事吧! 我的⽬的:没什么⽬的,万⼀将来⽤得上呢?! 我的希望: 1、有C语⾔基础和MATLAB基本矩阵计算实践的童鞋们可以⽆障碍阅读代码; 2、写这些东西的⼈不是⼤神,所以不希望⼤神前来吐槽。仅供包括我在内的菜鸟们交流讨论; 3、再次强调,⼤神们总是忘了⾃⼰矬的时候是什么样,所以希望诸位⼤触看看即可,笑笑也罢。 蚁群算法 所有的群智能算法的核⼼思想都在于:"个体的⾏为确定了群体的⾏动模式,个体⼜接收着来⾃群体的信息并依据此调整⾃⼰的⾏为"。那 么归于蚁群,这⼀算法的特征有三: 其⼀,蚂蚁个体在其⾏动路径上总是均匀地播撒信息素; 其⼆,信息素的浓度随着时间的变化⽽变化,同时信息素是蚂蚁个体间极为重要的协调单元; 其三,蚂蚁个体总沿着信息素浓度⾼的⽅向前进,但⼜有⼀些随机扰动使得其偏离原有的路线。 如上图所⽰,在a时刻,蚂蚁并不知道那条路距离⾷物更近,于是从巢⽳出发的蚂蚁沿着⾷物发出的"⾹味"找到上下两条道路。如果我们 假定: 1)每只蚂蚁⼀次出⾏(往返)所能释放的信息素总量是相同的; 2)蚂蚁们保持相等的时间间隔交替选择出⾏路线,即t时刻出动的蚂蚁选择上⾯的道路,t+1时刻出动的就选择下⾯的道路,t+2时刻⼜回 到上⾯的道路。 基于以上两条假定,我们可以得出:上⾯的路径由于距离较短,所以单位长度上的信息素量(浓度)要⾼于下⽅路径。所以⼀段时间过后信 息素的浓度差异已经⾜以引起⼤多数蚂蚁的关注,上⽅道路上的蚂蚁开始逐渐变多(b时刻)。 我们可以想到,b状态最终将发展成为c状态,信息素随时间变化浓度降低,有鲜有蚂蚁⾏⾄于此,所以下⽅道路的信息素逐渐消散。同时需 要关注的是,有些特⽴独⾏的蚂蚁并不以信息素浓度最为⾃⼰选择路线的唯⼀标准,它们会开辟⼀些新的道路,同时引起⼀些同伴的关注。 这种随机性也为系统的⾃由化提供了理论基础,这些"创新"的探索如果的确距离更短,那么这⼀路径将在信息素的调解下演化成为新的主 流,反正则会得到纠正。 以下是解放军⼯程信息⼤学的⼀位⽼师编写的MATLAB程序,它利⽤蚁群算法,实现了"担货郎"问题的求解(遍历所有的销售点,同时 使得总的⾏进路程最短)。以下是源代码和本⼈对程序的解释: function[R_best,L_best,L_ave,Shortest_Route,Shortest_Length] = ACATSP(C,NC_max,m,Alpha,Beta,Rho,Q) %% 主要符号说明 %% C:n个城市的坐标,n*2的矩阵 %% NC_max:最⼤迭代次数 %% m:蚂蚁个数 %% Alpha:表征信息素重要程度的参数 %% Beta:表征启发因⼦重要程度的参数 %% Rho:信息素蒸发系数 %% Q:信息素增加强度系数 %% R_best:各代最佳路线 %% L_best:各代最佳路线长度 %% Step1:变量初始化 n = size(C,1); % D为⼀个⽆向加权图,表中的每⼀⾏记录了某⼀个城市到另外n-1个城市的距离 D = zeros(n,n); for i = 1:1:n for j = 1:1:n if i ~= j D(i,j) = ((C(i,1) - C(j,1))^2 + (C(i,2) - C(j,2))^2)^0.5; else % eps是MATLAB所能识别的最⼩正浮点数,即认为"0+eps/2 = 0" D(i,j) = eps; end end end % Eta表⽰了距离倒数,作为路径选择重要的启发因⼦,蚂蚁去信息素多且离当前位置距离较近的城市 Eta = 1./D; % Tau表⽰城市间(n*n矩阵)的信息素含量,⼀开始是均匀的为⼀个"全⼀"矩阵 Tau = ones(n,n); % 每⼀只蚂蚁都要根据信息素和⾃⼰判断,独⽴求解"担货郎"问题,Tabu记录着m只蚂蚁在n个城市间⾏进的轨迹。第m⾏n列表⽰:第m只蚂蚁去的第n个城市为 Tabu = zeros(m,n); % NC是迭代次数 NC = 1; % 每⼀次迭代结束后的最段路径 R_best = zeros(NC_max,n); % 每⼀次迭代后的最短路径长度 L_best = inf.*ones(NC_max,1); % 每⼀次迭代后m只蚂蚁所得路径的平均值 L_ave = zeros(NC,1); while NC <= NC_max %% Step2:将m只蚂蚁放到n个城市上 RandPosition = []; % ceil函数是向上取整,randperm函数是⽣成随机数列,rand
课程设计报告 200 8 — 200 9 学年第 2 学期 课程名称 单片机的c语言程序设计 设计题目 交通灯 学生姓名 学 号 专业班级 应电08-2班 指导教师 2009年06月 02日 目录 一.前言…………………………………………………………3 二.功能概述······……………………………………………3 三.设计思路……………………………………………………3 四.硬件介绍……………………………………………………4 五.软件程序设计………………………………………………7 六.电路图及仿真实现………·………………………………10 七.总结…………………………………………………………11 八.源程序………………………………………………………12 参考文献…………………………………………………………14 一.前言 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技 术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部 件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善 。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现 这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多,在学 习了单片机的有关知识之后,运用相关知识来设计完成交通信号灯。 二.功能概述 2.1设计任务:交通灯的硬件和软件设计 2.2设计目的 1.进一步熟悉和掌握单片机的结构和工作原理。 2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。 3.通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术,了解有关电路 参数的计算方法。 4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。 5.通过完成一个包括电路设计和程序开发的完整过程,为我们今后从事相应工作打下 基础。 三.设计思路 交通灯的变化规律 按照常规我们假设一个十字路口为东西南北走向。初始状态为状态1,南北方向绿灯 通车,东西方向红灯。经过过一段时间(25S)转换状态2,南北方向绿灯闪几次转亮黄 灯,延时5S,东西方向仍然红灯。再转换到状态3,东西方向绿灯通车,南北方向红灯。 过一段时间(25S)转换到状态4,东西方向绿灯闪几次转亮黄等,延时5S,南北方向仍 然红灯。最后循环至南北绿灯,东西红灯。在这些状态下,有时钟倒数计时。 四.硬件介绍 基础知识 交通灯控制器实例主要使用了89C51单片机的定时器/计数器,基础知识主要包括交 通灯的变化规律、定时器/计数器的概念、定时器/计数器的相关寄存器、定时器/计 数器的4种工作方式、以及定时器/计数器的变成。 4.1定时器/计数器 定时器/计数器是单片机中最常用、最重要的功能模块之一,本节通过交通灯控制器实 例来演示定时器的使用,并复习如何使用散转程序。 首先介绍交通灯以及定时器/计数器的基础知识,接着介绍本实例的硬件电路构成,然 后逐步分析定时器的变成以及程序的全貌,最后总结一下本实例的技巧与注意点。 4.2定时器/计数器的概念 89C51单片机内有两个可编程的定时器/计数器T0、T1。 当定时器/计数器用作"定时器"时,每经过1个机器周期(12个时钟周期),计数器加1 。 当定时器/计数器用作"计数器"时,计数器在对应的外部输入管脚(T0为P3.4引脚,T1 为P3.5引脚)上每发生一次1到0的跳变时加1。使用"计数器"功能时,外部输入每个机器 周期被采样一次。当某一周期管脚状态采样为高电平而下一周期采样为低电平时,计数 器加1。由于检测下降沿跳变需要两个机器周期(24个时钟周期)的时间,所以技术频率 最大值只能为时钟周期的1/24。计数器对外部输入信号的占空比并无限制,但为了保证 给定的电平信号在其改变之前至少被采样一次,外部输入信号必须至少保持一个完整的 机器周期。 4.3定时器/计数器的相关寄存器 与定时器/计数器相关的寄存器有定时器/计数器工作方式寄存器(TMOD)、定时器/ 计数器控制寄存器(TCON)。TCON已经在2.5节受控输出实例中介绍过,因此,在本例中 主要介绍TMOD寄存器。 定时器/计数器工作方式寄存器(TMOD),字节地址89H,不可进行位寻址。 定时器/计数器工作方式寄存器(TMOD)的8位分为两组,高4位控制T1,低4位控制T0。 TMOD每一位的功能如下。 GATE:门控位。 GATE=0,仅由运行控制位TRX(X=0,1)=1来启动定时器/计数器运行; GATE=1,由运行控制位TRX(X=0,1)=1和外部中断引脚上的高电平共同来启动定时 器/计数器运行。 C/T:定时器模式和计数器模式选择位。 C/T=0,为定时器模式; C/T=1,为计数器模式。 M1、M0:工作方式选择位
课程设计报告 200 8 — 200 9 学年第 2 学期 课程名称 单片机的c语言程序设计 设计题目 交通灯 学生XX 学 号 0628030053 专业班级 通信06-1班 指导教师 一.前言…………………………………………………………3 二.功能概述······……………………………………………3 三.设计思路……………………………………………………3 四.硬件介绍……………………………………………………4 五.软件程序设计………………………………………………7 六.电路图及仿真实现………·………………………………10 七.总结…………………………………………………………11 八.源程序………………………………………………………12 参考文献…………………………………………………………14 一.前言 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技 术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部 件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善 。 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。那么靠什么来实现 这井然秩序呢?靠的就是交通信号灯的自动指挥系统。交通信号灯控制方式很多,在学 习了单片机的有关知识之后,运用相关知识来设计完成交通信号灯。 二.功能概述 2.1设计任务:交通灯的硬件和软件设计 2.2设计目的 1.进一步熟悉和掌握单片机的结构和工作原理。 2.掌握单片机的接口技术及相关外围芯片的外特性,控制方法。 3.通过课程设计,掌握以单片机为核心的电路设计的基本方法和技术,了解有关电路 参数的计算方法。 4.通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。 5.通过完成一个包括电路设计和程序开发的完整过程,为我们今后从事相应工作打下 基础。 三.设计思路 交通灯的变化规律 按照常规我们假设一个十字路口为东西南北走向。初始状态为状态1,南北方向绿灯 通车,东西方向红灯。经过过一段时间(25S)转换状态2,南北方向绿灯闪几次转亮黄 灯,延时5S,东西方向仍然红灯。再转换到状态3,东西方向绿灯通车,南北方向红灯。 过一段时间(25S)转换到状态4,东西方向绿灯闪几次转亮黄等,延时5S,南北方向仍 然红灯。最后循环至南北绿灯,东西红灯。在这些状态下,有时钟倒数计时。 四.硬件介绍 基础知识 交通灯控制器实例主要使用了89C51单片机的定时器/计数器,基础知识主要包括交 通灯的变化规律、定时器/计数器的概念、定时器/计数器的相关寄存器、定时器/计 数器的4种工作方式、以及定时器/计数器的变成。 4.1定时器/计数器 定时器/计数器是单片机中最常用、最重要的功能模块之一,本节通过交通灯控制器实 例来演示定时器的使用,并复习如何使用散转程序。 首先介绍交通灯以及定时器/计数器的基础知识,接着介绍本实例的硬件电路构成,然 后逐步分析定时器的变成以及程序的全貌,最后总结一下本实例的技巧与注意点。 4.2定时器/计数器的概念 89C51单片机内有两个可编程的定时器/计数器T0、T1。 当定时器/计数器用作"定时器"时,每经过1个机器周期(12个时钟周期),计数器加1 。 当定时器/计数器用作"计数器"时,计数器在对应的外部输入管脚(T0为P3.4引脚,T1 为P3.5引脚)上每发生一次1到0的跳变时加1。使用"计数器"功能时,外部输入每个机器 周期被采样一次。当某一周期管脚状态采样为高电平而下一周期采样为低电平时,计数 器加1。由于检测下降沿跳变需要两个机器周期(24个时钟周期)的时间,所以技术频率 最大值只能为时钟周期的1/24。计数器对外部输入信号的占空比并无限制,但为了保证 给定的电平信号在其改变之前至少被采样一次,外部输入信号必须至少保持一个完整的 机器周期。 4.3定时器/计数器的相关寄存器 与定时器/计数器相关的寄存器有定时器/计数器工作方式寄存器(TMOD)、定时器/ 计数器控制寄存器(TCON)。TCON已经在2.5节受控输出实例中介绍过,因此,在本例中 主要介绍TMOD寄存器。 定时器/计数器工作方式寄存器(TMOD),字节地址89H,不可进行位寻址。 定时器/计数器工作方式寄存器(TMOD)的8位分为两组,高4位控制T1,低4位控制T0。 TMOD每一位的功能如下。 GATE:门控位。 GATE=0,仅由运行控制位TRX(X=0,1)=1来启动定时器/计数器运行; GATE=1,由运行控制位TRX(X=0,1)=1和外部中断引脚上的高电平共同来启动定时 器/计数器运行。 C/T:定时器模式和计数器模式选择位。 C/T=0,为定时器模式; C/T=1,为计数器模式。 M1、M0:工作方式选择位。M1、M

594

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧