From: Nick C. <nic...@ve...> - 2001-10-10 13:05:30
|
I'm not sure I follow what you said below, but the idea here is that all the agents reside in the world (the Object2DTorus). The ImmuneSpace handles the dispersion of signalA (or whatever it actually is called). Agents look in the Immunspace for signal A. To disperse another signal (signalB), you need to create another space. This could probably be another instance of an ImmuneSpace. So, spaceA =3D new ImmuneSpace(diffusionConstant, evapRate, worldXSize, worldYSize); spaceB =3D new ImmuneSpace(diffusionConstant, evapRate, worldXSize, worldYSize); Use spaceB to disperse the other signal. Agents that disperse signalA will work with spaceA. Agents that disperse signalB will work with spaceB. The agent that can detect signalA and signalB will know about about both spaces and look in each for both types of signals. hope this is clear, nick On Tue, 2001-10-09 at 16:02, Ron Siao wrote: > This message was sent from Geocrawler.com by "Ron Siao" <si...@os...> >=20 >=20 >=20 > I kind of get the idea, but I can=92t see how it=20 > will be done. >=20 > In the buildModel(), I setup the space and world=20 > by > space =3D new ImmuneSpace(diffusionConstant,=20 > evapRate, worldXSize, worldYSize); > world =3D new Object2DTorus(space.getSizeX(),=20 > space.getSizeY()); > Now, this is the same space and world which I use=20 > in buildDisplay(), and step(). > And this is the space, world is used by two types=20 > of agents: > 1). Agents dispersing signals. > 2). Agent seeking these signals. >=20 > The behavior being modeled is: > 1). Agents dispersing signal A > 2). Agents dispersing signal B > 3). Agent which can distinguish between signal A=20 > and signal B=20 >=20 > I am able to get a different agent on the display=20 > by > spaceY =3D new ImmuneSpace(diffusionConstant,=20 > evapRate, worldXSize, worldYSize); > worldY =3D new Object2DTorus(spaceY.getSizeX(),=20 > spaceY.getSizeY()); >=20 > But, I can=92t get this agent to disperse the=20 > signal . >=20 > Also, where will the agent which looks for the=20 > different signals be placed. I mean space, world=20 > or=20 > SpaceY, worldY. >=20 > Thanks,=20 > Mien Siao >=20 >=20 > --------------------------------------- > Hi, >=20 > If I remember correctly, you already have one=20 > signal working in its own > space. To do another one, create a similar space,=20 > and treat it like the > other. So, in your agent code, your agents would=20 > look in space A to see > if they are near signal A, and in space B for=20 > signal B.=20 >=20 > The unreleased development version of repast has=20 > some nice code for > dealing with multiple objects in cell, which=20 > would also solve your > problem. However, this won't be released for a=20 > while. >=20 > Nick Collier=20 > Social Science Research Computing > University of Chicago=20 > http://repast.sourceforge.net >=20 >=20 >=20 > _______________________________________________ >=20 > =09 >=20 > Geocrawler.com - The Knowledge Archive --=20 Nick Collier=20 Social Science Research Computing University of Chicago=20 http://repast.sourceforge.net |