• Announcements

    • khawk

      Download the Game Design and Indie Game Marketing Freebook   07/19/17

      GameDev.net and CRC Press have teamed up to bring a free ebook of content curated from top titles published by CRC Press. The freebook, Practices of Game Design & Indie Game Marketing, includes chapters from The Art of Game Design: A Book of Lenses, A Practical Guide to Indie Game Marketing, and An Architectural Approach to Level Design. The GameDev.net FreeBook is relevant to game designers, developers, and those interested in learning more about the challenges in game development. We know game development can be a tough discipline and business, so we picked several chapters from CRC Press titles that we thought would be of interest to you, the GameDev.net audience, in your journey to design, develop, and market your next game. The free ebook is available through CRC Press by clicking here. The Curated Books The Art of Game Design: A Book of Lenses, Second Edition, by Jesse Schell Presents 100+ sets of questions, or different lenses, for viewing a game’s design, encompassing diverse fields such as psychology, architecture, music, film, software engineering, theme park design, mathematics, anthropology, and more. Written by one of the world's top game designers, this book describes the deepest and most fundamental principles of game design, demonstrating how tactics used in board, card, and athletic games also work in video games. It provides practical instruction on creating world-class games that will be played again and again. View it here. A Practical Guide to Indie Game Marketing, by Joel Dreskin Marketing is an essential but too frequently overlooked or minimized component of the release plan for indie games. A Practical Guide to Indie Game Marketing provides you with the tools needed to build visibility and sell your indie games. With special focus on those developers with small budgets and limited staff and resources, this book is packed with tangible recommendations and techniques that you can put to use immediately. As a seasoned professional of the indie game arena, author Joel Dreskin gives you insight into practical, real-world experiences of marketing numerous successful games and also provides stories of the failures. View it here. An Architectural Approach to Level Design This is one of the first books to integrate architectural and spatial design theory with the field of level design. The book presents architectural techniques and theories for level designers to use in their own work. It connects architecture and level design in different ways that address the practical elements of how designers construct space and the experiential elements of how and why humans interact with this space. Throughout the text, readers learn skills for spatial layout, evoking emotion through gamespaces, and creating better levels through architectural theory. View it here. Learn more and download the ebook by clicking here. Did you know? GameDev.net and CRC Press also recently teamed up to bring GDNet+ Members up to a 20% discount on all CRC Press books. Learn more about this and other benefits here.
Sign in to follow this  
Followers 0
Prozak

Emergent Intelligence

73 posts in this topic

I've been reading "Swarm Intelligence" that talks about intelligent behaviour emerging from large groups of not-so-intelligent creatures. I would like to know more about this, specificly working examples and demos. The book uses ants a lot as an example. What other work is being done in AI that deviates from the "lets build a brain" process, and goes more towards a "lets build a few million quasi-intelligent" bots, and watch them better themselves...?
0

Share this post


Link to post
Share on other sites
well if you want to find stuff on "swarming" try googling "flocking". you can find _tons_ of algorithms and demos. i believe there are some on this site in the articles section.

Quote:
Original post by Prozak
What other work is being done in AI that deviates from the "lets build a brain" process, and goes more towards a "lets build a few million quasi-intelligent" bots, and watch them better themselves...?


heh, pretty much all of the work being done in AI deviates from the "lets build a brain" process. it's pretty much impossible with our current understanding of the brain to try and build one. we simply don't know enough about how the actual system works to build anything resembling the same complexity.

you can look at state machines, path finding, neural networks and genetic algorithms to start. i'd also suggest sitting down and reading all the articles under the AI section on this site to give you some ideas about what's out there. i'm sure there are a number of good books suggested in the books section as well that can get you on the right track.

-me
0

Share this post


Link to post
Share on other sites
"Emergent behavior" is really just a fancy way of saying "a coincidence that really looked cool". If you build an agent based model where each agent is thinking for itself using rules to define it's own behavior, sometimes these agents may do things that seem to be working with each other. In fact, there IS no cooperation happening - each agent is only secondarily aware of the other agents (if that), but they have started to do things "near" each other that makes them look like they are cooperating.

With a simple flocking behavior, this can be seen as each "boid" doing it's own thing... (i.e. the rules for moving with the world objects but not coliding with the world objects) and yet the perceived result is that they are moving "together".

