Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

51
Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally

Transcript of Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Page 1: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Robot Route Planning using

Cellular Automata

Robot Route Planning using

Cellular Automata

MS ReportMS Report

Shashidhar RampallyShashidhar Rampally

Page 2: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Presentation OutlinePresentation Outline

Overview and Problem Statement Cellular Automata Route-Planner Algorithm Simulation using Cellular Automata Experimental Analysis Conclusions & Recommendations

Overview and Problem Statement Cellular Automata Route-Planner Algorithm Simulation using Cellular Automata Experimental Analysis Conclusions & Recommendations

Page 3: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

OverviewOverview

Robots are increasingly being used these days in industry for material handling, storage and retrieval. Adding new items to the inventory Retrieving items from the inventory Moving items around

Robots are increasingly being used these days in industry for material handling, storage and retrieval. Adding new items to the inventory Retrieving items from the inventory Moving items around

Page 4: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Overview contd..Overview contd..

Such a system which is fully automated is called Automatic Storage and Retrieval System(ASRS)

Some storage and retrieval systems are very large, covering areas in excess of 50,000 m2

.

A WALMART warehouse Some storage systems are very small

covering an area of hundred square meters or less A book library

Such a system which is fully automated is called Automatic Storage and Retrieval System(ASRS)

Some storage and retrieval systems are very large, covering areas in excess of 50,000 m2

.

A WALMART warehouse Some storage systems are very small

covering an area of hundred square meters or less A book library

Page 5: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ASRSASRS

Bar codes are usually used to identify products, storage locations and some times the handling units.

Bar codes are usually used to identify products, storage locations and some times the handling units.

Page 6: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ASRS contd..ASRS contd..

Pallet racking and tote bins are usually the preferred storage medium.

Pallet racking and tote bins are usually the preferred storage medium.

Pallet racking Tote bins

Page 7: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Robotic LibrarianRobotic Librarian

Front view of a column of shelf holding books

A robot in the process of returning a book to the shelves

Page 8: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Robots in actionRobots in action

A robotic arm retrieving an item from the shelf

A stacker crane within an aisleof pallet racking

Page 9: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Problem StatementProblem Statement

Robots need to reach their destinations to get the job done. So, if we route the robots quickly to their destinations, we can process the requests speedily.

The application of Cellular Automata to

the problem of robot route planning is

presented.

Robots need to reach their destinations to get the job done. So, if we route the robots quickly to their destinations, we can process the requests speedily.

The application of Cellular Automata to

the problem of robot route planning is

presented.

Page 10: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Cellular AutomataCellular Automata

A Cellular automaton consists of regular discrete lattice of cells.

Each cell has a state. The evolution takes place in discrete

time steps. Each cell evolves according to the same

rule, which depends only on the state of the cell and a finite number of neighboring cells.

A Cellular automaton consists of regular discrete lattice of cells.

Each cell has a state. The evolution takes place in discrete

time steps. Each cell evolves according to the same

rule, which depends only on the state of the cell and a finite number of neighboring cells.

Page 11: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Cellular AutomataCellular Automata

Formally, we can define cellular automata as 4-tuple (L, S, N, f). L is a regular lattice of cells. S is a finite set of states. N is a finite set of neighborhood

indices of size |N| = n. f : Sn->S is the transition function

Formally, we can define cellular automata as 4-tuple (L, S, N, f). L is a regular lattice of cells. S is a finite set of states. N is a finite set of neighborhood

indices of size |N| = n. f : Sn->S is the transition function

Page 12: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Cellular Automata contd…Cellular Automata contd…

The factors that affect a cellular automaton include Lattice Geometry Neighborhood Size Initial Conditions Transition rules

The factors that affect a cellular automaton include Lattice Geometry Neighborhood Size Initial Conditions Transition rules

Page 13: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Types of NeighborhoodTypes of Neighborhood

             

             

             

             

             

             

             

von Neumann Neighborhoodradius = 1

Page 14: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Types of NeighborhoodTypes of Neighborhood

von Neumann Neighborhoodradius = 2

             

             

             

             

             

             

             

Page 15: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Types of NeighborhoodTypes of Neighborhood

Moore Neighborhoodradius = 1

             

             

             

             

             

             

             

Page 16: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Types of NeighborhoodTypes of Neighborhood

Moore Neighborhoodradius = 2

             

             

             

             

             

             

             

Page 17: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Cellular Automata contd...Cellular Automata contd...

