SlideShare une entreprise Scribd logo
1  sur  31
Convex Hull 1 4 5 3 6 2 1 0 ,[object Object]
 And a rubber band around them
 How does the rubber band look when it snaps tight?
 We represent the convex hull as the sequence of points on the convex hull polygon, in counter-clockwise order.By Ravikirankalal
Defination Informal definition: Convex hull of a set of points in plane is the shape taken by a rubber band stretched around the nails pounded into the plane at each point Convex hull of a set of points S is the set of all convex combinations of points of S  Convex hull of S is denoted by convS,                         	sometimes the notation          (S)   is  also used By Ravikirankalal
Extreme Points The extreme points of a set S of points in the plane are the vertices of the convex hull at which the interior angle is less than π  Also a point is extreme iff there exists a line through that point that other wise does not touch the convex hull By Ravikirankalal
Extreme Edges for each i do 						  for each j ≠ i do 					  		for each k ≠ i ≠ j do 			 		  if pkis not left or on (pi ,pj) 				then (pi ,pj)isnot extreme There are three nested loops in this algorithm  Hence the order is O(n3)  For each of the n2 pair of points, the test for extremeness costs n The vertices that are extreme can now be found By Ravikirankalal
Applications Computer Visualization, Ray Tracing, Video Games. Geographical Information Systems (GIS) - Computing Accessibility Maps Visual Pattern Matching - Detecting Car License Plates Path Finding - Embedded AI of Mars mission Rovers Replacement of Bounding Boxes By Ravikirankalal
Bounding box By Ravikirankalal
7 A B Convex Hull: Divide & Conquer ,[object Object]
 Divide the set of points into two sets A and B:
A contains the left n/2 points,
B contains the right n/2 points
Recursively compute the convex hull of A
Recursively compute the convex hull of B
Merge the two convex hullsBy Ravikirankalal
Merging in O(n) time 8 ,[object Object]
 Compute the convex hull of  AB:
 walk counterclockwise around the convex hull of A, starting with left endpoint of lower tangent
 when hitting the left endpoint of the upper tangent, cross over to the convex hull of B
 walk counterclockwise around the convex hull of B
 when hitting right endpoint of the lower tangent we’re done
This takes O(n) time4 5 3 6 2 7 1 A B By Ravikirankalal
Finding the lower tangent in O(n) time  9 3 a = rightmost point of A  b = leftmost point of B  while T=ab not lower tangent to both             convex hulls of A and B do{         while T not lower tangent to          convex hull of A do{            a=a-1        }        while T not lower tangent to           convex hull of B do{            b=b+1         } } 4=b 4 2 3 5 5 a=2 6 1 7 1 0 0 A B By Ravikirankalal
Convex Hull: Runtime 10 O(n log n)  just once ,[object Object]
 Divide the set of points into two sets A and B:
A contains the left n/2 points,
B contains the right n/2 points
Recursively compute the convex hull of A
Recursively compute the convex hull of B
Merge the two convex hullsO(1) T(n/2) T(n/2) O(n) By Ravikirankalal

Contenu connexe

Tendances

Fractional knapsack class 13
Fractional knapsack class 13Fractional knapsack class 13
Fractional knapsack class 13Kumar
 
CLOSEST PAIR (Final)
CLOSEST PAIR (Final)CLOSEST PAIR (Final)
CLOSEST PAIR (Final)Aruneel Das
 
Greedy Algorithm - Knapsack Problem
Greedy Algorithm - Knapsack ProblemGreedy Algorithm - Knapsack Problem
Greedy Algorithm - Knapsack ProblemMadhu Bala
 
Fundamentals of the Analysis of Algorithm Efficiency
Fundamentals of the Analysis of Algorithm EfficiencyFundamentals of the Analysis of Algorithm Efficiency
Fundamentals of the Analysis of Algorithm EfficiencySaranya Natarajan
 
