前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用Java程序仿真模拟病毒传播过程(已开源)

用Java程序仿真模拟病毒传播过程(已开源)

作者头像
Guide哥
发布2020-05-07 17:37:02
1.2K0
发布2020-05-07 17:37:02
举报
文章被收录于专栏:JavaGuideJavaGuide

最近,在Github上面有一个 VirusBroadcast 开源项目,它利用Java程序仿真模拟了冠状病毒的传播过程「理想状态下」。

正如作者 KikiLetGo 在 README 文档中是这样介绍项目的:

一个基于Java的模拟仿真程序,由于启动的时候时间仓促,数据不足,所以模型和推演过程过于简单,如果有好的想法或者能提供相关数据支持的朋友请提issues。如果您也是一名Java程序员,可以直接修改并给我提交pr,我之前已经启动每日疫情数据的每日抓取工作,希望在疫情结束后有机会通过这些精准的的数据做一个复盘。

2020.2.6: 病毒变异过程是一个不断适应的过程,可以尝试简单的DNN对病毒进行建模,已经开始着手实施。

视频地址:https://www.bilibili.com/video/av86478875

项目地址:https://github.com/KikiLetGo/VirusBroadcast

整体代码不多,利用Java Swing来实现,直接导入到Intellij IDEA便可以运行,这里导入的时候,需要注意一下导入方式,如下图所示。

大家可以根据具体的情况去调节Constants.java类里面的相应参数。

    public static int ORIGINAL_COUNT=50;//初始感染数量
    public static float BROAD_RATE = 0.8f;//传播率
    public static float SHADOW_TIME = 140;//潜伏时间
    public static int HOSPITAL_RECEIVE_TIME=10;//医院收治响应时间
    public static int BED_COUNT=1000;//医院床位
    public static float u=0.99f;//流动意向平均值

运行结果如下图所示:

左边

  • 白点:正常人
  • 黄色点:潜伏期人群
  • 红色点:确诊人群

右边矩形框内的红色点:表示医院的床位。

最后,希望大家出门带好口罩,没得特殊情况,就在家待着,别乱跑!!!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-02-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JavaGuide 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档