Founda'ons of Game AI

Size: px
Start display at page:

Download "Founda'ons of Game AI"

Transcription

1 Founda'ons of Game AI Level 3 Basic Movement Prof Alexiei Dingli

2 2D Movement

3 2D Movement

4 2D Movement

5 2D Movement

6 2D Movement

7 Movement Character considered as a point 3 Axis (x,y,z) Y (Up) Z X

8 Character Movement

9 2D vs. 3D 3D calcula'ons can be complex Go for 2½ D which is much simpler Similar to 3D The 3 rd dimension is constrained (because of gravity which is found in most games) Orienta'on is considered as a single value (like 2D) Thus offering 4 degrees of freedom

10 Kinema'cs Character moving in one direc'on cannot change it instantly Algorithms have to consider velocity Change velocity slightly to get smooth mo'on Sir Isaac Newton

11 Facing the right direc'on Characters must face the direc'on they re moving But this has to happen gradually

12 Basic Chase Algorithm if (predatorx > preyx) predatorx- - ; else if (predatorx < preyx) predatorx++; if (predatory > preyy) predatory- - ; else if (predatory < preyy) predatory++;

13 Basic Evade Algorithm if (preyx > predatorx) preyx++; else if (preyx < predatorx) preyx- - ; if (preyy > predatory) preyy++; else if (preyy < predatory) preyy- - ;

14 Basic Chase & Evade Algorithm

15 Straight Line Chasing Predators should move directly towards prey But if prey is moving, path needs not be a straight line Path chosen is obviously more natural

16 Bresenham Line Algorithm Determines a close approxima'on to a straight line between two given points It uses only integer addi'on, subtrac'on and bit shi`ing thus being very cheap

17 Bresenham Line Algorithm func0on line(x0, x1, y0, y1) int deltax := x1 - x0 int deltay := y1 - y0 real error := 0 real deltaerr := abs (deltay / deltax) // Assume deltax!= 0 (line is not ver'cal), int y := y0 for x from x0 to x1 plot(x,y) error := error + deltaerr if error 0.5 then y := y + 1 error := error - 1.0

18 Bresenham Line Algorithm Walkthrough deltax = 2 10 = - 8 deltay = 2 6 = - 4 deltaerr := abs (- 4 / - 8) = 0.5 for x from x0 to x1 plot(2,2) error := error if then y := y + 1 error := error - 1.0

19 Straight Line Chasing in Con'nuous Environments Steering force Thrust force Steering force

20 Straight Line Chasing in Con'nuous Environments Prey Path Predator Path

21 If the speed of the predator is set too fast? Predator Path Prey Path

22 Fleeing Since we now understand chasing, Fleeing is just doing everything the reverse Update movement in opposite direc'on Looking at rota'on should steer to opposite face

23 Seeking Vs. Arriving

24 Seek and Flee

25 Further improvements? Accelera'on (and decelera'on) for thrust force and steering force? Any way to improve intelligence of chasing movement?

26 Intercep'on NPC will always head in a straight line towards the player What happens if the target is moving?

27 Intercep'on Movement can be more intelligent, if it knows how to intercept the player somewhere along the player s trajectory How do we work this out? What informa'on do we need?

28 Intercep'on Predict some future posi'on of the player and move towards that posi'on, so that it reaches the same 'me as player

29 Intercep'on Future can be safely predicted linearly Important to consider rela've veloci0es (direc'on and magnitude) and distance instead of just their current posi'ons

30 Intercep'on There are scenarios where intercep'ng may not be possible or unrealis'c NPC moving at much slower velocity NPC ends up chasing from behind a player moving in straight line NPC gets ahead of player and moving at a faster speed

31 Nature inspired Movements

32 Nature inspired Movements

33 Nature inspired Movements

34 Nature inspired Movements

35 Swarm Intelligence Any asempt to design algorithms or distributed problem- solving devices inspired by the collec've behaviour of social insect colonies and other animal socie'es

36 Boids Created in 1987 Simulates a flock of birds Each boid is Independent Navigates on its own percep'on of the environment

37 Main Program ini'alise_posi'ons() LOOP draw_boids() move_all_boids_to_new_posi'ons() END LOOP

38 move_all_boids_to_new_posi'ons() PROCEDURE move_all_boids_to_new_posi'ons() Vector3d v1, v2, v3 Boid b FOR EACH BOID b v1 = rule1(b) v2 = rule2(b) v3 = rule3(b) END b.velocity = b.velocity + v1 + v2 + v3 b.posi'on = b.posi'on + b.velocity END PROCEDURE

39 Rules of Boids Based on simple vector opera'ons Each boid rule works independently Calculate how much the boid will get moved by each of the rules, giving different velocity vectors Add those vectors to the boid's current velocity to work out its new velocity.

40 Rules of Boids 1. Centre 2. Avoidance 3. Alignment or Copy

41 Steer to move towards the average posi'on of flockmates Centre Rule

42 Centre Rule PROCEDURE rule1(boid b J ) Vector3d pc J FOR EACH BOID b IF b!= b J THEN pc J = pc J + b.posi'on END IF END pc J = pc J / N- 1 RETURN (pc J - b J.posi'on) / 100 END PROCEDURE

43 Avoidance Rule Avoids collisions Acquire the unfilled space

44 Avoidance Rule PROCEDURE rule2(boid b J ) Vector3d c = 0; FOR EACH BOID b IF b!= b J THEN IF b.posi'on - b J.posi'on < 100 THEN c = c - (b.posi'on - b J.posi'on) END IF END IF END RETURN c END PROCEDURE

45 Alignment Rule Copy movements of neighbours by steering towards the average Match velocity

46 Alignment Rule PROCEDURE rule3(boid b J ) Vector3d pv J FOR EACH BOID b IF b!= b J THEN pv J = pv J + b.velocity END IF END pv J = pv J / N- 1 RETURN (pv J - b J.velocity) / 8 END PROCEDURE