In RTS games, there is a high degree of perceived emergent behavior. This happens when simple rules for each agent (unit) is designed in such a way that it tends to compliment other units' simple rules.

When I had a chance to ask Peter Moleyneux and Will Wright about designing and testing emergent behavior, Peter talked about how horrifying it is to watch your little system working along, doing amazing things that you didn't really design into it... but all the while knowing that at any moment it could collapse in on itself!
0

Share this post


Link to post
Share on other sites
First off, 'Swarm Intelligence' is NOT the same as flocking behaviours (c.f. Craig Reynold's Boids). It's about 'Hive minds'.

As to Dave's comments...

Quote:
Original post by InnocuousFox
"Emergent behavior" is really just a fancy way of saying "a coincidence that really looked cool". [ ... ] In fact, there IS no cooperation happening - each agent is only secondarily aware of the other agents (if that), but they have started to do things "near" each other that makes them look like they are cooperating.


This is absolutely NOT the definition of emergent behaviour or cooperative agents as used widely in the AI community and with reference to those definitions, the above carries several errors.

I don't have the time at the moment to spell out everything that is wrong with the above... I urge anyone who wants to know the truth about emergent behaviour and/or cooperative agents to read some literature.

For the time being, all I will say is that emergent behaviour is (typically) the result of nonlinear feedback mechanisms within sub-units of an entity that aren't specifically encoded to produce these 'emergent' outputs... while 'cooperative agents' specifically take into account the state and actions of other agents when making their own decisions (so cooperation IS encoded in individual entities). Hive minds are examples of BOTH of these systems... the sub-units act indivually yet display cooperation and the hive as a whole displays emergent behaviours that aren't specifically encoded within singular sub units.

Cheers,

Timkin
0

Share this post


Link to post
Share on other sites
Thanks Timkin, either I didnt make myself clear, or got completely missunderstood, but the thread was going off in the wrong direction...

Im not looking for flocking behaviour, im looking for cooperative problem solving behaviour, even if that problem solving "emerges" from the "hive", an example would be how ants solve the "find the path between A & B that takes the less energy to make"...

..no one ant solves it, its a group effort, although I dont think any one of them realizes that...

So I would like to know what other practical works, even "visual" simulations are being worked upon with basis on EI...
0

Share this post


Link to post
Share on other sites
*shrug*

Well, I'm just repeating what game AI designers, programmers and litterature consider "emergent behavior" to be. Perhaps it is different in the "real world"... but seeing as this is a game AI board, I didn't bother addressing contexts other than that of game AI.
0

Share this post


Link to post
Share on other sites
Look at particle swarm optimization.
Theres at least 1 good article on it at citeseer.
Its rather interesting.

What it is designed for is stochatic finding of a single tuple(a maxima/minima) over the reals.

I've worked with it this summer, so I can answer questions regarding it. ^_^
0

Share this post


Link to post
Share on other sites
Quote:
Original post by InnocuousFox
*shrug*

Well, I'm just repeating what game AI designers, programmers and litterature consider "emergent behavior" to be.


Could you provide some references Dave or perhaps identify these people? Either these people are wrong and are propogating erroneous information (in which case they should be correced before they set the industry back another 5 years) or you have misunderstood what they were saying/writing. All I can say is that I've never heard a game designer or programmer talk about emergent behaviour in the way you have, nor have I seen Game AI literature that refers to it as coincidence and involving no contextual awareness.

Cheers,

Timkin
0

Share this post


Link to post
Share on other sites
Quote:
Original post by Timkin
All I can say is that I've never heard a game designer or programmer talk about emergent behaviour in the way you have, nor have I seen Game AI literature that refers to it as coincidence and involving no contextual awareness.
Perhaps in my being flipant and terse, I did not express myself fully and/or overcompensated. However, since we have determined that this is not the goal of the OP, it is not appropriate for me to detail the differences here.
0

Share this post


Link to post
Share on other sites
Prozak: Have you read anything about neural networks or genetic algorithms? A lot of times those can get some emergent behavior going on. NNs and GAs evolve in a way to solve their problems as best as possible.

EDIT: Here's an example of sort of emergent behavior I got once. I made a program that pitted 2 armies of triangles against eachother. The rules were, if you killed a guy on your own army you lost a some points, and if you killed a guy on the other army you gained some points. Every few minutes, I stopped the battle, and the guys with the best score moved on and "breeded" a new army. Then I would start over. Well, what I expected was that these armies would fight, but that's not what happened. At the beginning of each battle, the triangles would always shoot all of their bullets right away and never move. Obviously, since my triangles were lined up in rows and columns, a lot of friendly fire was happening. Well, after a few generations, my armies learned to shoot all of their ammo right away but not kill eachother. Right when the battle started they would all turn to a precise angle such that they could shoot everything and not kill anything. It was pretty neat, even though they weren't doing exactly what I had wanted them to do.
0

Share this post


Link to post
Share on other sites
nice
your armies learned that world peace was the best answer
takes a bunch of triangles to figure that out what people cant...
0

Share this post


Link to post
Share on other sites
That's pretty cool, but it sounds more like genetic algorithms than emergent behaviour. Although I guess the two are somewhat similar.
0

Share this post


Link to post
Share on other sites
well, what was happening was that the genetic algorithm(it approximated it, k?), was displaying emergent behavior.
Interesting, tho.
0

Share this post


Link to post
Share on other sites
Well, we could dive into the definitions of EI, but I think i'll stick to my original defenition, that EI is demonstrated by a group of "limited" individuals coming together and solving problems none of them could solve alone.

The triangle army experiment indicates that each triangle came to its own conclusion on how it should operate, its wasnt a communal achievement... and also lets not forget that "breeding" in those digital universes many times means "chaotic cloning" more than anything else...
0

Share this post


Link to post
Share on other sites
From the original post is Emergent Behaviour really the right thing to be looking at rather than Genetic algorithim/Programming
(never quite know the difference) or a mix of the two?
Creating a million bots which display emergent behaviour would not have any of them learn from the experience. Somebody at BlitzCoder wrote a simple FSM battle similar to the triangles
example. The flee/attack code made it look as if weaker/smaller
'triangles' were hiding behind stronger/larger triangles and ganging-up on stronger opponents. 'Ganging-up' was never coded but occurred as a by-product of the programming.
However, this would not allow...
"and watch them better themselves...?"
Maybe those triangles that flank or box around larger enemies
to reach smaller enemies should be rewarded etc etc.


0

Share this post


Link to post
Share on other sites
I have done some reading on the topic, but am certainly not an expert. Here are a few sites with ideas/definitions about emergence at varying levels of depth. If nothing else, they probably have some good references:

http://people.imise.uni-leipzig.de/alexander.heussner/files/Emergence_in_ALife.pdf

http://www.arch.usyd.edu.au/~rob/study/EmergenceAndArtificialLife.html

http://sites.inka.de/moebius/origami/dessau2003.pdf

0

Share this post


Link to post
Share on other sites
Quote:
Original post by InnocuousFox
*shrug*

Well, I'm just repeating what game AI designers, programmers and litterature consider "emergent behavior" to be. Perhaps it is different in the "real world"... but seeing as this is a game AI board, I didn't bother addressing contexts other than that of game AI.


I've seen you use this "out" quite a bit after you've stated something completely wrong. You are wrong. The literature does not express what you stated to be so. Emergent behavior is understood to be precisely what Timkin described and precisely not what you described. And it doesnt matter if its applied to a game, a flocking system, a full fledged AI exprement, or anything else.

Can I ask what credentials you have in the AI world? I suspect your credentials are limmited to writing games and while this does happen to be a GameDev, thats no excuse for being constantly wrong or having such a limmited "cheap hack" view of the subject of AI, game related or not.

Not all game designers are cheap hack implimenters. Some actualy impliment AI as understood by the AI community. Some actualy strive for more than the sum of its parts.


0

Share this post


Link to post
Share on other sites
Yep. I suck. In fact, I should be so embarassed by myself that I should post anonymously thereby avoiding all responsibility for what I post.

From AI-depot.com
Quote:
"Emergent behavior is behavior that looks complex and/or purposeful to the observer but is actually derived spontaneously from fairly simple rules."


From Emergent Behavior, Cellular Automata, and Our Game “Mr. Froggy”
Quote:
"Recently, emergent behaviors have become crucial in game design and implementation, where it is important to increase game’s intelligence by adding more unpredictability into the game. Chris Crawford in his book [6], states a game he would like to build, “Attack of Cellular Automata”. He quotes that it might be fun in fighting a war with cellular automata. The cellular automata have emergent behaviors, which gives rise to interesting game-play. In this paper, we report our approach to realize some of the above ideas using conceptual framework of cellular automata. Sections II and III briefly review use of Emergent Behavior (EB) and Cellular Automata (CA) for games. Section IV reviews open source Java applet MJCell v. 1.50. Our framework for software architecture for developing CA games is described in Section V. Section VI discusses our game “Mr. Froggy”, and Section VII gives concluding remarks.

II. EMERGENT BEHAVIOR AND GAMES “Emergent behavior is that which cannot be predicted through analysis at any level simpler than that of the system as a whole… Emergent behavior, by definition, is what’s left after everything else has been explained” (Dyson & George, 1997 [9]). Emergence is also defined as the action of simple rules combining to produce complex results (Rollings et al., 2003 [17]). A game with emergent properties can create an illusion of intelligence to a game AI (Scott, 2002 [19]); it can make even the game designers surprised on how the game runs, how the game evolves, and even they do not know the best strategy to win the game. Emergence has become a popular buzzword over the past decade (Kreimeier, 2000 [12]). Kreimeier [12] reports that Marc LeBlanc attempted to make a case for emergent complexity as a possible source for "fun." In his view, such emergence creates larger spaces to explore, offering the player more features to discover and more challenges to meet"


From a Gamasutra article about the state of the industry:
Quote:
One nice side effect demonstrating the intrinsic power of such a straightforward approach to AI can be seen in something called "emergent behavior." A developer faced with coding a complex AI can instead break it down into smaller pieces. Rather than having to code thousands of rules for every conceivable situation that could arise in a game, lower-level behaviors are coded individually and then linked in a decision-making hierarchy. The interaction between these low-level behaviors can cause higher-level, more "intelligent" behaviors to emerge without any explicit programming. This is the basis behind flocking, an AI technology that seeks to emulate the behavior of large groups of animals, such as flocks of birds or schools of fish. No one member of a flock actually knows anything about the motion of the flock, and yet through individual actions their motions are coordinated and fluid. Flocking has found its way into a number of first-person shooters and RPGs as the basis of sort of artificial life, another form of AI technology seeing more use in games.
0

Share this post


Link to post
Share on other sites
Oh for gods sakes, does this board have to become a battle between academia and industry? In game development, emergent behavior *is* a good-looking coincidence. In university, it's a non-linear whatchamacallit. Whoop de doo.

I've been a game programmer for 10 years at 4 different companies and we all consider emergent behavior to be what InnocuousFox says.

Oh no, we must not use an improper definition!

0

Share this post


Link to post
Share on other sites
Quote:
Original post by Anonymous Poster
I've been a game programmer for 10 years at 4 different companies and we all consider emergent behavior to be what InnocuousFox says.

[sarcasm]Gee... but you don't have any "credentials". Obviously YOU aren't snootty enough to provide us with an opinion or observation that matters.[/sarcasm]

(Crap... I'm not a doctor with medical training and all that credentially stuff, but I can sure as hell diagnose a broken arm, can't I?)

Quote:
Oh no, we must not use an improper definition!

As I've made the point before, some people spend so long fine-tuning their little definitions and theorems in the land of academia that they don't actually DO anything.

Thanks for your input. I wish you weren't anonymous too.
0

Share this post


Link to post
Share on other sites
Back on topic:

Prozak, has your question been answered yet? If not, can you provide any more context about what you are interested in? What kind of 'problems' are you interested in solving?

Depending on the problems you are interested in, there may be a better field to look at than emergence.
0

Share this post


Link to post
Share on other sites
Gee, I wish I had joined in on this one sooner.

Prozak: I think InnocuousFox said it best with:

Quote:

Emergent behavior" is really just a fancy way of saying "a coincidence that really looked cool"


As far as most _games_ are concerned he's bang-on. In your game you just need a way of presenting an illusion of intelligence (or cooperation) to the player. Graphics programmers fudge lighting, Game AI programmers fudge intelligence. :)

You wanted examples, so I give you mine. :)

