social rules
I may answer myself sometimes, I edit while I write
For a project of mine, your avatar is around many agents(some complex, some simple), who are supposed to respond to your presence and the presence of other agents, and their actions, and the locale, etc. Anyway, I don't know what this might be called so I don't know what to search for. Hmmm, a-life? In robotics I'd call it subsumptive. No, it's not, but I should definitely include that. Good for prioritizing goals.
My idea is to use steering behaviours which get selected by rules(probably if-thens, possibly fuzzy but I don't see any clear cut reason to include it). When I say steering, I do mean steering, like where to walk and which people to talk to and which activities to participate in, like flocking. I think the Sims-style thing where the terrain broadcasts messages would be helpful to simplify perception. An agent should obviously avoid any building labeled 'on fire'. I use this because that level of the simulation would be sociological, hence the thread title 'social rules'.
For the psychology of each agent, I was just gonna vary every agent's variables a little.
When reacting to memory, simple agents will use reputation(via the smart terrain, except it would be agents broadcasting). Complex agents will have actual memories of past events.
For emotion, simple agents can just use a FSM. The difference in complex and simple agent emotion is I suppose complex agents might have more going on in there head, more than one emotion is possible. Now here I can imagine using fuzzy, but how do I regulate them? For instance, suppose an agent is feeling two or more emotions, but an event happens which realistically should cause it to forget about everything else? I've thought about it, emotion could be a constant sum game. When every emotion is added together, it should always equal one. So, if one emotion gets very strong, everything else gets weaker. Oh, but by how much, what if two emotional events take place, one much more significant than the other? How to compute significance?
Any advice on translating broad social rules and values into a given agent's behaviour? Like an abhorrence of violence leading to trying to resolve things peacefully or a passion for violence leading to more fights. Ooh, even better, how to deal with confusion created by 'outsiders', agents who do odd things according to the confused agent's sociological perspective. Another tricky one would be how to instill meaning to specific gestures and words, middle finger, **** you, etc. or better yet, how to even create these gestures in the first place? Well, let's see, gestures are usually used to convey specific meanings, and I suppose that pretty much every major kind of expression always has its own gesture(happiness, peace, insults). Plus, there would be specific gestures for things of cultural significance(like the Tomahawk Chop done by fans of the Atlanta Braves).
Advice on culture change would be good too, and language differences.
Oh, and for reducing computations, I figure every member of a given culture would have the same basic rules. This is obvious but just a note to myself. Same goes for gossip/news. A common village pool and then every person has their take on it. Oh, yes, good way to implement firemen(see earlier remark about the obviousness of avoiding buildings labeled 'on fire').
quote:
Original post by RolandofGilead
My idea is to use steering behaviours which get selected by rules(probably if-thens, possibly fuzzy but I don''t see any clear cut reason to include it). When I say steering, I do mean steering, like where to walk and which people to talk to and which activities to participate in, like flocking.
Mmm, there''s lots I could write about in response to this post, but I''ll start with just one idea and maybe other people will take up some discussion of the other points.
I would suggest a localised Potential Field approach, which is the underlying principle of an Influence Map. Agents and objects can broadcast their ''influence'' on the environment, which would have an initial strength and a field gradient (to determine maximum range). When other agents walk into the area, they compute the local influence map (gradient field) to determine the influence of all surrounding agents and objects on their location. Modify the individual contributions of surrounding agents and objects by the agents own preferences... perhaps they are more sensitive to cute girls/guys than buying things, so weight that influence more. Then sum all of these influences (since they represent gradient contributions we can get away with linearity). Finally, determine the direction of maximum gradient and head down that slope. In this way, your agent is trying to minimise the local potential. So, you can see that objects and agents that your agent likes should be localised in potential wells and objects and agents that your agent doesn''t like should be located on potential hills.
Cheers,
Timkin
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement
Recommended Tutorials
Advertisement