Lecture 26 local beam search
Lecture 26 local beam searchLecture 26 local beam search
Lecture 26 local beam searchHema Kashyap
 
Algorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms IAlgorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms IMohamed Loey
 
Matrix chain multiplication
Matrix chain multiplicationMatrix chain multiplication
Matrix chain multiplicationRespa Peter
 
Multi-agent systems
Multi-agent systemsMulti-agent systems
Multi-agent systemsR A Akerkar
 
5.2 divide and conquer
5.2 divide and conquer5.2 divide and conquer
5.2 divide and conquerKrish_ver2
 

Tendances (20)

Divide and Conquer
Divide and ConquerDivide and Conquer
Divide and Conquer
 
Backtracking
Backtracking  Backtracking
Backtracking
 
Dijkstra's Algorithm
Dijkstra's Algorithm Dijkstra's Algorithm
Dijkstra's Algorithm
 
Fractional knapsack class 13
Fractional knapsack class 13Fractional knapsack class 13
Fractional knapsack class 13
 
CLOSEST PAIR (Final)
CLOSEST PAIR (Final)CLOSEST PAIR (Final)
CLOSEST PAIR (Final)
 
Greedy Algorithm - Knapsack Problem
Greedy Algorithm - Knapsack ProblemGreedy Algorithm - Knapsack Problem
Greedy Algorithm - Knapsack Problem
 
Asymptotic notation
Asymptotic notationAsymptotic notation
Asymptotic notation
 
Fundamentals of the Analysis of Algorithm Efficiency
Fundamentals of the Analysis of Algorithm EfficiencyFundamentals of the Analysis of Algorithm Efficiency
Fundamentals of the Analysis of Algorithm Efficiency
 
Divide and Conquer
Divide and ConquerDivide and Conquer
Divide and Conquer
 
Geometric algorithms
Geometric algorithmsGeometric algorithms
Geometric algorithms
 
Ontology engineering
Ontology engineering Ontology engineering
Ontology engineering
 
Lecture 26 local beam search
Lecture 26 local beam searchLecture 26 local beam search
Lecture 26 local beam search
 
Kmp
KmpKmp
Kmp
 
Algorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms IAlgorithms Lecture 2: Analysis of Algorithms I
Algorithms Lecture 2: Analysis of Algorithms I
 
Matrix chain multiplication
Matrix chain multiplicationMatrix chain multiplication
Matrix chain multiplication
 
Multi-agent systems
Multi-agent systemsMulti-agent systems
Multi-agent systems
 
5.2 divide and conquer
5.2 divide and conquer5.2 divide and conquer
5.2 divide and conquer
 
Parallel Algorithms
Parallel AlgorithmsParallel Algorithms
Parallel Algorithms
 
Approximation Algorithms
Approximation AlgorithmsApproximation Algorithms
Approximation Algorithms
 
Hill climbing
Hill climbingHill climbing
Hill climbing
 

En vedette

An Efficient Convex Hull Algorithm for a Planer Set of Points
An Efficient Convex Hull Algorithm for a Planer Set of PointsAn Efficient Convex Hull Algorithm for a Planer Set of Points
An Efficient Convex Hull Algorithm for a Planer Set of PointsKasun Ranga Wijeweera
 
Convex Hull Algorithm Analysis
Convex Hull Algorithm AnalysisConvex Hull Algorithm Analysis
Convex Hull Algorithm AnalysisRex Yuan
 
Convex Hull - Chan's Algorithm O(n log h) - Presentation by Yitian Huang and ...
Convex Hull - Chan's Algorithm O(n log h) - Presentation by Yitian Huang and ...Convex Hull - Chan's Algorithm O(n log h) - Presentation by Yitian Huang and ...
Convex Hull - Chan's Algorithm O(n log h) - Presentation by Yitian Huang and ...Amrinder Arora
 
morphological image processing
morphological image processingmorphological image processing
morphological image processingJohn Williams
 