Not long ago I wrote a tank-battle game in which the enemy tanks choose (mostly randomly) from a set of actions. Each of these actions is comprised of a set of other actions (which are selected sort-of randomly).

For example, a tank could decided to turn towards the player, and move forward at the same time. This makes the tank look like it's chasing the player, although the tank itself has no concept of chasing. Turn and move forward are separate actions that could be applied at the same time.

When a tank bumps in to an obstacle, it can take a number of different actions-- back up, back up and turn, just turn, wait, turn towards the player, shoot, etc..

Everything had to be kept really simple because the game needed to run on a slow cell-phone-- every spare drop of processing power needed to be saved for the 3D wire-frame graphics. lol

People who played the game we're generally happy with the different tank opponents, and found these opponents very tough yet still 'tank-like'.. Many people commented on how smart the tanks were for using obstacles as cover; they would duck out, fire, and then retreat back behind the obstacle always keeping the players line of fire blocked.

This particular behaviour was coincidence. The simple rules that the tank sort-of-randomly decided to follow ended up making it LOOK like the tanks were using cover, but in reality they had no concept of cover, or blocking, or hiding.

Technically what was happening was this:
-Tank would randomly choose to chase player (or drive around).
-Tank would bump in to a wall.
-Player would turn to lock on to enemy tank because a stuck target is easy to aim at.
-Enemy tank would back away from wall.
-Enemy tank could not move forward much because of the wall, therefor enemy tank spent more time turning towards player.
-When player was within enemy tanks randomly generated firing arc, tank would fire.
-After shooting enemy tank would randomly pick a new action.
-If new action resulted in tank moving forward, it was likely to bump in to a wall.
-Bake in preheated over at 350 degrees for 50 minutes or until evenly brown and you now have one tank that looks like it's using cover.