It must be noticed here that important

features of cellular automaton are

‘locality’ and ‘homogeneity’.

Cell [ i ][ j ]t+1 depends on

Cell [ i-1][ j ]t Cell [ i+1][ j ]t

Cell [ i ][ j-1 ]t Cell [ i ][ j+1 ]t

It must be noticed here that important

features of cellular automaton are

‘locality’ and ‘homogeneity’.

Cell [ i ][ j ]t+1 depends on

Cell [ i-1][ j ]t Cell [ i+1][ j ]t

Cell [ i ][ j-1 ]t Cell [ i ][ j+1 ]t

Page 18: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Applications of Cellular Automata

Applications of Cellular Automata

Simulation of Particle-Diffusion and Particle-Reaction systems

Computer Architectures CAM-8, CEPRA Cryptography Traffic Simulations to study Traffic

behavior Simulation of Physical Phenomena such

as heat-flow, turbulence, earth-quake propagation, forest fire etc.

Simulation of Particle-Diffusion and Particle-Reaction systems

Computer Architectures CAM-8, CEPRA Cryptography Traffic Simulations to study Traffic

behavior Simulation of Physical Phenomena such

as heat-flow, turbulence, earth-quake propagation, forest fire etc.

Page 19: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Simulation using Cellular Automata

Simulation using Cellular Automata

We assume there are fixed number of robots, which share the same workspace.

We assume there are fixed number of robots, which share the same workspace.

The workspace consists of cells arranged in the form of a two- dimensional grid. Each cell represents a block made up of four two-way streets and an intersection connecting these streets.

A cell

Page 20: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Simulation using Cellular Automata

Simulation using Cellular Automata

Each robot needs a finite amount of space, which we call a road-cell.

The traffic follows a multi-speed model. Hence, velocities between 0 and Vmax are permitted.

Each robot needs a finite amount of space, which we call a road-cell.

The traffic follows a multi-speed model. Hence, velocities between 0 and Vmax are permitted.

road cell

Page 21: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Robot motion Robot motion

If V is the velocity of a robot andgap is the distance to the robot ahead….

Acceleration: If (gap > V) and (V < Vmax) then

V = V + 1 Deceleration:

If (gap < V) then V = gap

If V is the velocity of a robot andgap is the distance to the robot ahead….

Acceleration: If (gap > V) and (V < Vmax) then

V = V + 1 Deceleration:

If (gap < V) then V = gap

Page 22: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Storage and Retrieval requests

Storage and Retrieval requests

A Poisson process is usually used to model real world events.

Hence, the jobs for the robots are assumed to arrive with a Poisson distribution. Therefore the inter-arrival times for these jobs is distributed exponentially.

A Poisson process is usually used to model real world events.

Hence, the jobs for the robots are assumed to arrive with a Poisson distribution. Therefore the inter-arrival times for these jobs is distributed exponentially.

t1 t2 t3 t4 t5

A Poisson Process

Page 23: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Scheduling AlgorithmScheduling Algorithm

Initially, the system does not have any robots.

The robots are introduced into the system as the requests for the jobs arrive.

Each such request has a pick-up location and a drop-off location.

A robot is said to be BUSY when it is moving towards its destination to handle a request.

Initially, the system does not have any robots.

The robots are introduced into the system as the requests for the jobs arrive.

Each such request has a pick-up location and a drop-off location.

A robot is said to be BUSY when it is moving towards its destination to handle a request.

Page 24: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Scheduling AlgorithmScheduling Algorithm

When a robot reaches its destination, it enters a REACHED state. It waits for some period of time at the destination to process the request.

A robot then enters FREE state again.

When a robot reaches its destination, it enters a REACHED state. It waits for some period of time at the destination to process the request.

A robot then enters FREE state again.

FREE BUSY

REACHED

Page 25: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Route Planner AlgorithmRoute Planner Algorithm

Finds the quickest route from the start cell to the goal cell.

Involves two stages Cost Estimation Cost minimization & Path Generation

Cost Estimation The cost of a cell is the maximum waiting time of

a robot in each of the 8 one-way streets. This information is encapsulated in an instance of the “CellCost” class.

Taken together set of all such instances for the whole grid is called the map cost (MC) array.

Finds the quickest route from the start cell to the goal cell.

Involves two stages Cost Estimation Cost minimization & Path Generation

Cost Estimation The cost of a cell is the maximum waiting time of

