关注交通仿真公众号,获取更多精彩文章

未来的汽车是怎么跑起来的。

从滴滴交通大脑看交通仿真软件的创新变革。

还有更多资讯,请扫码关注。

如何自己编写一个交通仿真软件 (一)火种

如何自己编写一个交通仿真软件(二)原野

注意以下为老版本软件和代码。

软件下载地址(百度网盘)(可运行的软件位于debug目录下)

CSDN源代码下载(需有csdn账号)该文章也同时在CSDN 发布, 有图有真相,也有exe(就是没有女票)。

以下为新版本软件和代码

任何安装了git客户端的人都可以用git pull最新完整版代码

GIT项目地址:http://git.oschina.net/sapperjiang/TrafficSim

git地址:https://git.oschina.net/sapperjiang/TrafficSim.git

一、这个软件是干嘛的?

-----------本仿真软件的定位----------------

1、为了给交通领域的研究人员提供一个好的学习和实验平台,能产生一定的学术价值。
对那些有能力有精力有志向探索交通仿真的人,希望是一个帮助,毕竟这些路径我探索过。扫除有一定基础的专业人士,对自己开发仿真软件的初步障碍、提供一个曾经实践过的思路和想法。

2、不打算商业化,还差点远。商业化的好处在于--持续的商业利益驱动软件更新完善并能得到用户需求的不断推动;局限在于对于研究、探索和培养人才来说,了解内部运行机理成为不可能。

3、降低实践的门槛、发挥学术价值。
      毕竟已经有了一个基础的平台。可以通过几个月的时间,在这个平台上完善或者实践自己的模型。平台允许自己建立一个模型、然后用软件跑出来看看仿真动画、分析分析仿真数据,解决模型的局限。

4、解决软件的局限。学术研究人员能够根据自己的需求,对软件进行改进,加深自己对交通仿真的认识。

二、还有其他类似开源交通仿真软件么?

答案是YES,我们的德国交通同行,正在开发和改进一款叫做sumo的开源软件。

下面是它的主页:http://sumo.sourceforge.net/

它最近的活动链接:http://www.dlr.de/ts/en/desktopdefault.aspx/tabid-10848/18984_read-44970/

二、非专业人士如何选择合理的开发工具和开发语言。

软件发布后,有人给我交流。也是想开发软件的“奋青”(发奋的有志青年)。

对很多程序开发初学者来说。学习哪门语言,是个很纠结的问题,这是个开创成功事业能否成功的问题。在此我做一下解答,结合我自身经历:

声明本人非计算机科班出身(正宗交通工程+交通信息工程专业毕业)。

由于我大一第一学期(没办法,家里没有鱼塘,启蒙太晚,成就不了13岁编程神童的传说)就学会了C并有了处女作“hello world!!”, 再学习C plus plus ,就是自然而然了,就想用惯了苹果6 ,入手 苹果6 plus plus 顺理成章。

