SlideShare a Scribd company logo
1 of 120
A Fault tolerant, Parallelizable incremental
approach for real time environments
Steve Wilson
Overview:
What is a cellular automata
How it is related to other automata
What is path finding
Other approaches to pathfinding
Why a new method ?
The cellular approach
Pros and Cons of using cellular automata
Whatisacellularautomata:
Types of “automata”
Whatisacellularautomata:
Types of “automata” or “machines”
Whatisacellularautomata:
Types of automata
Finite state machine
Whatisacellularautomata:
Types of automata
Finite state machine
One or more states
Whatisacellularautomata:
Types of automata
Finite state machine
One or more states
Transition rules
Whatisacellularautomata:
Types of automata
Finite state machine
One or more states
Transition rules
Input
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
One or more states
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
One or more states
Transition rules
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
One or more states
Transition rules
Input
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
One or more states
Transition rules
Input
Stack
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Turing machine
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Turing machine
One or more states
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Turing machine
One or more states
Transition rules
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Turing machine
One or more states
Transition rules
Tape
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Turing machine
Cellular Automata
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Turing machine
Cellular Automata
Two or more states
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Turing machine
Cellular Automata
Two or more states
Transition rules
Whatisacellularautomata:
Types of automata
Finite state machine
Push down automata
Turing machine
Cellular Automata
Two or more states
Transition rules
Neighbor states
Whatisacellularautomata:
Basically
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Cells are connected by “edges”
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Grid
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Grid
Cells are arranged uniformly in a pattern
and connected spatially
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Grid
Subdivision
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Grid
Subdivision
Used extensively in modeling, cells are connected
spatially in a non-uniform manner
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Grid
Subdivision
Synchronized
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Grid
Subdivision
Synchronized
Cells update at the same time based on the previous
state
Whatisacellularautomata:
Basically a Cellular automata is a collection of
connected finite state machines
Subtypes of cellular automata
Graph
Grid
Subdivision
Synchronized
Convergent
Does the automata settle down for all starting states
Whatisacellularautomata:
The Most famous cellular is Conway’s Game of
Life
epic game of life
Whatispathfinding:
Path finding is the simply finding one or more
optimal routes between two or more points
while avoiding obstacles
Whatispathfinding:
Path finding is the simply finding one or more
optimal routes between two or more points
while avoiding obstacles
Used in:
Whatispathfinding:
Path finding is the simply finding one or more
optimal route between two or more points
while avoiding obstacles
Used in:
Design (circuit boards, chips, plumbing)
Whatispathfinding:
Path finding is the simply finding one or more
optimal route between two or more points
while avoiding obstacles
Used in:
Design (circuit boards, chips, plumbing)
Analysis (critical path)
Whatispathfinding:
Path finding is the simply finding one or more
optimal route between two or more points
while avoiding obstacles
Used in:
Design (circuit boards, chips, plumbing)
Analysis (critical path)
Entertainment (goal seeking)
Otherapproaches topathfinding:
Otherapproaches topathfinding:
Backtracking also known as depth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Basically at each branch you “remember” where
you were, and which branch you took
Otherapproaches topathfinding:
Backtracking also known as depth first
Basically at each branch you “remember” where
you were, and which branch you took
When you reach a dead end you go back to the last
branch and take a different path
Otherapproaches topathfinding:
Backtracking also known as depth first
Basically at each branch you “remember” where
you were, and which branch you took
When you reach a dead end you go back to the last
branch and take a different path
If the maze has loops or “cycles” depth first can end
up going in circles
Otherapproaches topathfinding:
Backtracking also known as depth first
Basically at each branch you “remember” where
you were, and which branch you took
When you reach a dead end you go back to the last
branch and take a different path
If the maze has loops or “cycles” depth first can end
up going in circles
This can be prevented by remembering everywhere
you’ve been
Otherapproaches topathfinding:
Backtracking also known as depth first
Basically at each branch you “remember” where
you were, and which branch you took
When you reach a dead end you go back to the last
branch and take a different path
If the maze has loops or “cycles” depth first can end
up going in circles
Prevented by remembering everywhere you’ve
been
Easy to implement recursively
Otherapproaches topathfinding:
Backtracking also depth known first
Otherapproaches topathfinding:
Backtracking also known as depth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Again remembering each branch
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Again remembering each branch
Except at each new intersection, go back to the
untried path closest to the starting point
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
Otherapproaches topathfinding:
Backtracking also known as depth first
Breadth first
A* (A star)
At each intersection select the “best” untried path
(based on a heuristic)
Otherapproaches topathfinding:
A* (A star)
Otherapproaches topathfinding:
A* (A star)
Otherapproaches topathfinding:
A* (A star)
Otherapproaches topathfinding:
A* (A star)
Shortcomingsofexisting methods:
Shortcomingsofexisting methods:
They require both a start and endpoint
Shortcomingsofexisting methods:
They require both a start and endpoint
Potentially slow if the maze is large or there are
many entities finding paths at the same time
Shortcomingsofexisting methods:
They require both a start and endpoint
Potentially slow if the maze is large or there are
many entities finding paths at the same time
Each entity has a separate path multiplying the
amount of memory needed by the number of
entities
Shortcomingsofexisting methods:
They require both a start and endpoint
Potentially slow if the maze is large or there are
many entities finding paths at the same time
Each entity has a separate path multiplying the
amount of memory needed by the number of
entities
Not incremental, partial solutions don’t lead to
meaningful behavior
Shortcomingsofexisting methods:
They require both a start and endpoint
Potentially slow if the maze is large or there are
many entities finding paths at the same time
Each entity has a separate path multiplying the
amount of memory needed by the number of
entities
Not incremental, partial solutions partial
solutions don’t lead to meaningful behavior
Not easily distributed
Shortcomingsofexisting methods:
They require both a start and endpoint
Potentially slow if the maze is large or there are
many entities finding paths at the same time
Each entity has a separate path multiplying the
amount of memory needed by the number of
entities
Not incremental, partial solutions partial
solutions don’t lead to meaningful behavior
Not easily distributed each entity requires a
large amount of information
Whyanewmethod?:
Whyanewmethod?:
Programmers love to reinvent the wheel
Whyanewmethod?:
Programmers love to reinvent the wheel
The new algorithm might be better
Whyanewmethod?:
Programmers love to reinvent the wheel
The new algorithm might be better
To address shortcomings in existing methods
Whyanewmethod?:
Programmers love to reinvent the wheel
The new algorithm might be better
To address shortcomings in existing methods
To learn something
Whyanewmethod?:
Programmers love to reinvent the wheel
The new algorithm might be better
To address shortcomings in existing methods
To learn something (life long learning is
important)
Howdoesthismethodwork?:
Howdoesthismethodwork?:
The states of the automata are as follows
Howdoesthismethodwork?:
The states of the automata are as follows:
‘W’ the cell is a wall
Howdoesthismethodwork?:
The states of the automata are as follows:
‘W’ the cell is a wall
‘G’ the cell is a goal (there can be multiple goals)
Howdoesthismethodwork?:
The states of the automata are as follows:
‘W’ the cell is a wall
‘G’ the cell is a goal
1…10,000 the cell is passable
Howdoesthismethodwork?:
The states of the automata are as follows:
‘W’ the cell is a wall
‘G’ the cell is a goal
1…10,000 the cell is passable
The transitions are:
Howdoesthismethodwork?:
The states of the automata are as follows:
‘W’ the cell is a wall
‘G’ the cell is a goal
1…10,000 the cell is passable
The transitions are:
‘W’ -> ‘W’ Walls don’t change
Howdoesthismethodwork?:
The states of the automata are as follows:
‘W’ the cell is a wall
‘G’ the cell is a goal
1…10,000 the cell is passable
The transitions are:
‘W’ -> ‘W’
‘G’ -> ‘G’ Goals don’t change
Howdoesthismethodwork?:
The states of the automata are as follows:
‘W’ the cell is a wall
‘G’ the cell is a goal
1…10,000 the cell is passable
The transitions are:
‘W’ -> ‘W’
‘G’ -> ‘G’
1…10,000 -> one more than its lowest value
neighbor. Where ‘G’ has a value of zero
Howdoesthismethodwork?:
The passages are initialized to a random
passage value (in the demo initialized to 1 for
clarity)
Howdoesthismethodwork?:
The passages are initialized to a random
passage value
The walls are initialized to ‘W’
Howdoesthismethodwork?:
The passages are initialized to a random
passage value
The walls are initialized to ‘W’
The goals are initialized to ‘G’
Howdoesthismethodwork?:
The passages are initialized to a random
passage value
The walls are initialized to ‘W’
The goals are initialized to ‘G’
The automata is stepped either synchronously
or asynchronously
Howdoesthismethodwork?:
The passages are initialized to a random
passage value
The walls are initialized to ‘W’
The goals are initialized to ‘G’
The automata is stepped either synchronously
or asynchronously
Each entity can simply move to a neighboring
cell with a lower value, going “downhill” to
player
Howdoesthismethodwork?:
A simple example
W W W W W W
W G 9 7 1 W
W W W W W W
Howdoesthismethodwork?:
A simple example
W W W W W W
W G 1 2 8 W
W W W W W W
Howdoesthismethodwork?:
A simple example
W W W W W W
W G 1 2 3 W
W W W W W W
Howdoesthismethodwork?:
A more complicated example
W W W W W W
W 1 9 7 1 W
W 7 W 5 W W
W 8 5 3 G W
W W W W W W
Howdoesthismethodwork?:
A more complicated example
W W W W W W
W 8 2 2 8 W
W 2 W 4 W W
W 6 4 1 G W
W W W W W W
Howdoesthismethodwork?:
A more complicated example
W W W W W W
W 3 3 3 3 W
W 7 W 2 W W
W 5 2 1 G W
W W W W W W
Howdoesthismethodwork?:
A more complicated example
W W W W W W
W 4 4 3 4 W
W 4 W 2 W W
W 8 2 1 G W
W W W W W W
Howdoesthismethodwork?:
A more complicated example
W W W W W W
W 5 4 3 4 W
W 4 W 2 W W
W 8 2 1 G W
W W W W W W
Howdoesthismethodwork?:
A more complicated example
W W W W W W
W 5 4 3 4 W
W 4 W 2 W W
W 8 2 1 G W
W W W W W W
Howdoesthismethodwork?:
Demo Here:
Prosandcons:
Pros:
The cellular automata can be shared by entities
Pros:
The cellular automata can be shared by entities
Easily distributed
Pros:
The cellular automata can be shared by entities
Easily distributed
Each cell only needs to know about its closest
neighbors
Pros:
The cellular automata can be shared by entities
Easily distributed
Each cell only needs to know about its closest
neighbors
The cells don’t need to update synchronously
Pros:
The cellular automata can be shared by entities
Easily distributed
Incremental the automata can be iterated
between frames
Pros:
The cellular automata can be shared by entities
Easily distributed
Incremental the automata can be iterated
between frames
Entities will naturally move out of dead ends even
before the path information fully propagates
Pros:
The cellular automata can be shared by entities
Easily distributed
Incremental the automata can be iterated
between frames
Fault tolerant
Pros:
The cellular automata can be shared by entities
Easily distributed
Incremental the automata can be iterated
between frames
Fault tolerant
A passage can be blocked to reflect changes in the
maze
Pros:
The cellular automata can be shared by entities
Easily distributed
Incremental the automata can be iterated
between frames
Fault tolerant
A passage can be blocked to reflect changes in the
maze
Goals can be moved
Pros:
The cellular automata can be shared by entities
Easily distributed
Incremental the automata can be iterated
between frames
Fault tolerant
If a passage is blocked, or the goal moves
Goals can be moved
Continue to use the existing automata as it updates
Pros:
The cellular automata can be shared by entities
Easily distributed
Incremental the automata can be iterated
between frames
Fault tolerant
If a passage is blocked, or the goal moves
Goals can be moved
Continue to use the existing automata as it updates
Pros:
The cellular automata can be shared by entities
Easily distributed
Incremental the automata can be iterated
between frames
Fault tolerant
If a passage is blocked, or the goal moves
Continue to use the existing automata as it updates
Unreachable areas are easily detected
Cons:
Cons:
Requires enough memory to hold the search
space
Cons:
Requires enough memory to hold the search
space
For a single entity takes more processing than
other methods
Inclosing:
This Cellular Automata provides an incremental,
fault tolerant, performant pathfinding solution
References:
Ascani, E (2011, October 4). Epic Game of Life. Retrieved April 4, 2016, from
https://www.youtube.com/watch?v=C2vgICfQawE
Codd, E. F. (1968). Cellular automata [Http://dl.acm.org/citation.cfm?id=1098682]. New York:
Academic Press. Retrieved April 4, 2016.
DeAngelis, M. (2016, February 29). Cat Maze Disguised as Bookshelves. Retrieved April 4, 2016, from
http://www.cluttermagazine.com/news/2016/02/cat-maze-disguised-bookshelves
Gardner, M. (1983). Wheels, life, and other mathematical amusements (Chp 20-22). New York: W.H.
Freeman.
Levy, S. (1993). Artificial life: A report from the frontier where computers meet biology. New York:
Vintage Books.
Pajot, T. (n.d.). Printed Circuit Board. Retrieved April 4, 2016, from
http://www.123rf.com/photo_10607345_printed-circuit-board.html

More Related Content

What's hot

【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~
【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~
【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~Unity Technologies Japan K.K.
 
Angular Taiwan 2019 - 大型 Angular 專案的的管理心得與技巧
Angular Taiwan 2019 - 大型 Angular 專案的的管理心得與技巧Angular Taiwan 2019 - 大型 Angular 專案的的管理心得與技巧
Angular Taiwan 2019 - 大型 Angular 專案的的管理心得與技巧升煌 黃
 
Komvision - Komatsu's solution to improving operators field of view.
Komvision - Komatsu's solution to improving operators field of view.Komvision - Komatsu's solution to improving operators field of view.
Komvision - Komatsu's solution to improving operators field of view.MarubeniKomatsu
 
Substanceのちょっといい話
Substanceのちょっといい話Substanceのちょっといい話
Substanceのちょっといい話Satoshi Kodaira
 
プリント基板設計 RaspberryPi HAT基板設計実習
プリント基板設計 RaspberryPi HAT基板設計実習プリント基板設計 RaspberryPi HAT基板設計実習
プリント基板設計 RaspberryPi HAT基板設計実習MarbleStream
 
Ssm eli pehmeä systeemimetodologia
Ssm eli pehmeä systeemimetodologiaSsm eli pehmeä systeemimetodologia
Ssm eli pehmeä systeemimetodologiaanita rubin
 
ソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみたソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみたYasuharu Seki
 
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...Gerke Max Preussner
 
【 Unity道場 1月 ~LWRPとシェーダー~】軽量レンダーパイプライン、Light Weight Renderer Pipeline…とは
【 Unity道場 1月 ~LWRPとシェーダー~】軽量レンダーパイプライン、Light Weight Renderer Pipeline…とは【 Unity道場 1月 ~LWRPとシェーダー~】軽量レンダーパイプライン、Light Weight Renderer Pipeline…とは
【 Unity道場 1月 ~LWRPとシェーダー~】軽量レンダーパイプライン、Light Weight Renderer Pipeline…とはUnity Technologies Japan K.K.
 
[AI10] ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~
[AI10] ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~[AI10] ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~
[AI10] ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~de:code 2017
 
Unityでソーシャルログイン機能を実装してみた
Unityでソーシャルログイン機能を実装してみたUnityでソーシャルログイン機能を実装してみた
Unityでソーシャルログイン機能を実装してみた昭仁 賀好
 
Fusion360でレゴブロックをつくろう~
Fusion360でレゴブロックをつくろう~Fusion360でレゴブロックをつくろう~
Fusion360でレゴブロックをつくろう~Teruki Obara
 
Killzone 2 Multiplayer Bots
Killzone 2 Multiplayer BotsKillzone 2 Multiplayer Bots
Killzone 2 Multiplayer BotsGuerrilla
 
ソシャゲにおけるサーバとクライアントの決めごと
ソシャゲにおけるサーバとクライアントの決めごとソシャゲにおけるサーバとクライアントの決めごと
ソシャゲにおけるサーバとクライアントの決めごとpeto_tn
 
運用現場で常に隣り合わせの障害対応、IIJの出した答え
運用現場で常に隣り合わせの障害対応、IIJの出した答え運用現場で常に隣り合わせの障害対応、IIJの出した答え
運用現場で常に隣り合わせの障害対応、IIJの出した答えIIJ
 
若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発Hirohito Morinaga
 
【Unity道場】初心者には初心者の戦い方がある!スキルがなくても付け焼き刃で戦う小手先テクニック
【Unity道場】初心者には初心者の戦い方がある!スキルがなくても付け焼き刃で戦う小手先テクニック【Unity道場】初心者には初心者の戦い方がある!スキルがなくても付け焼き刃で戦う小手先テクニック
【Unity道場】初心者には初心者の戦い方がある!スキルがなくても付け焼き刃で戦う小手先テクニックUnity Technologies Japan K.K.
 

What's hot (20)

【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~
【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~
【Unite Tokyo 2018】その最適化、本当に最適ですか!? ~正しい最適化を行うためのテクニック~
 
Angular Taiwan 2019 - 大型 Angular 專案的的管理心得與技巧
Angular Taiwan 2019 - 大型 Angular 專案的的管理心得與技巧Angular Taiwan 2019 - 大型 Angular 專案的的管理心得與技巧
Angular Taiwan 2019 - 大型 Angular 專案的的管理心得與技巧
 
Komvision - Komatsu's solution to improving operators field of view.
Komvision - Komatsu's solution to improving operators field of view.Komvision - Komatsu's solution to improving operators field of view.
Komvision - Komatsu's solution to improving operators field of view.
 
Substanceのちょっといい話
Substanceのちょっといい話Substanceのちょっといい話
Substanceのちょっといい話
 
プリント基板設計 RaspberryPi HAT基板設計実習
プリント基板設計 RaspberryPi HAT基板設計実習プリント基板設計 RaspberryPi HAT基板設計実習
プリント基板設計 RaspberryPi HAT基板設計実習
 
Ssm eli pehmeä systeemimetodologia
Ssm eli pehmeä systeemimetodologiaSsm eli pehmeä systeemimetodologia
Ssm eli pehmeä systeemimetodologia
 
ソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみたソニーでElectronアプリをリリースしてみた
ソニーでElectronアプリをリリースしてみた
 
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
GDC Europe 2014: Unreal Engine 4 for Programmers - Lessons Learned & Things t...
 
【 Unity道場 1月 ~LWRPとシェーダー~】軽量レンダーパイプライン、Light Weight Renderer Pipeline…とは
【 Unity道場 1月 ~LWRPとシェーダー~】軽量レンダーパイプライン、Light Weight Renderer Pipeline…とは【 Unity道場 1月 ~LWRPとシェーダー~】軽量レンダーパイプライン、Light Weight Renderer Pipeline…とは
【 Unity道場 1月 ~LWRPとシェーダー~】軽量レンダーパイプライン、Light Weight Renderer Pipeline…とは
 
Voorbeeld opdracht hoofdstuk formules
Voorbeeld opdracht hoofdstuk formulesVoorbeeld opdracht hoofdstuk formules
Voorbeeld opdracht hoofdstuk formules
 
[AI10] ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~
[AI10] ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~[AI10] ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~
[AI10] ゲームキャラクターのための人工知能と社会への応用 ~ FINAL FANTASY XV を事例として ~
 
Unityでソーシャルログイン機能を実装してみた
Unityでソーシャルログイン機能を実装してみたUnityでソーシャルログイン機能を実装してみた
Unityでソーシャルログイン機能を実装してみた
 
Fusion360でレゴブロックをつくろう~
Fusion360でレゴブロックをつくろう~Fusion360でレゴブロックをつくろう~
Fusion360でレゴブロックをつくろう~
 
Killzone 2 Multiplayer Bots
Killzone 2 Multiplayer BotsKillzone 2 Multiplayer Bots
Killzone 2 Multiplayer Bots
 
Epic Online Services でできること
Epic Online Services でできることEpic Online Services でできること
Epic Online Services でできること
 
ソシャゲにおけるサーバとクライアントの決めごと
ソシャゲにおけるサーバとクライアントの決めごとソシャゲにおけるサーバとクライアントの決めごと
ソシャゲにおけるサーバとクライアントの決めごと
 
運用現場で常に隣り合わせの障害対応、IIJの出した答え
運用現場で常に隣り合わせの障害対応、IIJの出した答え運用現場で常に隣り合わせの障害対応、IIJの出した答え
運用現場で常に隣り合わせの障害対応、IIJの出した答え
 
若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発若輩エンジニアから見たUniRxを利用したゲーム開発
若輩エンジニアから見たUniRxを利用したゲーム開発
 
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
ロボット好き集まれ!こいつ、動くぞ。星と翼のパラドクス開発事例
 
【Unity道場】初心者には初心者の戦い方がある!スキルがなくても付け焼き刃で戦う小手先テクニック
【Unity道場】初心者には初心者の戦い方がある!スキルがなくても付け焼き刃で戦う小手先テクニック【Unity道場】初心者には初心者の戦い方がある!スキルがなくても付け焼き刃で戦う小手先テクニック
【Unity道場】初心者には初心者の戦い方がある!スキルがなくても付け焼き刃で戦う小手先テクニック
 

Viewers also liked

Cellular automata by Devdutta Chakrabarti
Cellular automata by Devdutta ChakrabartiCellular automata by Devdutta Chakrabarti
Cellular automata by Devdutta ChakrabartiDevdutta Chakrabarti
 
A New Security Level for Elliptic Curve Cryptosystem Using Cellular Automata ...
A New Security Level for Elliptic Curve Cryptosystem Using Cellular Automata ...A New Security Level for Elliptic Curve Cryptosystem Using Cellular Automata ...
A New Security Level for Elliptic Curve Cryptosystem Using Cellular Automata ...Editor IJCATR
 
1D/2D Cellular Automata Modeling with Modelica
1D/2D Cellular Automata Modeling with Modelica1D/2D Cellular Automata Modeling with Modelica
1D/2D Cellular Automata Modeling with Modelicavictorinosanz
 
Hacking JavaScript Games - Cellular Automata
Hacking JavaScript Games - Cellular AutomataHacking JavaScript Games - Cellular Automata
Hacking JavaScript Games - Cellular AutomataAlan Richardson
 
Block Emulation and Computation in One-dimensional Cellular Automata: Breakin...
Block Emulation and Computation in One-dimensional Cellular Automata: Breakin...Block Emulation and Computation in One-dimensional Cellular Automata: Breakin...
Block Emulation and Computation in One-dimensional Cellular Automata: Breakin...Jurgen Riedel
 
online payment system using Steganography and Visual cryptography
online payment system using Steganography and Visual cryptographyonline payment system using Steganography and Visual cryptography
online payment system using Steganography and Visual cryptographyShahrukh Ali
 
Visual Cryptography Industrial Training Report
Visual Cryptography Industrial Training ReportVisual Cryptography Industrial Training Report
Visual Cryptography Industrial Training ReportMohit Kumar
 
cellular automata as a test pattern generator and output response compactor f...
cellular automata as a test pattern generator and output response compactor f...cellular automata as a test pattern generator and output response compactor f...
cellular automata as a test pattern generator and output response compactor f...Shiva Narayan Reddy
 
Scene Text Detection on Images using Cellular Automata
Scene Text Detection on Images using Cellular AutomataScene Text Detection on Images using Cellular Automata
Scene Text Detection on Images using Cellular AutomataKonstantinos Zagoris
 
Cellular automata
Cellular automataCellular automata
Cellular automataNur Islam
 
Cellular automata : A simple Introduction
Cellular automata : A simple IntroductionCellular automata : A simple Introduction
Cellular automata : A simple IntroductionAdekunle Onaopepo
 
Visual Cryptography
Visual CryptographyVisual Cryptography
Visual CryptographyAneeshGKumar
 

Viewers also liked (20)

CELLULAR AUTOMATA TRAFFIC FLOW MODEL
CELLULAR AUTOMATA TRAFFIC FLOW MODELCELLULAR AUTOMATA TRAFFIC FLOW MODEL
CELLULAR AUTOMATA TRAFFIC FLOW MODEL
 
Cellular Automata
Cellular AutomataCellular Automata
Cellular Automata
 
Cellular automata by Devdutta Chakrabarti
Cellular automata by Devdutta ChakrabartiCellular automata by Devdutta Chakrabarti
Cellular automata by Devdutta Chakrabarti
 
A New Security Level for Elliptic Curve Cryptosystem Using Cellular Automata ...
A New Security Level for Elliptic Curve Cryptosystem Using Cellular Automata ...A New Security Level for Elliptic Curve Cryptosystem Using Cellular Automata ...
A New Security Level for Elliptic Curve Cryptosystem Using Cellular Automata ...
 
Ca model presentation
Ca model presentationCa model presentation
Ca model presentation
 
1D/2D Cellular Automata Modeling with Modelica
1D/2D Cellular Automata Modeling with Modelica1D/2D Cellular Automata Modeling with Modelica
1D/2D Cellular Automata Modeling with Modelica
 
Hacking JavaScript Games - Cellular Automata
Hacking JavaScript Games - Cellular AutomataHacking JavaScript Games - Cellular Automata
Hacking JavaScript Games - Cellular Automata
 
Cellular Automata- Dengue Fever
Cellular Automata- Dengue FeverCellular Automata- Dengue Fever
Cellular Automata- Dengue Fever
 
Cellular automata
Cellular automata Cellular automata
Cellular automata
 
Block Emulation and Computation in One-dimensional Cellular Automata: Breakin...
Block Emulation and Computation in One-dimensional Cellular Automata: Breakin...Block Emulation and Computation in One-dimensional Cellular Automata: Breakin...
Block Emulation and Computation in One-dimensional Cellular Automata: Breakin...
 
Automata Invasion
Automata InvasionAutomata Invasion
Automata Invasion
 
online payment system using Steganography and Visual cryptography
online payment system using Steganography and Visual cryptographyonline payment system using Steganography and Visual cryptography
online payment system using Steganography and Visual cryptography
 
Visual Cryptography Industrial Training Report
Visual Cryptography Industrial Training ReportVisual Cryptography Industrial Training Report
Visual Cryptography Industrial Training Report
 
Visual cryptography
Visual cryptographyVisual cryptography
Visual cryptography
 
Finite automata
Finite automataFinite automata
Finite automata
 
cellular automata as a test pattern generator and output response compactor f...
cellular automata as a test pattern generator and output response compactor f...cellular automata as a test pattern generator and output response compactor f...
cellular automata as a test pattern generator and output response compactor f...
 
Scene Text Detection on Images using Cellular Automata
Scene Text Detection on Images using Cellular AutomataScene Text Detection on Images using Cellular Automata
Scene Text Detection on Images using Cellular Automata
 
Cellular automata
Cellular automataCellular automata
Cellular automata
 
Cellular automata : A simple Introduction
Cellular automata : A simple IntroductionCellular automata : A simple Introduction
Cellular automata : A simple Introduction
 
Visual Cryptography
Visual CryptographyVisual Cryptography
Visual Cryptography
 

Similar to Cellular Automata for Pathfinding

Educational innovation in university levels: Crystallography and X - ray diff...
Educational innovation in university levels: Crystallography and X - ray diff...Educational innovation in university levels: Crystallography and X - ray diff...
Educational innovation in university levels: Crystallography and X - ray diff...José Javier Navas Pedregosa
 
The Need for Async @ ScalaWorld
The Need for Async @ ScalaWorldThe Need for Async @ ScalaWorld
The Need for Async @ ScalaWorldKonrad Malawski
 
Atmosphere Conference 2015: Need for Async: In pursuit of scalable internet-s...
Atmosphere Conference 2015: Need for Async: In pursuit of scalable internet-s...Atmosphere Conference 2015: Need for Async: In pursuit of scalable internet-s...
Atmosphere Conference 2015: Need for Async: In pursuit of scalable internet-s...PROIDEA
 
09-05-ACA-Temporal-Tempo.pdf
09-05-ACA-Temporal-Tempo.pdf09-05-ACA-Temporal-Tempo.pdf
09-05-ACA-Temporal-Tempo.pdfAlexanderLerch4
 

Similar to Cellular Automata for Pathfinding (6)

Educational innovation in university levels: Crystallography and X - ray diff...
Educational innovation in university levels: Crystallography and X - ray diff...Educational innovation in university levels: Crystallography and X - ray diff...
Educational innovation in university levels: Crystallography and X - ray diff...
 
The Need for Async @ ScalaWorld
The Need for Async @ ScalaWorldThe Need for Async @ ScalaWorld
The Need for Async @ ScalaWorld
 
02 - Prepcode
02 - Prepcode02 - Prepcode
02 - Prepcode
 
Ai1.pdf
Ai1.pdfAi1.pdf
Ai1.pdf
 
Atmosphere Conference 2015: Need for Async: In pursuit of scalable internet-s...
Atmosphere Conference 2015: Need for Async: In pursuit of scalable internet-s...Atmosphere Conference 2015: Need for Async: In pursuit of scalable internet-s...
Atmosphere Conference 2015: Need for Async: In pursuit of scalable internet-s...
 
09-05-ACA-Temporal-Tempo.pdf
09-05-ACA-Temporal-Tempo.pdf09-05-ACA-Temporal-Tempo.pdf
09-05-ACA-Temporal-Tempo.pdf
 

Cellular Automata for Pathfinding