条件如何运作?

时间:2016-10-19 12:17:42

标签: anylogic

我正在建立一个意大利百日咳的流行病学模型,疫苗接种计划是在生命的第三,第五和第九个月......然后有4到6年的加强剂量和另一个在14。 代理人的年龄再现了意大利人口的分布,我用上个世纪的数据来分析不同州的初始人口。虽然我从另一篇论文中获取了有关daiyly联系的数据,但是每个代理都会与其他代理商联系。

我想重现2006年至2014年意大利百日咳的流行病学...所以我对感染人数感兴趣

enter image description here

新的代理人(在模拟期间出生)进入状态S ...在他们的第三个月(从60到89天)代理人可以接种疫苗和chage状态(转到V1)...我有每日更改状态的概率(ProbVaccD)...这是我在转换中编写的代码:

condition: age() >= 60./365 && age()<90./365 guard: randomTrue(main.ProbVaccD)

模特的时间是&#34;天&#34;和&#34;年龄()&#34;是一个定义为return time(YEAR) - birthDate;的函数,其中&#34; birthDate&#34;是一个变量,存储代理人出生时模型的时间(年)。

我想要的是每天评估的条件,因此我添加了一个&#34;循环事件&#34; &#34;复发时间为1天&#34;和action: onChange(); ......这是正确的吗?

我担心的一点是,一些代理(状态为Ip,Is,R1,R2和R3的代理商)每天向他们所连接的所有代理发送消息......

假设代理收到8条消息,那么条件评估8次(每条消息一条)+ 1条(&#34; onChange();)函数?

提前致谢!!!

0 个答案:

没有答案