设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10859|回复: 3

[求助] Repast建模时,怎么在一个网格里面放多个对象?

  [复制链接]
发表于 2008-11-28 09:26:19 | 显示全部楼层 |阅读模式
5仿真币
最近做流行病模型,需要在一个网格里面放多个Agent,我查了一下API,使用OrderedMultiGrid类来构造,里面提供了一些putObjectAt(int, int, index);之类的东西。似乎可以用。但是当我编程调试的时候发现在同一位置只能获取一个对象。这是很令人纳闷的事情。我想问一下Repast有提供什么好方法处理吗,不仅要能存进去,还要能方便的拿出来。1 Y/ t! W- X; r6 b$ r
private boolean findPotentialPartner(){8 I; o' S/ b0 G8 M$ T3 @
  boolean value = false;8 ?$ L/ q1 N8 O# ^0 p* ~
    P* Q, {: l( Z5 A
  OrderedMulti2DGrid grid = space.getCurrentAgentSpace();9 V8 j- d. K$ L  W. o
  Iterator iterator = grid.getIteratorAt(x, y);
% z  `" ?+ `6 r6 @  `+ O: M  SexAgent ag1 = null;  
( h! t  S6 K; C  SexAgent [] potenAgent = new SexAgent[20];! I9 F2 Y" e. ^, ]# o
  int goodNumber = 0;" ?9 w4 B: w5 |9 u% [7 n2 g, b) P
  while(iterator.hasNext()){8 [6 ?! j& N3 i6 W3 e4 r* j" m  D
   System.out.println("XXXXXXXXXXXXXXXXXXXXX");4 t8 e. L6 U( s. s
   ag1 = (SexAgent)iterator.next();
7 W5 V+ ~' N# |/ c   if((ag1.sex == FEMALE) 5 h# F7 ]* S( W" z
     &&(!ag1.isCoupled())){
- p3 g: s' V, }5 W/ k3 b& O    System.out.println("YYYYYYYYYYYYYYYYYYYY");+ j4 t2 Y7 ]4 _7 B8 [, ]
    potenAgent[goodNumber] = ag1;
6 U0 Q' Q1 |# y4 [2 O9 H    goodNumber ++;0 c. E. h$ n( h+ g+ q  |" |# P4 K
   }
: X' ]' S- g7 z8 I- M  }3 F* [" C& l' n0 Z+ Y& v3 [" x6 R1 F8 d
  " D: @+ m" d* b7 s2 D0 n# S
  if(goodNumber >0){3 n9 j* p: d% q: x1 f/ d
     System.out.println("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZ"); ( g2 i/ o" h2 M: N" N: E( j- U. m/ I
     Random rd1 = new Random();0 W/ c( K/ ]1 e. y
     int select = rd1.nextInt(goodNumber);
# c% f2 z! U5 ?2 b; o( F& \     potentialParterner = potenAgent[select];
" F3 l5 @4 u7 l5 _/ m4 w3 R  N( C     value = true;* q- ], Q) X2 Y- z; c4 f1 s
  }# J7 O0 ]* V' s6 {* ]
    return value;
( v% @1 x: ~+ B9 t/ c: p }
* v  ~0 A" |) j- g' T7 v+ G始终只能打印出XXXXXXXXXXXXXXXXXXXX,请各位帮帮忙。

发表于 2008-11-28 17:44:57 | 显示全部楼层
我想问下你这个打印的XXXXXX打印了几遍,还有你是否已经把agent添加进去了
发表于 2010-7-8 18:15:38 | 显示全部楼层
囧。。。这么久都没人回
发表于 2012-4-14 14:56:01 | 显示全部楼层
08年提出的问题到现在都没有人解决啊,真是够可以的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-8-24 05:29 , Processed in 0.012798 second(s), 12 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表