一步一步学Repast代码解释.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
The Circle of Life: Agents Dying and Being Born (Step 24-2) – Things to do The die routine must do the following: Remove the agent from the space object Spread the agents money across the space object Remove the agent from the agent list Add a reapDeadAgents() method to the model Add a removeAgentAt() method to the space object Create the reapDeadAgents() method so that it returns a count of the agents who died. We then create that same number of agents anew to have agents being reborn Codes for adding reapDeadAgents() to the model (Step 24-3) In CarryDropModel, private int reapDeadAgents(){ int count = 0; for(int i = (agentList.size() - 1); i = 0 ; i--){ CarryDropAgent cda = (CarryDropAgent)agentList.get(i); if(cda.getStepsToLive() 1){ cdSpace.removeAgentAt(cda.getX(), cda.getY()); cdSpace.spreadMoney(cda.getMoney()); agentList.remove(i); count++; } } return count; } Codes for adding removeAgentAt() to the space object and agent reborning (Step 24-4) In CarryDropSpace, public void removeAgentAt(int x, int y){ agentSpace.putObjectAt(x, y, null); } In CarryDropModel, public void buildSchedule(){… class CarryDropStep extends BasicAction { public void execute() {… int deadAgents = reapDeadAgents(); for(int i =0; i deadAgents; i++){ addNewAgent(); } …} } …} What’s been done in Step 1-24 In CarryDropModel (extends SimModelImpl): imports (Java RePast), private variables, setup(), begin( buildModel(), buildSchedule(), buildDisplay() ), private methods: addNewAgent(), reapDeadAgent(), countLivingAgents(), public access methods: get(), set(), public static void method: main() In CarryDropAgent (implements Drawable): imports (Java RePast), private variables, constructor, public access methods: get(), set() public utility methods: report(), draw(), step() In CarryDropSpace: imports (RePast), private variables, constructor, public access methods: get(),

文档评论(0)

shujukd + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档