Jarvis Algorithm Demonstration
Jarvis Algorithm DemonstrationJarvis Algorithm Demonstration
Jarvis Algorithm DemonstrationIsmália Santiago
 
Graham Algorithm Demonstration
Graham Algorithm DemonstrationGraham Algorithm Demonstration
Graham Algorithm DemonstrationIsmália Santiago
 
Convex Optimization
Convex OptimizationConvex Optimization
Convex Optimizationadil raja
 
project presentation on mouse simulation using finger tip detection
project presentation on mouse simulation using finger tip detection project presentation on mouse simulation using finger tip detection
project presentation on mouse simulation using finger tip detection Sumit Varshney
 
Linear programming graphical method (feasibility)
Linear programming   graphical method (feasibility)Linear programming   graphical method (feasibility)
Linear programming graphical method (feasibility)Rajesh Timane, PhD
 
Linear programming - Model formulation, Graphical Method
Linear programming  - Model formulation, Graphical MethodLinear programming  - Model formulation, Graphical Method
Linear programming - Model formulation, Graphical MethodJoseph Konnully
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximationmohamed_SAYARI
 

En vedette (20)

Convex Hull Algorithms
Convex Hull AlgorithmsConvex Hull Algorithms
Convex Hull Algorithms
 
An Efficient Convex Hull Algorithm for a Planer Set of Points
An Efficient Convex Hull Algorithm for a Planer Set of PointsAn Efficient Convex Hull Algorithm for a Planer Set of Points
An Efficient Convex Hull Algorithm for a Planer Set of Points
 
Convex Hull Algorithm Analysis
Convex Hull Algorithm AnalysisConvex Hull Algorithm Analysis
Convex Hull Algorithm Analysis
 
Convex hulls & Chan's algorithm
Convex hulls & Chan's algorithmConvex hulls & Chan's algorithm
Convex hulls & Chan's algorithm
 
