swarm-modeling
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Considering a new project & wanting something for nothing


From: Paul Johnson
Subject: Considering a new project & wanting something for nothing
Date: Wed, 09 Jun 1999 17:08:53 -0500

Last fall, I signed up to give a paper at a meeting that will be held
this fall.  The paper is about different models of opinion formation and
social influence and one variant that I'm considering now goes roughly
like this.  We want 
   1. Individuals who look about for "discussion partners".  They search
within a "neighborhood" for people they expect will give pleasant
conversation.  They choose at random among all targets that are equally
likely to be pleasant.  Pleasant is some combination of agreement with
own opinion and usefulness in other respects (they may have a hamburger
you want, etc.)
   2. There can be discussion between the partners and certain amounts
of information revealed.  A friend who is a professor at Indiana has
done lots of empirical work and claims that the other person's opinion
will have more impact if that person is seen as knowledgable, for
example.  There are plenty of little details that may have to be ignored
in the model.
   3. On the basis of their discussion, individuals can change their
opinions.  Their knowledge level may be incremented as well, if they
were a less knowledgable person talking to a more knowledgable person.
   4. Then they proceed to look for more discussion partners.  There has
to be some ingredient that creates a tendency to go back to the same
discussion partners, but also a willingness to look for new ones.

I have been thinking about this for a little while, but didn't work yet
on designing a simulation.  If you have ideas about it, I'd be glad to
hear.

Anyway, I got to looking at an app that Pietro Terna is distributing
called LangtonAntSpace.  I've got version 0.8, but there may be newer
ones. Anyway, he has an updated version of Sven's upgraded MoGrid2d
class in there.  That is a  class in which there is a 2d grid, and at
each one there can be a list of occupants.  The class looks to be well
designed (thanks, Sven) and updated (thanks Pietro).  Takes into account
Swarmlib changes through 1.4.

So I got to thinking like this.  What if the world of each agent is
thought of as a MoGrid2d, and an agent can enter a space on the lattice,
and then discuss with some elements from the list, then form an opinion
about the people in that space, and possibly decide to stay or go.  If
the agent stays, then its participation will affect other agents looking
to move as well.

Then I started to wonder how I would design record-keeping for each
agent, a tally of experiences in each cell.  I think I would create a
Tally object for each cell visited, and in there store whatever
information was obtained.

I started thinking about creating a Grid2D object inside each agent and
hanging the Tally objects on the right spots. (Even though the Grid2D
documentation says it is a space for agents, I don't think it would mind
holding some other kinds of objects :).    

But then I wondered if there is a way to get something for nothing. 
Since the MoGrid2d class can answer a message like "getListatX:Y:", and
it returns a Swarm list object, it seems like I'm getting something for
nothing by using a Swarm Map with the return from "getListatX:Y:" as the
key and the Tally object as the item.  I don't have to allocate any
dynamic memory that way, but I do pay a performance penalty of slow
searches through the Map for a particular list.

I see a major danger in either of these approaches, however. If a spot
in the MoGrid2d goes "empty" after an agent has been there, then the
agent will still possess a Tally for that spot, even though the spot
does not exist.  If an interation over a Map tries to use a key that no
longer exists, I think that agent would meet Mr. Segmentation Fault.  

But I don't want to have the MoGrid2d class having to notify every agent
when a list goes empty in the grid, right? 
   

-- 
Paul E. Johnson                       email: address@hidden
Dept. of Political Science            http://lark.cc.ukans.edu/~pauljohn
University of Kansas                  Office: (785) 864-9086
Lawrence, Kansas 66045                FAX: (785) 864-5700


                  ==================================
   Swarm-Modelling is for discussion of Simulation and Modelling techniques
   esp. using Swarm.  For list administration needs (esp. [un]subscribing),
   please send a message to <address@hidden> with "help" in the
   body of the message.
                  ==================================


reply via email to

[Prev in Thread] Current Thread [Next in Thread]