a robot in each of the 8 one-way streets. This information is encapsulated in an instance of the “CellCost” class.

Taken together set of all such instances for the whole grid is called the map cost (MC) array.

Page 26: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Route Planner AlgorithmRoute Planner Algorithm

Cost Minimization & Path Generation Cost minimization uses the map cost (MC) array

as input and generates a Best-Cost (BC) array as output.

At completion of cost minimization, each cell in the BC array contains the cost of the lowest-cost path from the start cell to that cell. By cost we mean the time to reach the cell from the start. Path generation uses the BC array as input and produces the optimal path from the start cell to the goal cell.

Cost Minimization & Path Generation Cost minimization uses the map cost (MC) array

as input and generates a Best-Cost (BC) array as output.

At completion of cost minimization, each cell in the BC array contains the cost of the lowest-cost path from the start cell to that cell. By cost we mean the time to reach the cell from the start. Path generation uses the BC array as input and produces the optimal path from the start cell to the goal cell.

Page 27: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Route Planner AlgorithmRoute Planner Algorithm

1. InitializationSet all BCi = infinity

Set all MFi = false (MF is a map flag array)

TODO list is emptyBCstart = 0

Add the start cell to the TODO list

 

1. InitializationSet all BCi = infinity

Set all MFi = false (MF is a map flag array)

TODO list is emptyBCstart = 0

Add the start cell to the TODO list

 

Page 28: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Route Planner AlgorithmRoute Planner Algorithm

 2. Cost minimizationloop until TODO list is empty

Select and remove the top cell i from the TODO listFor each neighbor j of i (four neighbors)

cost = BCi + COSTij //Cost of reaching j from // the start cell through i

if cost < BCj

BCj = cost

if MFj = false

add j to TODO list and set MFj = true

previous_cellj = i

 

 2. Cost minimizationloop until TODO list is empty

Select and remove the top cell i from the TODO listFor each neighbor j of i (four neighbors)

cost = BCi + COSTij //Cost of reaching j from // the start cell through i

if cost < BCj

BCj = cost

if MFj = false

add j to TODO list and set MFj = true

previous_cellj = i

 

Page 29: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Route Planner AlgorithmRoute Planner Algorithm

 3. Path generation Initialize path cell = goal cellloop until previous_cellpath cell != start cell path cell = previous_cellpath cell

next step = path cell 

 3. Path generation Initialize path cell = goal cellloop until previous_cellpath cell != start cell path cell = previous_cellpath cell

next step = path cell 

Page 30: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ExampleExample

The map cost values (MC) are indicated by the upper left number in each cell. Best-cost (BC) values are indicated by the lower number in each cell. All the best-cost values are initially set to infinity. The best-cost value of start cell is set to 0.

Page 31: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ExampleExample

The start cell has processed its neighboring cells. The neighboring cells of the start cell have new best cost and are added to the TODO list. The start cell is now off the TODO list.

Page 32: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ExampleExample

Search complete. BCgoal (= 8) is the cost of the optimal path from the start to

the goal. The path is found from the goal by selecting the neighboring cell, which resulted in that cell which resulted in the current cell having the BC value.

Page 33: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ImplementationImplementation

A separate thread implements the transition function of each cell. So, for a n X n grid, we have n2 threads.

At the beginning of each time step, a cell sends its borders to its neighbors. A border contains information about robots crossing over to other cell.

Therefore a cell can go into the next time-step only when it has borders available from all the neighboring cells from the previous time-step.

A message passing mechanism using Bounded Buffers is used for passing borders to the neighbors.

A separate thread implements the transition function of each cell. So, for a n X n grid, we have n2 threads.

At the beginning of each time step, a cell sends its borders to its neighbors. A border contains information about robots crossing over to other cell.

Therefore a cell can go into the next time-step only when it has borders available from all the neighboring cells from the previous time-step.

A message passing mechanism using Bounded Buffers is used for passing borders to the neighbors.

Page 34: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Class DiagramClass Diagram

Page 35: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Implementation contd..Implementation contd..

The display proceeds independent of the cellular automaton.

At the end of every time step, each cell in the 2D lattice captures the current state of the cell and sends the information to the Display-Grid.

The display thread reads the information in the Display-Grid from time to time to update the display

The display proceeds independent of the cellular automaton.

At the end of every time step, each cell in the 2D lattice captures the current state of the cell and sends the information to the Display-Grid.

