Troposphere (sic) Fliers

Slides:



Advertisements
Similar presentations
Jecho and Donatus Depth First and Breadth First Search.
Advertisements

Problem solving with graph search
AI Pathfinding Representing the Search Space
IKI 10100: Data Structures & Algorithms Ruli Manurung (acknowledgments to Denny & Ade Azurat) 1 Fasilkom UI Ruli Manurung (Fasilkom UI)IKI10100: Lecture10.
CS171 Introduction to Computer Science II Graphs Strike Back.
Graphs By JJ Shepherd. Introduction Graphs are simply trees with looser restrictions – You can have cycles Historically hard to deal with in computers.
The Shortest Path Problem. Shortest-Path Algorithms Find the “shortest” path from point A to point B “Shortest” in time, distance, cost, … Numerous.
CSE 780 Algorithms Advanced Algorithms Graph Algorithms Representations BFS.
Shortest path algorithm. Introduction 4 The graphs we have seen so far have edges that are unweighted. 4 Many graph situations involve weighted edges.
Graphs & Graph Algorithms 2 Fawzi Emad Chau-Wen Tseng Department of Computer Science University of Maryland, College Park.
1 Shortest Path Calculations in Graphs Prof. S. M. Lee Department of Computer Science.
Informed Search Idea: be smart about what paths to try.
Graphs II Robin Burke GAM 376. Admin Skip the Lua topic.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 223 – Advanced Data Structures Graph Algorithms Shortest-Path.
Chapter 9 – Graphs A graph G=(V,E) – vertices and edges
WAES 3308 Numerical Methods for AI
Representing and Using Graphs
Graphs Data Structures and Algorithms A. G. Malamos Reference Algorithms, 2006, S. Dasgupta, C. H. Papadimitriou, and U. V. Vazirani Introduction to Algorithms,Third.
Problem Solving by Searching Search Methods : informed (Heuristic) search.
Informed search strategies Idea: give the algorithm “hints” about the desirability of different states – Use an evaluation function to rank nodes and select.
Review: Tree search Initialize the frontier using the starting state While the frontier is not empty – Choose a frontier node to expand according to search.
1 Kuliah 4 : Informed Search. 2 Outline Best-First Search Greedy Search A* Search.
Graph Algorithms GAM 376 Robin Burke Fall Outline Graphs Theory Data structures Graph search Algorithms DFS BFS Project #1 Soccer Break Lab.
Solving problems by searching Uninformed search algorithms Discussion Class CS 171 Friday, October, 2nd (Please read lecture topic material before and.
For Monday Read chapter 4 exercise 1 No homework.
Graphs. What is a graph? In simple words, A graph is a set of vertices and edges which connect them. A node (or vertex) is a discrete position in the.
CSE 373: Data Structures and Algorithms Lecture 21: Graphs V 1.
Graphs – Part III CS 367 – Introduction to Data Structures.
Representing Graphs Depth First Search Breadth First Search Graph Searching Algorithms.
Chapter 3 Solving problems by searching. Search We will consider the problem of designing goal-based agents in observable, deterministic, discrete, known.
Chapter 3.5 Heuristic Search. Learning Objectives Heuristic search strategies –Best-first search –A* algorithm Heuristic functions.
Data Structures & Algorithm Analysis lec(8):Graph T. Souad alonazi
Graphs – Breadth First Search
Lecture 3: Uninformed Search
Review: Tree search Initialize the frontier using the starting state
CSE 373 Topological Sort Graph Traversals
CSC317 Graph algorithms Why bother?
CSE 2331/5331 Topic 9: Basic Graph Alg.
Artificial Intelligence (CS 370D)
Artificial Intelligence Problem solving by searching CSC 361
Maze Implementation, Analysis and Design to find Shortest Paths
Shortest Path Problems
Unweighted Shortest Path Neil Tang 3/11/2010
Tori Pruim, Simone Liu, Zach Parks
Algorithms for Exploration
Data Structures and Algorithms for Information Processing
Graphs & Graph Algorithms 2
Decision Maths Dijkstra’s Algorithm.
Graphs Chapter 11 Objectives Upon completion you will be able to:
Search Related Algorithms
CSE 373: Data Structures and Algorithms
Chapter 22: Elementary Graph Algorithms I
Lectures on Graph Algorithms: searching, testing and sorting
Graphs.
Shortest Path Problems
Graphs Part 2 Adjacency Matrix
Shortest Path Problems
Directed Graph Algorithms
The Rock Boxers: Tabitha Greenwood Cameron Meade Noah Cahan
Chapter 15 Graphs © 2006 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved.
CSE 373: Data Structures and Algorithms
HW 1: Warmup Missionaries and Cannibals
Graph Traversal Lecture 18 CS 2110 — Spring 2019.
CSE 373 Data Structures and Algorithms
Informed Search Idea: be smart about what paths to try.
HW 1: Warmup Missionaries and Cannibals
Informed Search Idea: be smart about what paths to try.
Search Strategies CMPT 420 / CMPG 720.
Supplemental slides for CSE 327 Prof. Jeff Heflin
More Graphs Lecture 19 CS2110 – Fall 2009.
Presentation transcript:

Troposphere (sic) Fliers By: Brantlee and Cliford

Introduction Create an system that can be overlaid to a map such that it can find a route between two points in a n x n grid. This can be useful for drones flights as there are no fly zones or large obstacles that can interfere with the optimal path. Therefore a route needs to found to make it to the destination.

Node Overlay

Informal Problem Using a directed graph find the path from any vertex A to any vertex B. Meaning go from one point to another.  

Formal Problem Given a directed Graph G(V) such that: V = set of vertices E = Set of edges which are the neighboring nodes e = edge(u,v) c = current nodevertex N = set of Vertex neighbors n = next Nodevertex s = start nodevertex f = end nodevertex Solution to find a path: Path is equal to the sequenceP = pn = {vs, v{e(0,0), e(0,1).. e(n,n)}vf} Graph size is equal to the set of vertices. The route is equal the sequence of starting vertex along the set of neighbors of the vertex until you reach the ending vertex.

Algorithms Used Breadth First Search A* algorithm

Breadth First Search Time Complexity: O(|V|+|E|) as every vertex and edge can be explored Space Complexity: O(|V|+|E|) dependent on implementation For this case the edges being up to six will be stored into an array. It’s a greedy best-first search. It uses a queuing system   Checks whether a vertex has been discovered before enqueueing.

A* algorithm F(n) = G(n) + H(n) F = total cost G = length from start H = length to end H value is the only value that remains a constant throughout. The G value is being updated based on the path taken to get to a particular cell.

A* Algorithm Cont.

What Not To Do Prime example of how not updating the cells properly can lead to..... not so desirable results. Thinking I've got it.... ….Thanks Clif!

A* In Action Using correct heuristics and updating the F cost in the cell and the G cost correctly. A* is finally able to find the quickest path between the green start cell and the red end cell

We believe the spikes are the No Soultion events Time Complexity A* Shows O(N log N) What are those spikes? We believe the spikes are the No Soultion events

Time Complexity What are those spikes? BFS Shows O(N^3) Because BFS already traverses all the nodes in its worst case scenario it isn't affected like A* when no solution is found.  N is equal to the number of vertices. As the number of vertices increased the longer it takes the algorithm to find the path. 

Questions Are there practical uses for using BFS? Yes, can be used in peer to peer networks and crawlers in search engines. Would BFS be an effective algorithm to finding a path using a drone? No, unless the goal was to cover as area as possible. Drones have limited battery and surveying all the land would not be as useful and would take a long time as the distance increases.  

Questions What is the F value of the blue square, with the cost to move set to 1? Is it faster to calculate the H value for each cell first, or to calculate the H value as it is needed? Answer: If the H value is calculated for each cell, the processing time will increase.  However in the event of a no solution having the H value already will make testing all cells quicker Answer:  H = 3, G = 5, F = 8

Hypothesis Breadth-First Perform better than Depth-First but not better than A*. A* Will find optimal route in the fastest time Use the least amount of memory