一直在看李笑来的博客,感觉他写的东西都是大实话,把自己的一些学习、做事的经历贴出来与大家分享,尤其是与广大的学生分享,对于那些孩子们的成长是大有裨益的!他所强调的耐心,和遇到困难时的态度,都值得反复去体会,学习~
以后让我家孩子也经常上去看看~:)
2008年11月30日星期日
修改ontology
发现用protege生成的代码是符合规范的,但fillContent后得到的内容却是不符合规范的!其中Concept和Predicate是正常的,AgentAction却是错误的!也没时间仔细研究错误在哪里,干脆先把AgentAction都变成Predicate,能跑起来再说,以后再来调试这个bug~
昨天写了一个摘要,开始想从已有的一个改改,发现不行,思路很混乱。和lp聊了一下,把自己做的工作一说,用大陆上次教的方法一分析,找到了思路,用最简单明了的话把思路表达出来,搞定!可惜后来又发现还有字数要求,并且要求用中文表述一遍。用中文写了一遍出来,发现还是中文表达的更顺畅,毕竟是母语呀~再依据中文把英文的修改了一下,搞定!
2008年11月28日星期五
2008年11月27日星期四
古怪的行为
今天去医院检查,一切正常,但下个月还不出来的话就要住院观察了~
下午就开始调试程序,很奇怪,用AgentAction就是不行,非要把Register定义为其他的,如Concept,然后用现成的Action才可以!仔细观察了一下message的content,发现果然是有个地方不对劲,难道是JADE的bug?找了半天也没发现自己错在哪里了!不管了,先用这种方法吧,以后再说~
成功建立起分布在各个host上的container及静态agent之后,TSM也接收到了所有时间相关agent的注册消息,成功注册后开始仿真,向每个事件相关agent发送step消息。消息发出了,可那些agent却没能做出反应,似乎是没有收到。在sniffer中查看确实是发送过去了,在接收step消息处加断点,没有触发!现在怀疑是setup处设置行为时出了问题,还没看出来哪里有问题。串行行为好像没有问题,在onEnd处打印信息,在控制台也看到了,说明它是正常的。并行行为应该两个行为都能接收到message的,至少我原来是这么想的,但现在看来,似乎只有一个可以接收到!这就麻烦了!
今天不行就要等到明早来看了。真是古怪的行为啊!
2008年11月26日星期三
换一种布置agent的方式
昨晚搞了许久都没有解决创建SourceGenerator的问题,十分怀疑是由于arguments的内容太大,用message传递出的问题。苦于用命令行方式启动的jvm无法看到调试信息,一切都只是猜测。但时间不等人啊!
于是决定换一种布置agent的方法来试试。在每一个host中都有完整的map和deployment文件,首先启动MySimulation,用Simulator启动主container和TSM,TSM不再负责创建其他的agent,但是仍有一个initital行为,等待所有的静态agent启动完毕,才开始推进仿真。在其他每个host中,单独启动一个外部程序,这个外部程序根据输入的值确定自己负责启动的子container,然后启动一个agent,由它负责具体静态agent的创建。该agent采用昨天看到的那种简单方式来创建新的agent,避免向AMS发送消息这种方式。
在调试期间,可以用eclipse的debug来启动所有的程序,这样可以解决调试不方便的问题。
今天26号了,下午有事要出门,要开始写摘要了,月底要截止了~
2008年11月25日星期二
创建新的agent
原来是从外部创建agent,后来要在multi-host上配置,就改用了向AMS发送请求的方式,但这种方式要在消息内传递底层的数据,效率确实不高。今晚在网上搜到一个blog,博主也是从06年开始使用JADE,看了几篇文章,发现其中一篇讲到从一个agent创建另一个agent,用的是类似外部创建的方式,但由于是在agent内执行,效率很高,代码很简洁,很受启发,决定在SourceGenerator里使用这种方式。这种方式的限制是只能在本地container中创建 agent,不过由于SourceGenerator是TSM用向AMS发送请求的方式创建的,是分布在各个host中的,因此正好解决了这个问题。
2008年11月21日星期五
进度有点慢了
前两天生了点病——咽炎,差不多快好的时候头又开始疼了,这两天就没有怎么干正事。现在问题来了,进度有点拖慢了!
今天看了笑来的博客,最新的一篇博文又是讲“提高效率的最有效方法——克服拖拉”,里面提到了拖拉“最重要的原因应该在于大多数人喜欢先做甚至只做自己喜欢的……很多人实际上根本不知道自己所谓的“喜欢做某件事情”实际上更可能只不过是因为那件事情相对简单、容易获得奖励而已”。很有道理,至少对于我是正确的。
如果早上起床先做了今天计划中我认为最难的部分,那么这一天就会过得很愉快,工作就会进行的更加顺利一些。所以下面几天每天早上起床吃完饭后要立马开始工作,这样才能完成计划~
今天看了笑来的博客,最新的一篇博文又是讲“提高效率的最有效方法——克服拖拉”,里面提到了拖拉“最重要的原因应该在于大多数人喜欢先做甚至只做自己喜欢的……很多人实际上根本不知道自己所谓的“喜欢做某件事情”实际上更可能只不过是因为那件事情相对简单、容易获得奖励而已”。很有道理,至少对于我是正确的。
如果早上起床先做了今天计划中我认为最难的部分,那么这一天就会过得很愉快,工作就会进行的更加顺利一些。所以下面几天每天早上起床吃完饭后要立马开始工作,这样才能完成计划~
2008年11月16日星期日
2008年11月8日星期六
2008年11月7日星期五
时间只有细分才能充分利用
昨日深感浪费时间之危害,回想笑来的文章,决定动手规划一下自己今天的时间安排。
与以往的规划不同的是,这次结合今天要干的事情——写英文句子,将规划细化到每一个句子要花费多少时间,这也许是我唯一可以估计的偏差不太大的东西了。同时顺手将自己避免不了的发散项目——看邮件、看blog、写blog等等明确的列出来,给每一项分配时间,把24小时安排的满满的,当然睡觉也安排进去了~
安排下来,有一种时间就在手中的感觉~下面就看执行力了!这次要严格按照计划来做,同时,先做最困难的事情!
与以往的规划不同的是,这次结合今天要干的事情——写英文句子,将规划细化到每一个句子要花费多少时间,这也许是我唯一可以估计的偏差不太大的东西了。同时顺手将自己避免不了的发散项目——看邮件、看blog、写blog等等明确的列出来,给每一项分配时间,把24小时安排的满满的,当然睡觉也安排进去了~
安排下来,有一种时间就在手中的感觉~下面就看执行力了!这次要严格按照计划来做,同时,先做最困难的事情!
2008年11月6日星期四
发散的紧
今天起床的时候想着要把引言写完,结果到了晚上,目标变成了要把引言的思路理清楚!
看了李笑来的一篇博文,大致的意思是大多数人想到了要干什么(what),为什么要去干(why),唯独在如何去干(how)上没有想清楚。将how细分再细分,直到自己确信确实已经知道要如何安排时间为止,这时会发现要比开始想象的要复杂困难的多!
晚上花了点时间看Google Earth与GPS互联的东西,有个叫GooPs的免费软件很好,可以将GPS信息实时显示在Google Earth上,可惜现在主页出了点问题,无法访问了(不免怀点恶意的想是不是因为抢了Google的生意~),还好在上帝之眼论坛可以下到中英文版。
程序很小,900多K,试用了一下Demo,果然比较好用,选项也很丰富,界面简单实用。仔细观察了一下,发现其原理就是在本地建立了一个服务器,然后从GE中打开一个指向该服务器地址的KML文件,向服务器动态发送GET请求,返回包含新内容的kml格式文件,文件中包含最新的位置坐标,就达到了动态显示的效果~
各种选项其实就是KML文件中的各个tag的内容,尝试用Python来实现服务器,看了BaseHTTPServer和SimpleHTTPServer的源代码,心里有底了~不过现在是没时间搞这个了,以后买车了需要导航时再自己DIY一个出来用吧~
一点多了了,想起老罗说过的夜里两点出来散散步,头脑比较清醒,现在才深有同感~赶紧整点正事睡觉吧!
看了李笑来的一篇博文,大致的意思是大多数人想到了要干什么(what),为什么要去干(why),唯独在如何去干(how)上没有想清楚。将how细分再细分,直到自己确信确实已经知道要如何安排时间为止,这时会发现要比开始想象的要复杂困难的多!
晚上花了点时间看Google Earth与GPS互联的东西,有个叫GooPs的免费软件很好,可以将GPS信息实时显示在Google Earth上,可惜现在主页出了点问题,无法访问了(不免怀点恶意的想是不是因为抢了Google的生意~),还好在上帝之眼论坛可以下到中英文版。
程序很小,900多K,试用了一下Demo,果然比较好用,选项也很丰富,界面简单实用。仔细观察了一下,发现其原理就是在本地建立了一个服务器,然后从GE中打开一个指向该服务器地址的KML文件,向服务器动态发送GET请求,返回包含新内容的kml格式文件,文件中包含最新的位置坐标,就达到了动态显示的效果~
各种选项其实就是KML文件中的各个tag的内容,尝试用Python来实现服务器,看了BaseHTTPServer和SimpleHTTPServer的源代码,心里有底了~不过现在是没时间搞这个了,以后买车了需要导航时再自己DIY一个出来用吧~
一点多了了,想起老罗说过的夜里两点出来散散步,头脑比较清醒,现在才深有同感~赶紧整点正事睡觉吧!
2008年11月1日星期六
还有十来天了
15号截止,是指15号0点之前还是24点之前呢?为了保险起见,我还是在0点之前投出去吧~那么算起来就只有14天了,这还是包括今天在内的!
东西就是这么多,就看如何条理清晰的讲出来,同时还要引人入胜,表达准确,此外还是用非母语,时间就十来天,对我来说难度不小啊!
还好可以参考别人的文章,仔细看看其实也就几块:摘要,引言,理论基础,自己的模型,实验验证,结论。如果一天能写一块,6天也就搞定了!来分析分析这几个部分。
摘要是非常重要的,审稿的上来就是看它,写的不好就直接pass了!看下来似乎都是分为5大句:研究的背景(研究这个不是吃饱了撑的),研究的对象(对于解决问题很有帮助),本文的工作重点(In this paper, we focus on ...),提出的模型/方法(具体的技术细节,突出特点),实验验证(通过实验数据验证模型/方法的有效性)。
引言是摘要中前两点的展开论述,同时要回顾相关领域中已经做了哪些工作,在此基础上还有哪些不足,这就是我们要重点解决的~基本上也就是三大段:研究背景,实际需求;对现存模型/方法的review;本文提出的模型/方法,相关特性,所做的工作,以及后文的安排。
理论基础里简单介绍后面介绍自己的模型时所涉及到的一些基础理论知识,或者是对于数据来源的解释,总之就是介绍自己的模型/方法前的热身(有人也称之为前戏~)。
做足了准备工作,下面才开始讲述重点:自己的模型。这和一般讲故事或是将笑话类似,看来,从小培养孩子讲故事好处多多啊~如何抽丝剥茧地一步步将模型展示出来,是需要很高水平的,只有边写边改了~
实验验证需要数据,这数据可以是从实际系统中采集来的,也可以是在仿真系统中采集来的,实际系统的数据当然更真实,但是采集过程往往很麻烦,甚至是不可能的,所以很多都是从仿真系统中来的数据,只要能说明问题,也就OK啦~
以前想的东西
今天看参考文献,思考了我的仿真平台,也就是大论文要写一些什么内容。
首要主题当然是微观交通仿真平台,特点是基于多智能体,可扩展,分布式,可以仿真复杂的真实交通环境。
除了建模,还有模型的标定。可以采用两种方式采集标定数据:一是进行实际的跑车实验,使用精密的GPS仪器进行测量,采集数据;二是就用我的仿真平台,单独设计一个场景,前面放辆引导车,让testee用键盘或者游戏手柄控制车辆进行跟驰,这样方便很多,还环保,更能充分发挥仿真平台的优势!而且通过设定交通场景,可以采集到各种不同环境下不同测试者的反应。缺点是暂时不可能采用虚拟现实技术,只能让testee以俯视全局的方式来观察,这与真实情况很不一样。另外,在仿真平台上进行测试可能使testee更加大胆,超出正常的驾驶行为,这需要通过事先提醒testee来避免。第二种方法的效果可以通过让方法一中的驾驶者作为方法二中的testee来测试,看两种方法的结果的不同。
模型标定的方法也有很多,这里主要针对模糊推理决策模块的标定方法进行研究。佳点集等东西都可以拿出来放在这里看看效果如何。
模型的应用是最后一个主题。机场场面监控是一个不错的例子。首先,场面的交通环境很复杂,需要遵守更多的规则。其次,场面上的信号灯、标志牌很多,可以充分检验模型中附加设施的有效性。另外,机场在大部分气象条件下都可以运行,这也可以检验模型的适应性。和一般驾驶行为不同的是这里的司机都是专职的,受过严格训练的,对于各种情况的反应是可预期的。不过肯定也存在不同驾驶者之间的区别,可以检验驾驶决策模块中的个性因素。
首要主题当然是微观交通仿真平台,特点是基于多智能体,可扩展,分布式,可以仿真复杂的真实交通环境。
除了建模,还有模型的标定。可以采用两种方式采集标定数据:一是进行实际的跑车实验,使用精密的GPS仪器进行测量,采集数据;二是就用我的仿真平台,单独设计一个场景,前面放辆引导车,让testee用键盘或者游戏手柄控制车辆进行跟驰,这样方便很多,还环保,更能充分发挥仿真平台的优势!而且通过设定交通场景,可以采集到各种不同环境下不同测试者的反应。缺点是暂时不可能采用虚拟现实技术,只能让testee以俯视全局的方式来观察,这与真实情况很不一样。另外,在仿真平台上进行测试可能使testee更加大胆,超出正常的驾驶行为,这需要通过事先提醒testee来避免。第二种方法的效果可以通过让方法一中的驾驶者作为方法二中的testee来测试,看两种方法的结果的不同。
模型标定的方法也有很多,这里主要针对模糊推理决策模块的标定方法进行研究。佳点集等东西都可以拿出来放在这里看看效果如何。
模型的应用是最后一个主题。机场场面监控是一个不错的例子。首先,场面的交通环境很复杂,需要遵守更多的规则。其次,场面上的信号灯、标志牌很多,可以充分检验模型中附加设施的有效性。另外,机场在大部分气象条件下都可以运行,这也可以检验模型的适应性。和一般驾驶行为不同的是这里的司机都是专职的,受过严格训练的,对于各种情况的反应是可预期的。不过肯定也存在不同驾驶者之间的区别,可以检验驾驶决策模块中的个性因素。
订阅:
博文 (Atom)