Csc406 lecture7 device independence and normalization in Computer graphics(Co...
Csc406 lecture7 device independence and normalization in Computer graphics(Co...Csc406 lecture7 device independence and normalization in Computer graphics(Co...
Csc406 lecture7 device independence and normalization in Computer graphics(Co...
 
Convex Hull - Chan's Algorithm O(n log h) - Presentation by Yitian Huang and ...
Convex Hull - Chan's Algorithm O(n log h) - Presentation by Yitian Huang and ...Convex Hull - Chan's Algorithm O(n log h) - Presentation by Yitian Huang and ...
Convex Hull - Chan's Algorithm O(n log h) - Presentation by Yitian Huang and ...
 
morphological image processing
morphological image processingmorphological image processing
morphological image processing
 
Jarvis Algorithm Demonstration
Jarvis Algorithm DemonstrationJarvis Algorithm Demonstration
Jarvis Algorithm Demonstration
 
Approximation de ritter
Approximation de ritterApproximation de ritter
Approximation de ritter
 
Vector Tools
Vector ToolsVector Tools
Vector Tools
 
Graham Algorithm Demonstration
Graham Algorithm DemonstrationGraham Algorithm Demonstration
Graham Algorithm Demonstration
 
Cg
CgCg
Cg
 
Convex Optimization
Convex OptimizationConvex Optimization
Convex Optimization
 
project presentation on mouse simulation using finger tip detection
project presentation on mouse simulation using finger tip detection project presentation on mouse simulation using finger tip detection
project presentation on mouse simulation using finger tip detection
 
Unit 33 Optics
Unit 33   OpticsUnit 33   Optics
Unit 33 Optics
 
Linear programming graphical method (feasibility)
Linear programming   graphical method (feasibility)Linear programming   graphical method (feasibility)
Linear programming graphical method (feasibility)
 
Hand gesture recognition
Hand gesture recognitionHand gesture recognition
Hand gesture recognition
 
Gesture recognition
Gesture recognitionGesture recognition
Gesture recognition
 
Linear programming - Model formulation, Graphical Method
Linear programming  - Model formulation, Graphical MethodLinear programming  - Model formulation, Graphical Method
Linear programming - Model formulation, Graphical Method
 
Algorithmes d'approximation
Algorithmes d'approximationAlgorithmes d'approximation
Algorithmes d'approximation
 

Similaire à Convex Hull Algorithm Jarvis March

convexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHulls
convexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHulls
convexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsShanmuganathan C
 
A Tutorial on Computational Geometry
A Tutorial on Computational GeometryA Tutorial on Computational Geometry
A Tutorial on Computational GeometryMinh-Tri Pham
 
Unit ii divide and conquer -4
Unit ii divide and conquer -4Unit ii divide and conquer -4
Unit ii divide and conquer -4subhashchandra197
 
Trigonometric Function of General Angles Lecture
Trigonometric Function of General Angles LectureTrigonometric Function of General Angles Lecture
Trigonometric Function of General Angles LectureFroyd Wess
 
A sweepline algorithm for Voronoi Diagrams
A sweepline algorithm for Voronoi DiagramsA sweepline algorithm for Voronoi Diagrams
A sweepline algorithm for Voronoi DiagramsSweta Sharma
 
Mba admission in india
Mba admission in indiaMba admission in india
Mba admission in indiaEdhole.com
 
Chapter No. 8 Root Locus of control System
Chapter No. 8 Root Locus of control SystemChapter No. 8 Root Locus of control System
Chapter No. 8 Root Locus of control SystemPakizaNaeem2
 
Geometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftGeometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftDon Sheehy
 
Conference Poster: Discrete Symmetries of Symmetric Hypergraph States
Conference Poster: Discrete Symmetries of Symmetric Hypergraph StatesConference Poster: Discrete Symmetries of Symmetric Hypergraph States
Conference Poster: Discrete Symmetries of Symmetric Hypergraph StatesChase Yetter
 
ROOT-LOCUS METHOD, Determine the root loci on the real axis /the asymptotes o...
ROOT-LOCUS METHOD, Determine the root loci on the real axis /the asymptotes o...ROOT-LOCUS METHOD, Determine the root loci on the real axis /the asymptotes o...
ROOT-LOCUS METHOD, Determine the root loci on the real axis /the asymptotes o...Waqas Afzal
 
Mesh Shape Editing
Mesh Shape EditingMesh Shape Editing
Mesh Shape Editingssuser24ddad
 

Similaire à Convex Hull Algorithm Jarvis March (20)

convexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHulls
convexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHulls
convexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHullsconvexHulls
 
Control chap7
Control chap7Control chap7
Control chap7
 
A Tutorial on Computational Geometry
A Tutorial on Computational GeometryA Tutorial on Computational Geometry
A Tutorial on Computational Geometry
 
Unit ii divide and conquer -4
Unit ii divide and conquer -4Unit ii divide and conquer -4
Unit ii divide and conquer -4
 
cupdf.com_control-chap7.ppt
cupdf.com_control-chap7.pptcupdf.com_control-chap7.ppt
cupdf.com_control-chap7.ppt
 
curve one
curve onecurve one
curve one
 
6869212.ppt
6869212.ppt6869212.ppt
6869212.ppt
 
Elhabian_curves10.pdf
Elhabian_curves10.pdfElhabian_curves10.pdf
Elhabian_curves10.pdf
 
Trigonometric Function of General Angles Lecture
Trigonometric Function of General Angles LectureTrigonometric Function of General Angles Lecture
Trigonometric Function of General Angles Lecture
 
A sweepline algorithm for Voronoi Diagrams
A sweepline algorithm for Voronoi DiagramsA sweepline algorithm for Voronoi Diagrams
A sweepline algorithm for Voronoi Diagrams
 
Mba admission in india
Mba admission in indiaMba admission in india
Mba admission in india
 
Curve clipping
Curve clippingCurve clipping
Curve clipping
 
Chapter No. 8 Root Locus of control System
Chapter No. 8 Root Locus of control SystemChapter No. 8 Root Locus of control System
Chapter No. 8 Root Locus of control System
 
Geometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftGeometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic Lift
 
Lecture24
Lecture24Lecture24
Lecture24
 
Conference Poster: Discrete Symmetries of Symmetric Hypergraph States
Conference Poster: Discrete Symmetries of Symmetric Hypergraph StatesConference Poster: Discrete Symmetries of Symmetric Hypergraph States
Conference Poster: Discrete Symmetries of Symmetric Hypergraph States
 
Vectors and 3 d
Vectors and 3 dVectors and 3 d
Vectors and 3 d
 
ROOT-LOCUS METHOD, Determine the root loci on the real axis /the asymptotes o...
ROOT-LOCUS METHOD, Determine the root loci on the real axis /the asymptotes o...ROOT-LOCUS METHOD, Determine the root loci on the real axis /the asymptotes o...
ROOT-LOCUS METHOD, Determine the root loci on the real axis /the asymptotes o...
 
Vectorsandscalars
VectorsandscalarsVectorsandscalars
Vectorsandscalars
 
Mesh Shape Editing
Mesh Shape EditingMesh Shape Editing
Mesh Shape Editing
 

Dernier

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 

Dernier (20)

Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 

Convex Hull Algorithm Jarvis March

  • 1.
  • 2. And a rubber band around them
  • 3. How does the rubber band look when it snaps tight?
  • 4. We represent the convex hull as the sequence of points on the convex hull polygon, in counter-clockwise order.By Ravikirankalal
  • 5. Defination Informal definition: Convex hull of a set of points in plane is the shape taken by a rubber band stretched around the nails pounded into the plane at each point Convex hull of a set of points S is the set of all convex combinations of points of S Convex hull of S is denoted by convS, sometimes the notation (S) is also used By Ravikirankalal
  • 6. Extreme Points The extreme points of a set S of points in the plane are the vertices of the convex hull at which the interior angle is less than π Also a point is extreme iff there exists a line through that point that other wise does not touch the convex hull By Ravikirankalal
  • 7. Extreme Edges for each i do for each j ≠ i do for each k ≠ i ≠ j do if pkis not left or on (pi ,pj) then (pi ,pj)isnot extreme There are three nested loops in this algorithm Hence the order is O(n3) For each of the n2 pair of points, the test for extremeness costs n The vertices that are extreme can now be found By Ravikirankalal
  • 8. Applications Computer Visualization, Ray Tracing, Video Games. Geographical Information Systems (GIS) - Computing Accessibility Maps Visual Pattern Matching - Detecting Car License Plates Path Finding - Embedded AI of Mars mission Rovers Replacement of Bounding Boxes By Ravikirankalal
  • 9. Bounding box By Ravikirankalal
  • 10.
  • 11. Divide the set of points into two sets A and B:
  • 12. A contains the left n/2 points,
  • 13. B contains the right n/2 points
  • 14. Recursively compute the convex hull of A
  • 15. Recursively compute the convex hull of B
  • 16. Merge the two convex hullsBy Ravikirankalal
  • 17.
  • 18. Compute the convex hull of AB:
  • 19. walk counterclockwise around the convex hull of A, starting with left endpoint of lower tangent
  • 20. when hitting the left endpoint of the upper tangent, cross over to the convex hull of B
  • 21. walk counterclockwise around the convex hull of B
  • 22. when hitting right endpoint of the lower tangent we’re done
  • 23. This takes O(n) time4 5 3 6 2 7 1 A B By Ravikirankalal
  • 24. Finding the lower tangent in O(n) time 9 3 a = rightmost point of A b = leftmost point of B while T=ab not lower tangent to both convex hulls of A and B do{ while T not lower tangent to convex hull of A do{ a=a-1 } while T not lower tangent to convex hull of B do{ b=b+1 } } 4=b 4 2 3 5 5 a=2 6 1 7 1 0 0 A B By Ravikirankalal
  • 25.
  • 26. Divide the set of points into two sets A and B:
  • 27. A contains the left n/2 points,
  • 28. B contains the right n/2 points
  • 29. Recursively compute the convex hull of A
  • 30. Recursively compute the convex hull of B
  • 31. Merge the two convex hullsO(1) T(n/2) T(n/2) O(n) By Ravikirankalal
  • 32.
  • 33. Quickhull QuickHull uses a divide and conquer approach similar to the QuickSort algorithm. Benchmarks showed it is quite fast in most average cases. Recursive nature allows a fast and yet clean implementation. By Ravikirankalal
  • 34. Initial input The initial input to the algorithm is an arbitrary set of points. By Ravikirankalal
  • 35. First two points on the convex hull Starting with the given set of points the first operation done is the calculation of the two maximal points on the horizontal axis. By Ravikirankalal
  • 36. Recursively divide Next the line formed by these two points is used to divide the set into two different parts. Everything left from this line is considered one part, everything right of it is considered another one. Both of these parts are processed recursively. By Ravikirankalal
  • 37. Max distance search To determine the next point on the convex hull a search for the point with the greatest distance from the dividing line is done. This point, together with the line start and end point forms a triangle. By Ravikirankalal
  • 38. Point exclusion All points inside this triangle can not be part of the convex hull polygon, as they are obviously lying in the convex hull of the three selected points. Therefore these points can be ignored for every further processing step. By Ravikirankalal
  • 39. Recursively divide Having this in mind the recursive processing can take place again. Everything right of the triangle is used as one subset, everything left of it as another one. By Ravikirankalal
  • 40. Abort condition At some point the recursively processed point subset does only contain the start and end point of the dividing line. If this is case this line has to be a segment of the searched hull polygon and the recursion can come to an end. By Ravikirankalal
  • 41. Running time The running time of Quickhull, as with QuickSort, depends on how evenly the points are split at each stage. T(n) = 1 if n = 1 T(n1) + T (n2) otherwise where n1+n2<=n If we assume that the points are ``evenly'' distributed, the running time will solve to O(n log n). if the splits are not balanced, then the running time can easily increase to O(n^2). By Ravikirankalal
  • 42. Think of wrapping a gift. Put the paper in contact with the gift and continue to wrap around from one surface to the next until you get all the way around. By Ravikirankalal
  • 43.
  • 44. The order is O(n2)
  • 45. The cost is O(n) for each hull edge
  • 46. The point set is wrapped by a string that bends the that bends with minimum angle from previous to next hull edge By Ravikirankalal
  • 47. Jarvis March - Example p10 p6 p9 p5 p7 p12 p3 p4 p11 p1 p8 p2 p0 By Ravikirankalal
  • 48. Jarvis March - Example p10 p6 p9 p5 p7 p12 p3 p4 p11 p1 p8 p2 p0 By Ravikirankalal
  • 49. Jarvis March - Example p10 p6 p9 p5 p7 p12 p3 p4 p11 p1 p8 p2 p0 By Ravikirankalal
  • 50. Jarvis March - Example p10 p6 p9 p5 p7 p12 p3 p4 p11 p1 p8 p2 p0 By Ravikirankalal
  • 51. Jarvis March - Example p10 p6 p9 p5 p7 p12 p3 p4 p11 p1 p8 p2 p0 By Ravikirankalal
  • 52. Jarvis March - Example p10 p6 p9 p5 p7 p12 p3 p4 p11 p1 p8 p2 p0 By Ravikirankalal
  • 53. Jarvis March - Example p10 p6 p9 p5 p7 p12 p3 p4 p11 p1 p8 p2 p0 By Ravikirankalal
  • 54. Running time we can find the point q in O(n) time. After repeating this h times, we will return back to the starting point and we are done. Thus, the overall running time is O(nh). Worst case efficiency will be n2. By Ravikirankalal