47

48 Principles of Flocking Homogeneity Every bird has the same behaviour model Locality Mo'on is only influenced by its nearest flock mate Collision avoidance Velocity matching Flock Cantering Stay close to nearby flock mates

49 Exercise Can you implement flocking in Space Invaders?

50 Addi'onal Func'ons: Wind PROCEDURE strong_wind(boid b) Vector3d wind RETURN wind END PROCEDURE

51 Addi'onal Func'ons: Move to place PROCEDURE tend_to_place(boid b) Vector3d place RETURN (place - b.posi'on) / 100 END PROCEDURE

52 Addi'onal Func'on: Dispersing the flock v1 = - rule1(b)

53 S0gmergy the mechanism of indirect coordina'on between agents

54 Ants Agents S'gmergy can be opera'onal Coordina'on by indirect interac'on is more appealing than direct communica'on S'gmergy reduces (or eliminates) communica'ons between agents

55 Ant Behavior

56 Interrupt The Flow

57 The Path Thickens!

58 The New Shortest Path

59 Adap0ng to Environment Changes

60 Adap0ng to Environment Changes

61 Algorithm Condi0on Food Pheromone Trail Loca'on Ac0on Walk random, Lay pheromone Follow pheromone, Lay pheromone Home Turn around, follow pheromone Food Pickup food, follow pheromone opposite Follow pheromone, Lay pheromone Home Deposit food, Turn around, follow pheromone

62 Travelling Salesperson Problem Ini'alize Loop /* at this level each loop is called an itera0on */ Each ant is posi'oned on a star'ng node Loop /* at this level each loop is called a step */ Each ant applies a state transi'on rule to incrementally build a solu'on and a local pheromone upda'ng rule Un0l all ants have built a complete solu'on A global pheromone upda'ng rule is applied Un0l End_condi'on M. Dorigo, L. M. Gambardella : `p://iridia.ulb.ac.be/pub/mdorigo/journals/ij.16- TEC97.US.pdf Ant Colony System: A Cooperative Learning Approach to the Traveling Salesman Problem

63 Traveling Sales Ants

64 Ques'ons?

65 Homework Implement boids in Space Invaders and present them next 'me

Graphs, Search, Pathfinding (behavior involving where to go) Steering, Flocking, Formations (behavior involving how to go)

Graphs, Search, Pathfinding (behavior involving where to go) Steering, Flocking, Formations (behavior involving how to go) Graphs, Search, Pathfinding (behavior involving where to go) Steering, Flocking, Formations (behavior involving how to go) Class N-2 1. What are some benefits of path networks? 2. Cons of path networks?

More information

SWARM INTELLIGENCE -I

SWARM INTELLIGENCE -I SWARM INTELLIGENCE -I Swarm Intelligence Any attempt to design algorithms or distributed problem solving devices inspired by the collective behaviourof social insect colonies and other animal societies

More information

Under the Guidance of

Under the Guidance of Presented by Linga Venkatesh (10305085) Deepak Jayanth (10305913) Under the Guidance of Prof. Parag Chaudhuri Flocking/Swarming/Schooling Nature Phenomenon Collective Behaviour by animals of same size

More information

Traffic/Flocking/Crowd AI. Gregory Miranda

Traffic/Flocking/Crowd AI. Gregory Miranda Traffic/Flocking/Crowd AI Gregory Miranda Introduction What is Flocking? Coordinated animal motion such as bird flocks and fish schools Initially described by Craig Reynolds Created boids in 1986, generic

More information

PARTICLE SWARM OPTIMIZATION (PSO)

PARTICLE SWARM OPTIMIZATION (PSO) PARTICLE SWARM OPTIMIZATION (PSO) J. Kennedy and R. Eberhart, Particle Swarm Optimization. Proceedings of the Fourth IEEE Int. Conference on Neural Networks, 1995. A population based optimization technique

More information

Decentralized K-Means Clustering with Emergent Computing

Decentralized K-Means Clustering with Emergent Computing Decentralized K-Means Clustering with Emergent Computing Ryan McCune & Greg Madey University of Notre Dame, Computer Science & Engineering Spring Simula?on Mul?- Conference 2014, Tampa, FL Student Colloquium

More information

Chapter 9 Introduction

Chapter 9 Introduction Chapter 9 Introduction 9.1 Historical Remarks 9.2 The Principles of Guidance, Naviga@on and Control 9.3 Setpoint Regula@on, Trajectory- Tracking and Path- Following 9.4 Control of Underactuated and Fully

More information

CS 387/680: GAME AI MOVEMENT

CS 387/680: GAME AI MOVEMENT CS 387/680: GAME AI MOVEMENT 4/5/2016 Instructor: Santiago Ontañón santi@cs.drexel.edu Class website: https://www.cs.drexel.edu/~santi/teaching/2016/cs387/intro.html Reminders Check Blackboard site for

More information

Introduction to Multi-Agent Programming

Introduction to Multi-Agent Programming Introduction to Multi-Agent Programming 12. Swarm Intelligence Flocking, Foraging, Ant Systems, TSP solving Alexander Kleiner, Bernhard Nebel Contents Introduction Swarming & Flocking Foraging strategies

More information

Swarm Intelligence Particle Swarm Optimization. Erick Luerken 13.Feb.2006 CS 790R, University of Nevada, Reno

Swarm Intelligence Particle Swarm Optimization. Erick Luerken 13.Feb.2006 CS 790R, University of Nevada, Reno Swarm Intelligence Particle Swarm Optimization Erick Luerken 13.Feb.2006 CS 790R, University of Nevada, Reno Motivation Discuss assigned literature in terms of complexity leading to actual applications

More information

Kyrre Glette INF3490 Evolvable Hardware Cartesian Genetic Programming

Kyrre Glette INF3490 Evolvable Hardware Cartesian Genetic Programming Kyrre Glette kyrrehg@ifi INF3490 Evolvable Hardware Cartesian Genetic Programming Overview Introduction to Evolvable Hardware (EHW) Cartesian Genetic Programming Applications of EHW 3 Evolvable Hardware

More information

AI Tutorial 2: Path-Finding and Crowd Management

AI Tutorial 2: Path-Finding and Crowd Management AI Tutorial 2: Path-Finding and Crowd Management Summary The concept of optimal-path calculation for a node graph is introduced and explained. This concept is mapped to the area of game navigation, and

More information

intelligence in animals smartness through interaction

intelligence in animals smartness through interaction intelligence in animals smartness through interaction overview inspired by nature inspiration, model, application, implementation features of swarm intelligence self organisation characteristics requirements

More information

Ant Colony Optimization for dynamic Traveling Salesman Problems

Ant Colony Optimization for dynamic Traveling Salesman Problems Ant Colony Optimization for dynamic Traveling Salesman Problems Carlos A. Silva and Thomas A. Runkler Siemens AG, Corporate Technology Information and Communications, CT IC 4 81730 Munich - Germany thomas.runkler@siemens.com

More information

Direction Maps for Cooperative Pathfinding

Direction Maps for Cooperative Pathfinding Direction Maps for Cooperative Pathfinding M. Renee Jansen and Nathan R. Sturtevant Department of Computing Science, University of Alberta, Edmonton, Alberta, Canada T6G 2E8 {maaike, nathanst}@cs.ualberta.ca

More information

Non-Homogeneous Swarms vs. MDP s A Comparison of Path Finding Under Uncertainty

Non-Homogeneous Swarms vs. MDP s A Comparison of Path Finding Under Uncertainty Non-Homogeneous Swarms vs. MDP s A Comparison of Path Finding Under Uncertainty Michael Comstock December 6, 2012 1 Introduction This paper presents a comparison of two different machine learning systems

More information

CS 480: GAME AI STEERING BEHAVIORS. 4/12/2012 Santiago Ontañón

CS 480: GAME AI STEERING BEHAVIORS. 4/12/2012 Santiago Ontañón CS 480: GAME AI STEERING BEHAVIORS 4/12/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.html Reminders Check BBVista site for the course regularly Also:

More information

Ant Colony Optimization: The Traveling Salesman Problem

Ant Colony Optimization: The Traveling Salesman Problem Ant Colony Optimization: The Traveling Salesman Problem Section 2.3 from Swarm Intelligence: From Natural to Artificial Systems by Bonabeau, Dorigo, and Theraulaz Andrew Compton Ian Rogers 12/4/2006 Traveling

More information

Rasteriza2on and Clipping

Rasteriza2on and Clipping Overview Scan conversion Computer Graphics Rasterizaon and Clipping Polygon filling Clipping in D Aleksandra Pizurica Raster Display PIEL (picture element) RASTER (a rectangular array of points or dots)

More information

LECTURE 16: SWARM INTELLIGENCE 2 / PARTICLE SWARM OPTIMIZATION 2

LECTURE 16: SWARM INTELLIGENCE 2 / PARTICLE SWARM OPTIMIZATION 2 15-382 COLLECTIVE INTELLIGENCE - S18 LECTURE 16: SWARM INTELLIGENCE 2 / PARTICLE SWARM OPTIMIZATION 2 INSTRUCTOR: GIANNI A. DI CARO BACKGROUND: REYNOLDS BOIDS Reynolds created a model of coordinated animal

More information

A formal design process, part 2

A formal design process, part 2 Principles of So3ware Construc9on: Objects, Design, and Concurrency Designing (sub-) systems A formal design process, part 2 Josh Bloch Charlie Garrod School of Computer Science 1 Administrivia Midterm

More information

Scalability of a parallel implementation of ant colony optimization

Scalability of a parallel implementation of ant colony optimization SEMINAR PAPER at the University of Applied Sciences Technikum Wien Game Engineering and Simulation Scalability of a parallel implementation of ant colony optimization by Emanuel Plochberger,BSc 3481, Fels

More information

Disks: Structure and Scheduling

Disks: Structure and Scheduling Disks: Structure and Scheduling COMS W4118 References: Opera;ng Systems Concepts (9e), Linux Kernel Development, previous W4118s Copyright no2ce: care has been taken to use only those web images deemed

More information

Crowd simulation. Taku Komura

Crowd simulation. Taku Komura Crowd simulation Taku Komura Animating Crowds We have been going through methods to simulate individual characters What if we want to simulate the movement of crowds? Pedestrians in the streets Flock of

More information

3D Digital Design. SketchUp

3D Digital Design. SketchUp 3D Digital Design SketchUp 1 Overview of 3D Digital Design Skills A few basic skills in a design program will go a long way: 1. Orien

More information

Ar#ficial Intelligence

Ar#ficial Intelligence Ar#ficial Intelligence Advanced Searching Prof Alexiei Dingli Gene#c Algorithms Charles Darwin Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for

More information

Design Principles & Prac4ces

Design Principles & Prac4ces Design Principles & Prac4ces Robert France Robert B. France 1 Understanding complexity Accidental versus Essen4al complexity Essen%al complexity: Complexity that is inherent in the problem or the solu4on

More information

Automatic Programming with Ant Colony Optimization

Automatic Programming with Ant Colony Optimization Automatic Programming with Ant Colony Optimization Jennifer Green University of Kent jg9@kent.ac.uk Jacqueline L. Whalley University of Kent J.L.Whalley@kent.ac.uk Colin G. Johnson University of Kent C.G.Johnson@kent.ac.uk

More information

MATH 209, Lab 5. Richard M. Slevinsky

MATH 209, Lab 5. Richard M. Slevinsky MATH 209, Lab 5 Richard M. Slevinsky Problems 1. Say the temperature T at any point (x, y, z) in space is given by T = 4 x y z 2. Find the hottest point on the sphere F = x 2 + y 2 + z 2 100 = 0; We equate

More information

The Drone War Fall 2012 COMS George Brink Shuo Qiu Xiaotong Chen Xiang Yao

The Drone War Fall 2012 COMS George Brink Shuo Qiu Xiaotong Chen Xiang Yao Fall 2012 COMS 4115 George Brink Shuo Qiu Xiaotong Chen Xiang Yao A stack- based Impera@ve language Applied to designed game Simple Interes@ng Powerful Mo@va@on Simple enough to be understood by users

More information

Simulating Flocking Behaviors in Complex Enviroments

Simulating Flocking Behaviors in Complex Enviroments Simulating Flocking Behaviors in Complex Enviroments O. Burchan Bayazit Jyh-Ming Lien Nancy M. Amato Department of Computer Science Texas A&M University {burchanb,neilien,amato}@cs.tamu.edu Abstract Flocking

More information

Roadmap-Based Flocking for Complex Environments

Roadmap-Based Flocking for Complex Environments Roadmap-Based Flocking for Complex Environments O. Burchan Bayazit Texas A&M University burchanb@cs.tamu.edu Jyh-Ming Lien Texas A&M University neilien@cs.tamu.edu Nancy M. Amato Texas A&M University amato@cs.tamu.edu

More information

Self-Organization Swarm Intelligence

Self-Organization Swarm Intelligence Self-Organization Swarm Intelligence Winter Semester 2010/11 Integrated Communication Systems Group Ilmenau University of Technology Motivation for Self-Organization Problem of today s networks Heterogeneity

More information

Tangent Line equa,on. Simple Examtype

Tangent Line equa,on. Simple Examtype Tangent Line equa,on Find the equa,on of the tangent line to the graph of the func,on y=5x 2 at the point x=1. Where does the tangent line intersect the x axis? Simple Examtype ques,on Finished fast? Find

More information

An Efficient Analysis for High Dimensional Dataset Using K-Means Hybridization with Ant Colony Optimization Algorithm

An Efficient Analysis for High Dimensional Dataset Using K-Means Hybridization with Ant Colony Optimization Algorithm An Efficient Analysis for High Dimensional Dataset Using K-Means Hybridization with Ant Colony Optimization Algorithm Prabha S. 1, Arun Prabha K. 2 1 Research Scholar, Department of Computer Science, Vellalar

More information

Methods (part b) Alice In Ac5on, Ch 2

Methods (part b) Alice In Ac5on, Ch 2 CS 101 Lecture 22 Methods (part b) Alice In Ac5on, Ch 2 Slides Credit: Joel Adams, Alice in Action With thanks to John Magee for guidance with this material Objec5ves Build class- level methods to elicit

More information

Design and Debug: Essen.al Concepts Numerical Conversions CS 16: Solving Problems with Computers Lecture #7

Design and Debug: Essen.al Concepts Numerical Conversions CS 16: Solving Problems with Computers Lecture #7 Design and Debug: Essen.al Concepts Numerical Conversions CS 16: Solving Problems with Computers Lecture #7 Ziad Matni Dept. of Computer Science, UCSB Announcements We are grading your midterms this week!

More information

STEERING BEHAVIORS. Markéta Popelová, marketa.popelova [zavináč] matfyz.cz. 2012, Umělé Bytosti, MFF UK

STEERING BEHAVIORS. Markéta Popelová, marketa.popelova [zavináč] matfyz.cz. 2012, Umělé Bytosti, MFF UK STEERING BEHAVIORS Markéta Popelová, marketa.popelova [zavináč] matfyz.cz 2012, Umělé Bytosti, MFF UK MOTIVATION MOTIVATION REQUIREMENTS FOR MOTION CONTROL Responding to dynamic environment Avoiding obstacles

More information

Swarm Intelligence (Ant Colony Optimization)

Swarm Intelligence (Ant Colony Optimization) (Ant Colony Optimization) Prof. Dr.-Ing. Habil Andreas Mitschele-Thiel M.Sc.-Inf Mohamed Kalil 19 November 2009 1 Course description Introduction Course overview Concepts of System Engineering Swarm Intelligence

More information

CS 231. Crowd Simulation. Outline. Introduction to Crowd Simulation. Flocking Social Forces 2D Cellular Automaton Continuum Crowds

CS 231. Crowd Simulation. Outline. Introduction to Crowd Simulation. Flocking Social Forces 2D Cellular Automaton Continuum Crowds CS 231 Crowd Simulation Outline Introduction to Crowd Simulation Fields of Study & Applications Visualization vs. Realism Microscopic vs. Macroscopic Flocking Social Forces 2D Cellular Automaton Continuum

More information

SWARMING PIXEL TRACKER

SWARMING PIXEL TRACKER SWARMING PIXEL TRACKER B.Tech Project submitted by Parth Kanungo Computers and Communication Engineering, The LNM Institute of Information Technology, Jaipur 2011 CERTIFICATE It is certified that the work

More information

DM842 Computer Game Programming: AI. Lecture 3. Movement Behaviors. Marco Chiarandini

DM842 Computer Game Programming: AI. Lecture 3. Movement Behaviors. Marco Chiarandini DM842 Computer Game Programming: AI Lecture 3 Movement Behaviors Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. Combined Steering Blending Priorities

More information

Modelling and recreating complex, natural flocking and predatory behaviour using a limited rule set. BSc (Hons.) in Computer Science

Modelling and recreating complex, natural flocking and predatory behaviour using a limited rule set. BSc (Hons.) in Computer Science Modelling and recreating complex, natural flocking and predatory behaviour using a limited rule set. BSc (Hons.) in Computer Science Samuele Pavone 2004 Modelling and recreating complex, natural flocking

More information

Collision Avoidance with Unity3d

Collision Avoidance with Unity3d Collision Avoidance with Unity3d Jassiem Ifill September 12, 2013 Abstract The primary goal of the research presented in this paper is to achieve natural crowd simulation and collision avoidance within

More information

Today s Class. High Dimensional Data & Dimensionality Reduc8on. Readings for This Week: Today s Class. Scien8fic Data. Misc. Personal Data 2/22/12

Today s Class. High Dimensional Data & Dimensionality Reduc8on. Readings for This Week: Today s Class. Scien8fic Data. Misc. Personal Data 2/22/12 High Dimensional Data & Dimensionality Reduc8on Readings for This Week: Graphical Histories for Visualiza8on: Suppor8ng Analysis, Communica8on, and Evalua8on, Jeffrey Heer, Jock D. Mackinlay, Chris Stolte,

More information

Objec0ves. Gain understanding of what IDA Pro is and what it can do. Expose students to the tool GUI

Objec0ves. Gain understanding of what IDA Pro is and what it can do. Expose students to the tool GUI Intro to IDA Pro 31/15 Objec0ves Gain understanding of what IDA Pro is and what it can do Expose students to the tool GUI Discuss some of the important func

More information

CS 354 R Game Technology

CS 354 R Game Technology CS 354 R Game Technology Particles and Flocking Behavior Fall 2017 Particle Effects 2 General Particle Systems Objects are considered point masses with orientation Simple rules control how the particles

More information

12 - More Steering. from Milligan, "Artificial Intelligence for Games", Morgan Kaufman, 2006

12 - More Steering. from Milligan, Artificial Intelligence for Games, Morgan Kaufman, 2006 12 - More Steering from Milligan, "Artificial Intelligence for Games", Morgan Kaufman, 2006 Separation commonly used in crowds, when all characters moving in roughly the same direction (repulsion steering)

More information

ANT COLONY OPTIMIZED ROUTING FOR MOBILE ADHOC NETWORKS (MANET)

ANT COLONY OPTIMIZED ROUTING FOR MOBILE ADHOC NETWORKS (MANET) ANT COLONY OPTIMIZED ROUTING FOR MOBILE ADHOC NETWORKS (MANET) DWEEPNA GARG 1 & PARTH GOHIL 2 1,2 Dept. Of Computer Science and Engineering, Babaria Institute of Technology, Varnama, Vadodara, India E-mail

More information

GENG2140 Lecture 4: Introduc4on to Excel spreadsheets. A/Prof Bruce Gardiner School of Computer Science and SoDware Engineering 2012

GENG2140 Lecture 4: Introduc4on to Excel spreadsheets. A/Prof Bruce Gardiner School of Computer Science and SoDware Engineering 2012 GENG2140 Lecture 4: Introduc4on to Excel spreadsheets A/Prof Bruce Gardiner School of Computer Science and SoDware Engineering 2012 Credits: Nick Spadaccini, Chris Thorne Introduc4on to spreadsheets Used

More information

Cluster Subgraphs Example, With Tile Graphs. Alternatives. Cluster Subgraphs. Cluster Subgraphs Example, With Tile Graphs

Cluster Subgraphs Example, With Tile Graphs. Alternatives. Cluster Subgraphs. Cluster Subgraphs Example, With Tile Graphs Alternatives Cluster Subgraphs Example, With Tile Graphs Replace a cluster with a small subgraph instead of a single node. e.g. represent entry/exit points run path-finding on the abstract graph to find

More information

CS 378: Computer Game Technology

CS 378: Computer Game Technology CS 378: Computer Game Technology Dynamic Path Planning, Flocking Spring 2012 University of Texas at Austin CS 378 Game Technology Don Fussell Dynamic Path Planning! What happens when the environment changes

More information

IMPLEMENTATION OF ACO ALGORITHM FOR EDGE DETECTION AND SORTING SALESMAN PROBLEM

IMPLEMENTATION OF ACO ALGORITHM FOR EDGE DETECTION AND SORTING SALESMAN PROBLEM IMPLEMENTATION OF ACO ALGORITHM FOR EDGE DETECTION AND SORTING SALESMAN PROBLEM Er. Priya Darshni Assiociate Prof. ECE Deptt. Ludhiana Chandigarh highway Ludhiana College Of Engg. And Technology Katani

More information

Steering 1. from Millington, "Artificial Intelligence for Games", MKP 2006.

Steering 1. from Millington, Artificial Intelligence for Games, MKP 2006. Steering 1 from Millington, "Artificial Intelligence for Games", MKP 2006. Movement Algorithms kinematic movement computes a velocity for the object based on current position no acceleration dynamic movement

More information

ECE 634: Digital Video Systems Mo7on models: 1/19/17

ECE 634: Digital Video Systems Mo7on models: 1/19/17 ECE 634: Digital Video Systems Mo7on models: 1/19/17 Professor Amy Reibman MSEE 356 reibman@purdue.edu hip://engineering.purdue.edu/~reibman/ece634/index.html Outline Today: Mo7on models for mo7on es7ma7on

More information

UTILIZING SWARM INTELLIGENCE ALGORITHMS FOR PATHFINDING IN GAMES

UTILIZING SWARM INTELLIGENCE ALGORITHMS FOR PATHFINDING IN GAMES Malskapada v Henrik UTILIZING SWARM INTELLIGENCE ALGORITHMS FOR PATHFINDING IN GAMES Bachelor Degree Project in Informatics 30 ECTS Spring term 2017 Alexander Kelman Supervisor: Mikael Thieme Examiner:

More information

Ant Algorithms. Simulated Ant Colonies for Optimization Problems. Daniel Bauer July 6, 2006

Ant Algorithms. Simulated Ant Colonies for Optimization Problems. Daniel Bauer July 6, 2006 Simulated Ant Colonies for Optimization Problems July 6, 2006 Topics 1 Real Ant Colonies Behaviour of Real Ants Pheromones 2 3 Behaviour of Real Ants Pheromones Introduction Observation: Ants living in

More information

ARTIFICIAL INTELLIGENCE (CSCU9YE ) LECTURE 5: EVOLUTIONARY ALGORITHMS

ARTIFICIAL INTELLIGENCE (CSCU9YE ) LECTURE 5: EVOLUTIONARY ALGORITHMS ARTIFICIAL INTELLIGENCE (CSCU9YE ) LECTURE 5: EVOLUTIONARY ALGORITHMS Gabriela Ochoa http://www.cs.stir.ac.uk/~goc/ OUTLINE Optimisation problems Optimisation & search Two Examples The knapsack problem

More information

Solu%on: locks. Every object has a lock associated with it. A lock can be owned by at most one thread.

Solu%on: locks. Every object has a lock associated with it. A lock can be owned by at most one thread. Solu%on: locks Every object has a lock associated with it. Some%mes called an intrinsic lock or monitor lock. Note: separate locks for each instance! A lock can be owned by at most one thread. Some%mes

More information

When using Flocking with network rendering (LWSN, for instance) you must bake your Flocking results.

When using Flocking with network rendering (LWSN, for instance) you must bake your Flocking results. Flocking About Flocking LightWave s flocking system is based on 3D computer models of coordinated animal motion, things like flocks of birds, herds of animals or schools of fish. It can be used with LightWave

More information

Distribu(on System Coordina(on Using. Jim Cross, PE Planning Engineer Homer Electric Associa(on, Inc. Kenai, AK. WindMil / Light Table

Distribu(on System Coordina(on Using. Jim Cross, PE Planning Engineer Homer Electric Associa(on, Inc. Kenai, AK. WindMil / Light Table Distribu(on System Coordina(on Using Jim Cross, PE Planning Engineer Homer Electric Associa(on, Inc. Kenai, AK WindMil / Light Table Outline Define topic What can WindMil do? What can LightTable do? What

More information

CS475m - Computer Graphics. Lecture 1 : Rasterization Basics

CS475m - Computer Graphics. Lecture 1 : Rasterization Basics CS475m - Computer Graphics Lecture 1 : Rasterization Basics Image Formation Light Source Camera Image World Image Formation Light Source Incident Ray Camera Reflected Ray Image World Transmitted Ray Image

More information

Technical Game Development II. [using materials provided by Mark Claypool] IMGD 4000 (D 08) 1. What is game physics and why is it important?

Technical Game Development II. [using materials provided by Mark Claypool] IMGD 4000 (D 08) 1. What is game physics and why is it important? Basic Game Physics Technical Game Development II Professor Charles Rich Computer Science Department rich@wpi.edu [using materials provided by Mark Claypool] IMGD 4000 (D 08) 1 Introduction What is game

More information

Particle Systems. Typical Time Step. Particle Generation. Controlling Groups of Objects: Particle Systems. Flocks and Schools

Particle Systems. Typical Time Step. Particle Generation. Controlling Groups of Objects: Particle Systems. Flocks and Schools Particle Systems Controlling Groups of Objects: Particle Systems Flocks and Schools A complex, fuzzy system represented by a large collection of individual elements. Each element has simple behavior and

More information

Collision Avoidance for Preplanned Locomotion

Collision Avoidance for Preplanned Locomotion 22 Collision Avoidance for Preplanned Locomotion Bobby Anguelov 22.1 Introduction 22.2 Collision Avoidance for Preplanned Locomotion 22.3 Collision Detection and Trivial Collision Resolution 22.4 Nontrivial

More information

Algorithms Lecture 11. UC Davis, ECS20, Winter Discrete Mathematics for Computer Science

Algorithms Lecture 11. UC Davis, ECS20, Winter Discrete Mathematics for Computer Science UC Davis, ECS20, Winter 2017 Discrete Mathematics for Computer Science Prof. Raissa D Souza (slides adopted from Michael Frank and Haluk Bingöl) Lecture 11 Algorithms 3.1-3.2 Algorithms Member of the House

More information

CS 188: Ar)ficial Intelligence

CS 188: Ar)ficial Intelligence CS 188: Ar)ficial Intelligence Search Instructors: Pieter Abbeel & Anca Dragan University of California, Berkeley [These slides were created by Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley

More information

Solving a combinatorial problem using a local optimization in ant based system

Solving a combinatorial problem using a local optimization in ant based system Solving a combinatorial problem using a local optimization in ant based system C-M.Pintea and D.Dumitrescu Babeş-Bolyai University of Cluj-Napoca, Department of Computer-Science Kogalniceanu 1, 400084

More information

Intuitionistic Fuzzy Estimations of the Ant Colony Optimization

Intuitionistic Fuzzy Estimations of the Ant Colony Optimization Intuitionistic Fuzzy Estimations of the Ant Colony Optimization Stefka Fidanova, Krasimir Atanasov and Pencho Marinov IPP BAS, Acad. G. Bonchev str. bl.25a, 1113 Sofia, Bulgaria {stefka,pencho}@parallel.bas.bg

More information

Laboratory Exercise 8

Laboratory Exercise 8 Laboratory Exercise 8 Introduction to Graphics and Animation The purpose of this exercise is to learn how to display images and perform animation. We will use the Nios II processor, in the pre-build DE-series

More information

CSE 473: Ar+ficial Intelligence

CSE 473: Ar+ficial Intelligence CSE 473: Ar+ficial Intelligence Search Instructor: Luke Ze=lemoyer University of Washington [These slides were adapted from Dan Klein and Pieter Abbeel for CS188 Intro to AI at UC Berkeley. All CS188 materials

More information

International Journal of Modern Trends in Engineering and Research e-issn No.: , Date: 2-4 July, 2015

International Journal of Modern Trends in Engineering and Research   e-issn No.: , Date: 2-4 July, 2015 International Journal of Modern Trends in Engineering and Research www.ijmter.com e-issn No.:2349-9745, Date: 2-4 July, 2015 A Novel Method for Edge Detection of a Color Image with ACO algorithm in Swarm

More information

An Ant Colony Optimization Algorithm for Solving Travelling Salesman Problem

An Ant Colony Optimization Algorithm for Solving Travelling Salesman Problem 1 An Ant Colony Optimization Algorithm for Solving Travelling Salesman Problem Krishna H. Hingrajiya, Ravindra Kumar Gupta, Gajendra Singh Chandel University of Rajiv Gandhi Proudyogiki Vishwavidyalaya,

More information

Navigation Mesh based Pathfinding for large crowds

Navigation Mesh based Pathfinding for large crowds Navigation Mesh based Pathfinding for large crowds Robert Lindner Introduction This paper is about methods that can be used to get as much performance as possible while simulating the pathfinding of large

More information

Master s Thesis. Animal Stampede Simulation

Master s Thesis. Animal Stampede Simulation Master s Thesis Animal Stampede Simulation Akila Lakshminarayanan Brian Tran MSc Computer Animation and Visual Effects, NCCA 2011-2012 Abstract Large crowd scenes with humans and animals are abundant in

More information

hashfs Applying Hashing to Op2mize File Systems for Small File Reads

hashfs Applying Hashing to Op2mize File Systems for Small File Reads hashfs Applying Hashing to Op2mize File Systems for Small File Reads Paul Lensing, Dirk Meister, André Brinkmann Paderborn Center for Parallel Compu2ng University of Paderborn Mo2va2on and Problem Design

More information

NORMALIZATION OF ACO ALGORITHM PARAMETERS

NORMALIZATION OF ACO ALGORITHM PARAMETERS U.P.B. Sci. Bull., Series C, Vol. 79, Iss. 2, 2017 ISSN 2286-3540 NORMALIZATION OF ACO ALGORITHM PARAMETERS Alina E. NEGULESCU 1 Due to the fact that Swarm Systems algorithms have been determined to be

More information

Modeling and Rendering

Modeling and Rendering Modeling and Rendering Prelude: The Poin2ng Problem 2D screen and mouse input, 3D world Keyboard Object snaps Construc2on planes Explicit planes (including primary axes) Implicit planes (exis2ng geometry

More information

An OMNeT++ based Framework for Mobility-aware Routing in Mobile Robotic Networks

An OMNeT++ based Framework for Mobility-aware Routing in Mobile Robotic Networks OMNeT++ Community Summit 2016 An OMNeT++ based Framework for Mobility-aware Routing in Mobile Robotic Networks Benjamin Sliwa, Christoph Ide and Christian Wietfeld September 16, 2016 Faculty of Electrical

More information

Condi(onals and Loops

Condi(onals and Loops Condi(onals and Loops 1 Review Primi(ve Data Types & Variables int, long float, double boolean char String Mathema(cal operators: + - * / % Comparison: < > = == 2 A Founda(on for Programming any program

More information

STEERING BEHAVIORS MOTIVATION REQUIREMENTS FOR MOTION CONTROL MOTIVATION BOIDS & FLOCKING MODEL STEERING BEHAVIORS - BASICS

STEERING BEHAVIORS MOTIVATION REQUIREMENTS FOR MOTION CONTROL MOTIVATION BOIDS & FLOCKING MODEL STEERING BEHAVIORS - BASICS Přednáška byla podpořena v rámci projektu OPPA CZ.2.17/3.1.00/33274 financovaného Evropským sociálním fondem a rozpočtem hlavního města Prahy. Evropský sociální fond Praha & EU: investujeme do Vaší budoucnosti

More information

CS 61C: Great Ideas in Computer Architecture. MIPS Instruc,on Representa,on II. Dan Garcia

CS 61C: Great Ideas in Computer Architecture. MIPS Instruc,on Representa,on II. Dan Garcia CS 61C: Great Ideas in Computer Architecture MIPS Instruc,on Representa,on II Dan Garcia 1 Review of Last Lecture Simplifying MIPS: Define instruc?ons to be same size as data word (one word) so that they

More information

Modeling and Simulating Social Systems with MATLAB

Modeling and Simulating Social Systems with MATLAB Modeling and Simulating Social Systems with MATLAB Lecture 7 Game Theory / Agent-Based Modeling Stefano Balietti, Olivia Woolley, Lloyd Sanders, Dirk Helbing Computational Social Science ETH Zürich 02-11-2015

More information

Decision making for autonomous naviga2on. Anoop Aroor Advisor: Susan Epstein CUNY Graduate Center, Computer science

Decision making for autonomous naviga2on. Anoop Aroor Advisor: Susan Epstein CUNY Graduate Center, Computer science Decision making for autonomous naviga2on Anoop Aroor Advisor: Susan Epstein CUNY Graduate Center, Computer science Overview Naviga2on and Mobile robots Decision- making techniques for naviga2on Building

More information

Manipula0on Algorithms Mo0on Planning. Mo#on Planning I. Katharina Muelling (NREC, Carnegie Mellon University) 1

Manipula0on Algorithms Mo0on Planning. Mo#on Planning I. Katharina Muelling (NREC, Carnegie Mellon University) 1 16-843 Manipula0on Algorithms Mo0on Planning Mo#on Planning I Katharina Muelling (NREC, Carnegie Mellon University) 1 Configura0on Space Obstacles Star Algorithm Convex robot, transla#on C obs : convex

More information

International Journal of Computer Engineering and Applications, Volume XII, Special Issue, August 18, ISSN

International Journal of Computer Engineering and Applications, Volume XII, Special Issue, August 18,   ISSN International Journal Computer Engineering and Applications, INTELLIGENT ROUTING BASED ON ACO TECHNIQUE F FAULT RING IN 2D-MESHES Gaytri Kumari Gupta research sclar, Jharkhand Rai University, Ranchi-India

More information

Motion Planning for Robot Manipulators

Motion Planning for Robot Manipulators Motion Planning for Robot Manipulators Manuel Bonilla PhD Student manuel.bonilla@centropiaggio.unipi.it 26/05/15 http://manuel-bonilla.com 1 1. What is the interesting part of Motion planning in Robotics

More information

Main Points. File systems. Storage hardware characteris7cs. File system usage Useful abstrac7ons on top of physical devices

Main Points. File systems. Storage hardware characteris7cs. File system usage Useful abstrac7ons on top of physical devices Storage Systems Main Points File systems Useful abstrac7ons on top of physical devices Storage hardware characteris7cs Disks and flash memory File system usage pa@erns File System Abstrac7on File system

More information

Laboratory Exercise 5

Laboratory Exercise 5 Laboratory Exercise 5 Using ASCII Graphics for Animation The purpose of this exercise is to learn how to perform simple animations under Linux. We will use the ARM A9 processor, in the DE1-SoC Computer.

More information

Classes and objects. Chapter 2: Head First Java: 2 nd Edi4on, K. Sierra, B. Bates

Classes and objects. Chapter 2: Head First Java: 2 nd Edi4on, K. Sierra, B. Bates Classes and objects Chapter 2: Head First Java: 2 nd Edi4on, K. Sierra, B. Bates Fundamentals of Computer Science Keith Vertanen Copyright 2013 A founda4on for programming any program you might want to

More information

Computer Graphics. 2D transformations. Transforma3ons in computer graphics. Overview. Basic classes of geometric transforma3ons

Computer Graphics. 2D transformations. Transforma3ons in computer graphics. Overview. Basic classes of geometric transforma3ons Transforma3ons in computer graphics omputer Graphics Transforma3ons leksandra Piurica Goal: introduce methodolog to hange coordinate sstem Move and deform objects Principle: transforma3ons are applied

More information

Solving the Traveling Salesman Problem using Reinforced Ant Colony Optimization techniques

Solving the Traveling Salesman Problem using Reinforced Ant Colony Optimization techniques Solving the Traveling Salesman Problem using Reinforced Ant Colony Optimization techniques N.N.Poddar 1, D. Kaur 2 1 Electrical Engineering and Computer Science, University of Toledo, Toledo, OH, USA 2

More information

Game Programming. Bing-Yu Chen National Taiwan University

Game Programming. Bing-Yu Chen National Taiwan University Game Programming Bing-Yu Chen National Taiwan University Game AI Search Path Finding Finite State Machines Steering Behavior 1 Search Blind search Breadth-first search Depth-first search Heuristic search

More information

CHAPTER 3 MULTI AGENT ROBOT CONTROL BASED ON TYPE-2 FUZZY AND ANT COLONY OPTIMIZATION

CHAPTER 3 MULTI AGENT ROBOT CONTROL BASED ON TYPE-2 FUZZY AND ANT COLONY OPTIMIZATION 41 CHAPTER 3 MULTI AGENT ROBOT CONTROL BASED ON TYPE-2 FUZZY AND ANT COLONY OPTIMIZATION 3.1 INTRODUCTION This chapter is to focus on an Agent based approach to Multi robot control using type -2 fuzzy

More information

Ant Colony Based Load Flow Optimisation Using Matlab

Ant Colony Based Load Flow Optimisation Using Matlab Ant Colony Based Load Flow Optimisation Using Matlab 1 Kapil Upamanyu, 2 Keshav Bansal, 3 Miteshwar Singh Department of Electrical Engineering Delhi Technological University, Shahbad Daulatpur, Main Bawana

More information

Principles of So3ware Construc9on. A formal design process, part 2

Principles of So3ware Construc9on. A formal design process, part 2 Principles of So3ware Construc9on Design (sub- )systems A formal design process, part 2 Josh Bloch Charlie Garrod School of Computer Science 1 Administrivia Midterm exam Thursday Review session Wednesday,

More information

BIL 682 Ar+ficial Intelligence Week #2: Solving problems by searching. Asst. Prof. Aykut Erdem Dept. of Computer Engineering HaceDepe University

BIL 682 Ar+ficial Intelligence Week #2: Solving problems by searching. Asst. Prof. Aykut Erdem Dept. of Computer Engineering HaceDepe University BIL 682 Ar+ficial Intelligence Week #2: Solving problems by searching Asst. Prof. Aykut Erdem Dept. of Computer Engineering HaceDepe University Today Search problems Uninformed search Informed (heuris+c)

More information

Game AI. Ming-Hwa Wang, Ph.D. COEN 396 Interactive Multimedia and Game Programming Department of Computer Engineering Santa Clara University

Game AI. Ming-Hwa Wang, Ph.D. COEN 396 Interactive Multimedia and Game Programming Department of Computer Engineering Santa Clara University Game AI Ming-Hwa Wang, Ph.D. COEN 396 Interactive Multimedia and Game Programming Department of Computer Engineering Santa Clara University Introduction to Game AI artificial intelligence strong AI : create

More information

MPI Performance Analysis Trace Analyzer and Collector

MPI Performance Analysis Trace Analyzer and Collector MPI Performance Analysis Trace Analyzer and Collector Berk ONAT İTÜ Bilişim Enstitüsü 19 Haziran 2012 Outline MPI Performance Analyzing Defini6ons: Profiling Defini6ons: Tracing Intel Trace Analyzer Lab:

More information

Scripting in Python Laborations and projects

Scripting in Python Laborations and projects Scripting in Python Laborations and projects 1 Introduction There are two possibilities for the scripting labs in the compiler course, either implementing a self-selected project or implementing the proposed

More information