The display thread reads the information in the Display-Grid from time to time to update the display

Page 36: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Class DiagramClass Diagram

Page 37: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Implementation contd..Implementation contd..

At the beginning of each time step, a cell computes its current cost information (i.e. the cost of crossing that cell) and sends the cost information to the Cost-Grid.

Along with this cost information, a cell sends any associated routing requests (of the robots waiting at the junction in that cell).

The Route-Planner thread polls this Cost-Grid and processes all the routing requests.

At the beginning of each time step, a cell computes its current cost information (i.e. the cost of crossing that cell) and sends the cost information to the Cost-Grid.

Along with this cost information, a cell sends any associated routing requests (of the robots waiting at the junction in that cell).

The Route-Planner thread polls this Cost-Grid and processes all the routing requests.

Page 38: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Implementation contd..Implementation contd..

The Route-Planner has a thread pool. A thread from this thread pool is allocated to process each “routing request”.

The routing decisions are sent to the NextStep-Grid.

Each cell polls this NextStep-Grid to retrieve the routing decisions made by the Route-Planner.

The Route-Planner has a thread pool. A thread from this thread pool is allocated to process each “routing request”.

The routing decisions are sent to the NextStep-Grid.

Each cell polls this NextStep-Grid to retrieve the routing decisions made by the Route-Planner.

Page 39: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Class DiagramClass Diagram

Page 40: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Simulation ParametersSimulation Parameters

Page 41: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Code Code

33 classes organized into 5 packages main display store sync util

With about 4300 lines of code (including comments)

33 classes organized into 5 packages main display store sync util

With about 4300 lines of code (including comments)

Page 42: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Experimental AnalysisExperimental Analysis

The given algorithm can be used in two ways Static: Routing decision is made only

once for each request. Dynamic: Routing decision is made for

each busy robot whenever it reaches a four-way junction.

The given algorithm can be used in two ways Static: Routing decision is made only

once for each request. Dynamic: Routing decision is made for

each busy robot whenever it reaches a four-way junction.

Page 43: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Simulation dataSimulation data

Page 44: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ConclusionsConclusions

This project was aimed at exploring the possibilities of using the cellular automata concepts to perform robot route planning.

The program finds the quickest route for each robot and routes the robot to its destination.

By mapping the given problem to a cellular automaton we exploit the inherent parallelism involved in cellular automata.

This project was aimed at exploring the possibilities of using the cellular automata concepts to perform robot route planning.

The program finds the quickest route for each robot and routes the robot to its destination.

By mapping the given problem to a cellular automaton we exploit the inherent parallelism involved in cellular automata.

Page 45: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Conclusions contd..Conclusions contd..

The simulation can be used to determine the optimal number of robots required for a given workspace and request arrival rate.

The simulation helps us to determine the maximum and average number of requests waiting in the queue to be catered to.

This project serves as a base over which other routing algorithms can be plugged in and simulated to investigate the efficiency of the algorithm

The simulation can be used to determine the optimal number of robots required for a given workspace and request arrival rate.

The simulation helps us to determine the maximum and average number of requests waiting in the queue to be catered to.

This project serves as a base over which other routing algorithms can be plugged in and simulated to investigate the efficiency of the algorithm

Page 46: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

RecommendationsRecommendations

The size of the lattice, number of robots, inter-arrival time of requests, road length and request processing time were found to influence the system.

Eliminating loops in the dynamic algorithm. The processing time for all the requests was

assumed to be constant, the lattice was assumed to be perfectly two-dimensional and all the robots were assumed to be identical. These assumptions may not always be true.

The size of the lattice, number of robots, inter-arrival time of requests, road length and request processing time were found to influence the system.

Eliminating loops in the dynamic algorithm. The processing time for all the requests was

assumed to be constant, the lattice was assumed to be perfectly two-dimensional and all the robots were assumed to be identical. These assumptions may not always be true.

Page 47: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ReferencesReferences

[1] Stiles P. N and Glickstein I. S., “Highly parallelizable route planner based on cellular

automata algorithms”, IBM Journal of Research and Development, Volume 38.

[2] Behring. C, Bracho. M, Castro.M and Mareno J. A., “An Algorithm for Robot Path Planning with Cellular Automata”, Fourth International Conference on Cellular Automata for Research and Industry (ACRI) proceedings, Karlsruhe, Germany,

2000. http://www.ldc.usb.ve/~mcastro/papers/Acri2000Paper.PDF

