Crowd Dynamics AI Engine w/ PSO - PowerPoint PPT Presentation

About This Presentation
Title:

Crowd Dynamics AI Engine w/ PSO

Description:

Simulates the motion, movement, behavior of groups. Conventional games do it individually ... a list of people as the group. Each time the step() method is ... – PowerPoint PPT presentation

Number of Views:61
Avg rating:3.0/5.0
Slides: 13
Provided by: tjh5
Learn more at: https://www.tjhsst.edu
Category:
Tags: pso | crowd | dynamics | engine | games | group

less

Transcript and Presenter's Notes

Title: Crowd Dynamics AI Engine w/ PSO


1
Crowd Dynamics AI Engine w/ PSO
  • By Keith Ainsworth
  • Pd. 5

2
Crowd Dynamics AI in C
  • Using a game for demonstration
  • C with Object Oriented Programming
  • SDL for graphical Display (might become OpenGL)

3
The AI
  • Crowd Dynamics
  • Simulates the motion, movement, behavior of
    groups
  • Conventional games do it individually
  • Simple example A group of people finding a
    target
  • Particle Swarm Optimization

4
PSO
  • A method to optimize the behavior of swarms
  • Conventionally used in anthill simulations
  • This only optimizes half of my AI engine
  • Optimizes the movement calculations
  • Does not optimize the communication aspect

5
Current Class Structure
PNetwork
World
Person
weight_list
6
weight_list
  • Looping, array-based, fixed-size container
  • 2 lists, one for data, one for weighting in
    summation
  • Summation functions, which return the average
    value of the list (taking weighting into
    consideration)
  • Used by the PNetwork to pick a direction for a
    person to travel after receiving a bunch of tips
    from the other people

7
Pnetwork
  • Instantiated with a list of people as the group
  • Each time the step() method is called it
  • Calls the communicator method of each person
  • Adds them all into a weight_list for each person
    (differentiated by the weightings given)
  • Instructs the persons to travel in the direction
    of the summation of their weight_list

8
Simulation
  • Shows Regular Simulation

9
Subclassing Structure
  • Program Built around base libraries which can be
    subclassed
  • Classes include
  • World (subclass ngon_world)
  • Std_Person (subclasstheta_person, subclass of
    person)

10
ngon and ngon_world
  • ngon is a class that essentially stores a polygon
    of n sides through the boundary points
  • Can be concave, convex, even internally
    intersecting
  • ngon_world is a subclass of world, which
    maintains the global variables to the
    simulation
  • The subclass allows for obstructions in sight and
    movement of agents in the form of ngons

11
R_Limit.hpp
  • The simulation wasnt regular in its behavior in
    human/computer interaction
  • Different computers Different Difficulties
  • This is a rate limiting library
  • Utilizes time.h system functions for maximum
    portability and accuracy
  • Two methods, queue() and hold(). Queue is called
    before the frames codes, hold is called at the
    end and holds if necessary to maintain a rate.
  • Slows a simulation to a rate but cannot speed it
    up to a rate it isnt maintaining.

12
ngon_world
Write a Comment
User Comments (0)
About PowerShow.com