(我这种笨人,当初敲入turbo c 2.0 并且将处女作编译成功花了一节上机课的时间(不得不吐槽,当年遇到困难的时候,也不如张良这伙计运气好,提提鞋子,就能获赠兵法,日后指点江山。当初求助的计算机学院的老表在用电脑打纸牌游戏,极不耐烦(失去了多年后被我表扬的机会),很不屑我这种小菜鸟的这种小问题)。

但是,C++复杂难懂,超出了预计的成本。且长久的钻研却看不到回报的事业注定是一件很没有动力持续的事业。。。。。当初我真怀疑:对非专业人士来说,学懂C++是否要卖个肾~~。

废话太多,这里不伦你是vb 还是java 还是C++或者python.开发仿真软件,建议非专业人士用.net平台。理由如下:

1、c++这样的语言,设计过于专业严谨,学习成本高((不要急着反驳我这个业余人士,不许反驳,因为我业余(嘻嘻)))。

2、非.net 平台下的c++ 数据结构相当不友好。(不要急着反驳,还是因为我业余(嘻嘻))。对于自幼(哈哈,包装一下,凸显天粪)学习c的人来说,相当不容易搞懂指针。然而,仿真软件建模当中,各种交通元素的模型,不涉及链表、图、矩阵、队列、栈这些鬼东西(神器)的编程尝试,必然会被计算机这个傻瓜兄弟嘲弄而头破血流。在C++中,这些数据结构都涉及指针,维护和读懂他们就是个灾难(我业余我骄傲~~)(什么你就喜欢指针?你就喜欢指针的指针?留下大名,给你上柱香)。

3、c++原生的函数库支持,简直是弱爆了。有了.net 还好。当初为了脱离.net 平台,写了算法,自己实现了好多别的语言都有的函数和数据结构,想想都要哭,难道每次我都要重新发明轮子?vc6.0  给我的印象两个:1、经典;2、绝望;3、我的各妈,真绝望;4、我不识数。

4、会牵扯你更多的精力在bug调试、内存泄露(非.net 平台下的c++)而不是专注于自己的目标---编写交通仿真软件,早日看到运行成果。尤其是bug定位不准确所造成的不知所云and 巴拉巴拉。。。。。

5、要自己写代码呈现仿真效果,windows下开发(什么,你Linux?好,没关系,建议用mono框架,可以跨平台),离不开GDI+编程。而这个GDI+还是比GDI容易理解和伺候的。

最后:我强调一下:我不是诋毁c++的愤青,我是在帮非专业人士,节约你的生命和增加表白(哦,不,交通仿真软件事业)成功的可能,一定要记住你的目标:编写成仿真软件,早日尝到甜头,而不是学习编程本身。(变态大的字体,警示啊。)

三、专业人士如何加入该项目

(一)加入团队(不加入也行,自己研究用~~)

专业人士可以给我发email参与代码开发协作。1286008361@qq.com。加qq也可以:1286008361.到时候 我把你加入开发者中,就可以push(svn叫commit)代码了。

(二)下载版本控制软件:

首先你要准备两个软件,分别是msysgit(这个才是git,先安装)和tortoisegit(git的图形操作界面,后安装)。。直接下载(两个软件都有)

只下载totoisegit 这个软件根本没用,我搞了好长时间才明白。 (草泥马,程序员做的东西果然不是一般人的思维,直接内置git.exe得了。)

(三)下载仿真软件源代码:

项目的平台搭建好了,代码托管在OSChina上面想参与的童靴请注册一个oschina账号发我email,加入开发者团队之后就可以push代码。

暂时不想加入的话,任何一个git客户端都可以往自己的电脑pull项目最新的代码下来。

为什么不是sourceforge?github?天朝是有 长城防火墙的 万一墙掉了,就回到解放前了

然后就是从OSCHINA git地址 pull代码。

项目地址:http://git.oschina.net/sapperjiang/TrafficSim

git地址:https://git.oschina.net/sapperjiang/TrafficSim.git

(四)遇到问题怎么办

1、现在这个项目的文档不完善。如果项目没有帮助更多的人,或者别人不想用、或者不想参与,文档也没意义。写文档是个费力气的活儿,等需要的人出现,我就写。否则,写了白写,还不如约女票波一个。

2、软件的原理和代码不懂的。单步运行几下,看看函数的调用堆栈就明白了。如果不想浪费时间,就qq问我吧,不过不保证服务质量~~。

转载于:https://my.oschina.net/u/214547/blog/359601

如何自己编写一个交通仿真软件 (开篇) 走火入魔。相关推荐

  1. 如何自己编写一个交通仿真软件(一)火种。

    关注交通仿真公众号,获取更多精彩文章 未来的汽车是怎么跑起来的. 从滴滴交通大脑看交通仿真软件的创新变革. 还有更多资讯,请扫码关注. 如何自己编写一个交通仿真软件 开篇---- 走火入魔. 如何自己 ...

  2. 如何自己编写一个交通仿真软件(二)原野。

    该文章也同时在开源中国(www.oschina.net 发布:非广告)作者为:sapperjiang.版权:sapperjiang所有.   http://my.oschina.net/u/21454 ...

  3. 交通仿真软件测试自学,[2018年最新整理]各类交通仿真软件综合介绍.docx

    [2018年最新整理]各类交通仿真软件综合介绍 交通仿真软件EMME EMME是一个较为全面的出行需求预测系统,面向城市.区域和国家的交通规划.EMME提供特有的灵活开放的建模思路,允许用户自由利用现 ...

  4. label qt 自动换行_QT编写一个登录界面

    前言 继上篇:一起学Qt之基础篇---入门 今天上手实操用QT编写一个登录界面~ 系统权限这个词大家肯定不陌生,你进入一个网站也是,如果不登录,就是以游客的身份进去的,要想看到某些信息肯定需要进行登录 ...

  5. 交通仿真软件国内外详情分析及发展概述

    1.国外的发展概况 交通仿真技术发展较快,发展较早的国家是美国,世界其他国家的仿真软件全部都是在美国的交通仿真技术的基础上进行的发展的.美国在1967年有计算机专业的专家组织建立了美国的计算机仿真学会 ...

  6. tesstwo深度优化_十年磨一剑:自主可控国产微观交通仿真软件TESS NG研发之路

    编者按:到目前为止,国内微观交通仿真单位用户已超1000家,主要应用的软件包括德国的VISSIM.SUMO,西班牙的AIMSUN, 美国的TransModeler.SimTraffic,英国的Para ...

  7. TransModeler 交通仿真软件

    1.系统概述 TransModeler是美国Caliper公司开发的一个功能强大而操作灵活的交通仿真软件包,广泛适用于各类交通规划和交通仿真建模任务.TransModeler独特之处在于它提供了宏观/ ...

  8. sumo添加车辆_sumo demo 我们通过使用交通仿真软件SUMO(Simulation of 联合开发网 - pudn.com...

    sumo demo 所属分类:Windows编程 开发工具:C/C++ 文件大小:3KB 下载次数:15 上传日期:2019-03-07 16:12:12 上 传 者:tonythetiger1110 ...

  9. python中用于释放类占用的资源的方法是()_编写一个简易计算器,要求根据输入的数字和四则运算符号,计算运算结果并输出。_学小易找答案...

    [简答题]20191220 课前作业 新工作页4.1的3-5-3页的填空题,参考教材P135-P144 [简答题]AutoCAD改编视图,尽量不用虚线 1. 主视图采用局部剖,表达右上角小圆筒(及孔) ...

最新文章

  1. BitCask 持久化hash存储引擎 原理介绍
  2. jQuery 入门教程(1): 概述
  3. 树状数组求逆序对_区间和的个数(树状数组)
  4. SocketLog安装
  5. HTML设置字体颜色1008无标题,如何在HTML中设置字体颜色,你知道这几种方式吗?...
  6. SpringBoot集成Flowable_Jsite已发任务菜单报500
  7. jQuery mobile 开发问题记录
  8. Legacy(传统)BIOS的历史和不足
  9. 中国省市县地区代码数据库文件
  10. unity3d TextMeshPro使用中文字体(秒懂)
  11. 如何自制一个安装程序,将程序打包生成安装程序的办法
  12. 十分钟快速自制CMSIS_DAP仿真器~将ST-LINK-V2变身DAP仿真器~
  13. 思科模拟器路由表怎么看_Cisco路由配置教程 Cisco路由器静态路由与默认路由的配置方法图解...
  14. linux 命令系列之 history(41)
  15. python京东注册账号_玩转京东支付(python)
  16. CTFshow-萌新
  17. 心愿作文计算机,电脑的心愿作文
  18. 自己无聊做的一个简单的企业进销存管理系统
  19. 电脑软件测试英雄联盟,lol电脑配置检测,如何测试自己的网络玩lol的具体情况?...
  20. 从事人工智能行业,推荐的几本书籍

热门文章

  1. 华为设备接口视图_华为交换机的三种视图
  2. 1分钟反勾稽金蝶销售出库,财务开心啦,一条语句简单实用,直接替换,执行即可。...
  3. @hapi/joi 报错 “message“: “Cannot mix different versions of joi schemas“
  4. vue中全局定义mintUI中toast
  5. oracle同一个库不同用户,oracle同一个库上面,不同用户相互赋予权限
  6. Tao Admin免费开源后台管理系统
  7. Jmeter打开badboy录制的脚本报类元素错误解决方法
  8. FPGA结构分析——IDELAY2,网口储备点3
  9. 一个传奇玩家的传奇故事
  10. 自主招生计算机专业自我介绍,自主招生自我介绍范文【自主招生个人论述范文】...