I was very happy with the results.

Good luck!
Will

0

Share this post


Link to post
Share on other sites
I also thought 'emergent behaviour' was behaviour not planned but a result of other rules which, basically, would be by coincidence. I agree that 'co-operative agents' would be something different altogether (i.e. some king of planning).
AI Game Programming Wisdom has a couple of articles by William van der Sterren...
Squad Tactics : Team AI and Emergent Maneuvers
Squad Tactics : Planned Maneuvers
which might be of interest.
I'm still not sure whether Emergent Behaviour, rather than genetic algos, is the right area for Prozak's query.
Unless I've misunderstood it... which is very possible.
0

Share this post


Link to post
Share on other sites
Personally I don't believe what Dave quoted above supports his flippant and terse (his words) comments earlier in the thread and taken in the context of the literature in the field of emergent behaviours (written by many people, many of whom are academics and many of whom are not), means exactly what I wrote above.

Dave, perhaps you did mean to say (albeit in other words) what I was saying, but your flippant attitude once again came across as dismissing an entire field of research, developed by thousands of very intelligent people working inside and outside of academia. Personally, I think you've incorrectly represented the sources you've quoted and perhaps you should re-read both my post and theirs.

To those others developing this thread into a flame war of 'academia' versus 'the real world (TM)'... please stop. This is NOT an 'academics definition' versus a 'game coders definition'. This is simply about understanding what emergent behaviour is and what it isn't.

If it is an academic vs TRW argument, then I must be in trouble, since I have been an academic, I write games (and Game AI) and I work in industry doing AI. Does that mean I don't know what I'm talking about because I'm not in one camp or the other?

Finally, Dave, you should be careful about attacking APs assuming they're the same person. They're typically not and they weren't in this case...

Please people, keep it civil.

Cheers,

Timkin
0

Share this post


Link to post
Share on other sites
1) My quotes simply came from a Google search for "definition emergent behavior game". They were just samples of what I found meant to show how your allegedly crystal-clear definition of the topic is a little more muddied that you imply. (Interestingly, other people came in to post in support of my definition - or rather my summation of the definition as held by many in the industry.)

2) If I "came across" as "dismissing an entire field of research" then perhaps the person interpreting it is a bit oversensative to the subject? I can't seem to find how I was dismissing anyone or anything - just merely passing along an observation of how the term is often used in our industry.

3) A careful review of the thread will show that my "attack" on an AP was conducted prior to the 2nd AP post. Even further dilligent research will show that I agreed with the post of the 2nd AP and even lamented that he/she/it was anonymous as well. I was well aware that they were different people.
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0