[3] Adler J.L and Blue V.J., “Toward the design of Intelligent Traveler Information Systems”, Transportation Research Part C: Emerging Technologies 157-172 http://www.ulster.net/~vjblue/itis.pdf

[4] Yuan K.H, Hong A.C., Ang M. and Peng G.S., “Unmanned Library: An Intelligent Robotic Books Retrieval & Return System Utilizing RFID Tags”, IEEE Systems proceedings, Man and Cybernatics, 6-9 Oct 2002. http://www.cwc.nus.edu.sg/~cwcpub/zfiles/IEEE_Robotic_Librarian.pdf

[1] Stiles P. N and Glickstein I. S., “Highly parallelizable route planner based on cellular

automata algorithms”, IBM Journal of Research and Development, Volume 38.

[2] Behring. C, Bracho. M, Castro.M and Mareno J. A., “An Algorithm for Robot Path Planning with Cellular Automata”, Fourth International Conference on Cellular Automata for Research and Industry (ACRI) proceedings, Karlsruhe, Germany,

2000. http://www.ldc.usb.ve/~mcastro/papers/Acri2000Paper.PDF

[3] Adler J.L and Blue V.J., “Toward the design of Intelligent Traveler Information Systems”, Transportation Research Part C: Emerging Technologies 157-172 http://www.ulster.net/~vjblue/itis.pdf

[4] Yuan K.H, Hong A.C., Ang M. and Peng G.S., “Unmanned Library: An Intelligent Robotic Books Retrieval & Return System Utilizing RFID Tags”, IEEE Systems proceedings, Man and Cybernatics, 6-9 Oct 2002. http://www.cwc.nus.edu.sg/~cwcpub/zfiles/IEEE_Robotic_Librarian.pdf

Page 48: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ReferencesReferences

[5] “An Introduction to Storage and Retrieval Systems” an article by The Logistics Business. http://www.logistics.co.uk/db_pdf/pdf_14.pdf

[6] Dupuis A. and Chopard B., “Parallel Simulation of Traffic in Geneva Using Cellular

Automata”, Parallel and Distributed Computing Practices Journal, 1 (3): 79-92, Sep1998.

http://cui.unige.ch/~dupuis/Traffic/pdcp98.pdf

[7] Wolfram S., “Articles on Cellular Automata” http://www.stephenwolfram.com/publications/articles/ca

[8] Schatten A., “Cellular Automata Digital Worlds tutorial” http://www.ifs.tuwien.ac.at/~aschatt/info/ca/ca.html

[9] Weimar J.R., “Simulation with Cellular Automata” http://www.tu-bs.de/institute/WiR/weimar/ZAscript/ZAscript.html

[5] “An Introduction to Storage and Retrieval Systems” an article by The Logistics Business. http://www.logistics.co.uk/db_pdf/pdf_14.pdf

[6] Dupuis A. and Chopard B., “Parallel Simulation of Traffic in Geneva Using Cellular

Automata”, Parallel and Distributed Computing Practices Journal, 1 (3): 79-92, Sep1998.

http://cui.unige.ch/~dupuis/Traffic/pdcp98.pdf

[7] Wolfram S., “Articles on Cellular Automata” http://www.stephenwolfram.com/publications/articles/ca

[8] Schatten A., “Cellular Automata Digital Worlds tutorial” http://www.ifs.tuwien.ac.at/~aschatt/info/ca/ca.html

[9] Weimar J.R., “Simulation with Cellular Automata” http://www.tu-bs.de/institute/WiR/weimar/ZAscript/ZAscript.html

Page 49: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

ReferencesReferences

[10] Poisson Arrival Modelhttp://networks.ecse.rpi.edu/~vastola/pslinks/perf/node30.html

[10] Poisson Arrival Modelhttp://networks.ecse.rpi.edu/~vastola/pslinks/perf/node30.html

Page 50: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

AcknowledgementsAcknowledgements

Dr. Virgil Wallentine – Major Professor

Dr. Masaaki Mizuno – Supervisory Committee Member

Dr. Gurdip Singh - Supervisory Committee Member

Dr. Virgil Wallentine – Major Professor

Dr. Masaaki Mizuno – Supervisory Committee Member

Dr. Gurdip Singh - Supervisory Committee Member

Page 51: Robot Route Planning using Cellular Automata MS Report Shashidhar Rampally.

Comments