1、课程名称: 人工智能及应用设计题目: 基于智能搜索的进路选排设计院 系: 计算机与通信工程系 班 级: 信号一班 姓 名: 学 号: 指导教师: 胡可 西南交通大学峨眉校区2013 年 12 月 13 日课 程 设 计 任 务 书专 业 铁道信号 姓 名 代荣龙 学 号 20108065 开题日期: 2013 年 09 月 23 日 完成日期: 2013 年 12 月 13 日题 目 基于智能搜索的进路选排设计 一、设计的目的 通过对课程设计任务的完成,进一步理解智能搜索算法与计算机联锁软件设计的理论内容,并且巩固和深化所学课程的知识,同时培养综合运用所学课程知识,分析和解决实际问题的能力,逐
2、步树立正确的设计思想及严谨认真的科学态度。 二、设计的内容及要求 要求每位同学能够根据对人工智能搜索算法以及计算机联锁的进路选排过程的知识,结合课程设计的内容,独立完成该课程设计。 设计内容: 1) 自选信号布置图,建立站场型静态数据库,并绘制其模块链接图; 2) 自选智能搜索算法,编写动态进路搜索选排程序; 3) 用所编搜索程序对建立的数据库进行进路选排,并举例说明其过程。 三、指导教师评语 四、成 绩 指导教师 (签章) 年 月 日一、设计题目通过对课程设计任务的完成,进一步理解智能搜索算法与计算机联锁软件设计的理论内容,并且巩固和深化所学课程的知识,同时培养综合运用所学课程知识,分析和解
3、决实际问题的能力,逐步树立正确的设计思想及严谨认真的科学态度。可实现的功能:能设置道岔、轨道、信号机以及道岔、轨道、信号机的状态;满足正常情况下的接发列车演练;站场状态的直观形象显示;l办理列车作业;l取消进路功能;l完备的进路选排、开放保持及解锁功能仿真分析:对计算机联锁人机界面的分析可知,人机界面是类似于6502电气集中联锁控制台,所以设计时参考6502的控制台进行设计。为让操作员很快适应该系统,该系统延续了一些传统的操作方法: 选排进路任采用双按钮形式;进路排好采用白色表示;进路占用弹出对话框(线路占用、已办理同方向进路、已办理反方向发车);进路解锁弹出对话框(进路已解锁);道岔的状态(
4、定位绿灯显示、反位黄灯显示);信号机的状态(平时红灯、开放时绿灯);调车信号机的状态(平时蓝色、开放时白色)列车按钮绿色(设于线路中间);调车按钮白色(设于线路一侧);进路的取消任然用双按钮(始端按钮和终端按钮);取消进路时点击总取消按钮后对应的上行或者下行总取消按钮表示灯亮红灯;线路状态(平时为黑色、占用为白色);当进路排好后改进路上的同方向的调车信号显示白灯;该系统的进路搜索程序采用类似于进路表的形式,将始端按钮和终端按钮按下后,改程序自动检查敌对信号是否开放(若开放则提示“已建立反方向发车”)、沿途的列车信号机是否有开放(若开放则提示“已办理同方向进路”或“已办理反方向进路”)、复式交分
5、道岔的一组道岔是否已占用(若占用则提示“线路已占用”)、股道是否空闲(若不空闲则提示“线路已占用”),进路建立之后将显示对应信号机的状态和道岔的状态。该操作界面采用Microsoftvisualbasic6.0编写,能够很直观的反映调度员所需信息,同时采用人性化理念,用弹出式对话框来提示操作过程中的一些禁止信息来提醒调度员。设计过程:(一)绘制站场图和站场型数据模块链接图(二)站场型数据模块链接图 站场型数据结构K(D1)K(1DG)K(1)K(19)K(19DG)K(SII) K(3)K(3DG)K(D13)K(17)K(D17) K(19)K(SII) 搜索K(D1)-K(D17)进路 D
6、1 至D17的进路搜索:由于对VB的学习知识有限,所以坐车了一部分程序,结果还是未能是最终进路选择达到预期目的,部分程序如下:Private Sub Command1_Click()If Label13.BackColor = &HFFFF& ThenLabel13.BackColor = &HC0&ElseLabel13.BackColor = &HFFFF&End IfEnd SubPrivate Sub Command11_Click()If Label21.BackColor = &HFFFF& ThenLabel21.BackColor = &HC0&ElseLabel21.Back
7、Color = &HFFFF&End IfEnd SubPrivate Sub Command13_Click()If Label12.BackColor = &HFFFF& ThenLabel12.BackColor = &HC0&ElseLabel12.BackColor = &HFFFF&End IfEnd SubPrivate Sub Command16_Click()If Label18.BackColor = &HFFFF& ThenLabel18.BackColor = &HC0&ElseLabel18.BackColor = &HFFFF&End IfEnd SubPrivat
8、e Sub Command17_Click()If Label24.BackColor = &HFFFF& ThenLabel24.BackColor = &HC0&ElseLabel24.BackColor = &HFFFF&End IfEnd SubPrivate Sub Command3_Click()If Label9.BackColor = &HFFFF& ThenLabel9.BackColor = &HC0&ElseLabel9.BackColor = &HFFFF&End IfIf Label9.BackColor = &HC0& And Label30.BackColor =
9、 &HC0& ThenLine99.BorderColor = &H8000000ALine150.BorderColor = &H8000000ALine90.BorderColor = &H8000000ALine91.BorderColor = &H8000000ALine139.BorderColor = &H8000000ALine110.BorderColor = &H8000000ALine111.BorderColor = &H8000000ALine149.BorderColor = &H8000000AEnd IfEnd SubPrivate Sub Command4_Cl
10、ick()If Label14.BackColor = &HFFFF& ThenLabel14.BackColor = &HC0&ElseLabel14.BackColor = &HFFFF&End IfEnd SubPrivate Sub Timer2_Timer()If Line155.X2 3720 ThenLine155.X1 = Line155.X1 + 100Line155.X2 = Line155.X2 + 100End IfIf Line155.X2 3720 ThenLine155.X1 = Line155.X1 + 100Line155.X2 = Line155.X2 + 100Line155.Y1 = Line155.Y1 - 90Line155.Y2 = Line155.Y2 - 90End IfIf Line155.X2 4559 And Line155.X2 18370 ThenLine155.X1 = Line155.X1 + 100Line155.X2 = Line155.X2 + 100End IfEnd Sub