SlideShare uma empresa Scribd logo
1 de 42
Baixar para ler offline
APPLICATIONS OF GRAPHS
GRAPHS
•   Graph theory has turned out to be a vast area with
    innumerable applications in the field of social
    networks , data organization , communication
    network and so on…

•   We have considered here
        1.Dijkstra’s algorithm
        2. Fingerprint classification using graph theory
DIJKSTRA’S
ALGORITHM
DIJKSTRA’S ALGORITHM
•   Djikstra's algorithm (named after its discover, E.W.
    Dijkstra) solves the problem of finding the shortest path
    from a point in a graph (the source) to a destination.

•    It turns out that one can find the shortest paths from a
    given source to all points in a graph in the same time,
    hence this problem is sometimes called the single-
    source shortest paths problem.
•   Given a network of cities and the distances between
    them, the objective of the single-source, shortest-
    path problem is to find the shortest path from a city
    to all other cities connected to it.

•   The network of cities with their distances is
    represented as a weighted graph.
• Let V be a set of N cities (vertices) of the digraph. Here
  the source city is 1.
• The set T is initialized to city 1.
• The DISTANCE vector, DISTANCE [2:N] initially records
  the distances of cities 2 to N connected to the source
  by an edge (not path!)
                             60
                    2                      3




                                       30
               20       40        4




                                               20
                 1


                                      70
                                      110
             SOURCE                        5
•   If there is no edge directly connecting the city to
    source, then we initialize its DISTANCE value to ‘∞’
•   Once the algorithm completes iterations, the
    DISTANCE vector holds the shortest distance of two
    cities 2 to N from the source city 1
•   It is convenient to represent the weighted digraph
    using its cost matrix COSTN x N
•   The cost matrix records the distances between cities
    connected by an edge.
•   Dijkstra’s algorithm has a complexity of O(N 2) where N
    is the number of vertices (cities) in the weighted
    digraph
DIJKSTRA’S ALGORITHM
Procedure DIJKSTRA_SSSP(N, COST)

/* N is the number of vertices labeled {1,2,3,….,N} of the weighted digraph. If
   there is no edge then COST [I, j] = ∞ */
/* The procedure computes the cost of the shortest path from vertex 1 the
   source, to every other vertex of the weighted digraph */

T = {1};                  /* initialize T to source vertex */
for i = 2 to N do
        DISTANCE [i] = COST [1,i];

/* initialize DISTANCE vector to the cost of the edges connecting vertex I with
   the source vertex 1. If there is no edge then COST[1,i] = ∞ */
for i = 1 to N-1 do
   Choose a vertex u in V – T such that DISTANCE [u] is a
minimum;
   Add u to T;
        for each vertex w in V – T do

   DISTANCE [w] = minimum ( DISTANCE [w] , DISTANCE [u]
             + COST [u ,w]);

       end
   end
 end DIJKSTRA_SSSP
EXAMPLE
 •       Consider the weighted graph of cities and its cost matrix
         given below.

              60                          1   2     3      4     5
     2                      3        1    0   20    ∞      40    110
                                     2    ∞   0     60     ∞     ∞
                        30
20




         40        4

                                20
                                     3    ∞   ∞     0      ∞     20
 1
                                     4    ∞   ∞     30     0     70
                       70




                                     5    ∞   ∞     ∞      ∞     0
SOURCE
                            5
     WEIGHTED GRAPH                           COST MATRIX C5X5
Trace of The Table following that shows the trace of the
Dijkstra’s algorithm
•   The DISTANCE vector in the last iteration records the
    shortest distance of the vertices {2,3,4,5} from the source
    vertex 1.

•   To reconstruct the shortest path from the source vertex to
    all other vertices, a vector PREDECESSOR [1:N] where
    PREDECESSOR [v] records the predecessor of vertex v in the
    shortest path, is maintained.

•   PREDECESSOR [1:N] is initialized to source for all v != source
•   PREDECESSOR [1:N] is updated by

       if (( DISTANCE [u] + COST [u, w]) < DISTANCE [w])
          then PREDECESSOR [w] = u

    soon after DISTANCE [w] = minimum ( DISTANCE [w] ,
    DISTANCE [u] + COST [u ,w]) is computed in procedure
    DIJKSTRA_SSS

•   To trace the shortest path we move backwards from the
    destination vertex, hopping on the predecessors recorded by
    the PREDECESSOR vector until the source vertex is reached
EXAMPLE
•   To trace the paths of the vertices from vertex 1 using
    Dijkstra’s algorithm, inclusion of the statement updating
    PREDECESSOR vector results in
• To trace the shortest path from source 1 to vertex 5, we move
  in the reverse direction from vertex 5 hopping on the
  predecessors until the source vertex is reached. The shortest
  path is given by

  PREDECESSOR(5)=3 PREDECESSOR(3)=4 PREDECESSOR(4)=1




   Vertex 5      Vertex 3       Vertex 4       Source Vertex 1

   Thus the shortest path between vertex 1 and vertex 5 is
   1-4-3-5 and the distance is given by DISTANCE [5] is 90
FINGERPRINT
RECOGNITION
USING GRAPH
REPRESENTATIO
N
The three characteristics of FINGER PRINTS are:

1. There are no similar fingerprints in the world.
2. Fingerprints are unchangeable.
3. Fingerprints are one of the unique features for
   identification systems.
FINGERPRINT TYPES




The lines that flow in various patterns across fingerprints
are called Ridges and the space between ridges are
Valleys.
Cont..




Types of patterns in   1 and 2 are terminations.
Fingerprint.           3 is bifurcation.
MINUTE, CORE AND DELTA




                                 Core – The places where the ridges
Minute – The places at which
                                 form a half circle.
the ridges intersects or ends.
                                 Delta – The places where the ridges
                                 form a triangle.
DIFFERENT CLASSIFICATION
OLD METHOD
NEW METHOD
PROCESS FLOW
FINGERPRINT CAPTURE DEVICES
SEGMENTATION OF DIRECTIONAL IMAGE
Applications of graphs
SEGMENTATION
CONSTRUCTION OF RELATED WEIGHT
            GRAPH
    Graph can be shown by G index including four
parameters of G= (V, E, μ,υ).

where
V is number of nodes.
E is number of edges.
μ is weight of nodes.
υ is weight of edges.
Some information can be used in constructing the graph
   related to a finger print like:

• Centre of gravity of regions.
• The direction related to the elements of the various
  regions.
• The area of all the regions.
• The distance between centres of gravity.
• The perimeter of regions.
WEIGHTAGE TO NODES AND EDGES
Wn = Area (Ri)
where
     i = 1,2,3,……,n.
     Wn is the weight of nodes .
      Ri is the specified region in block directional image.


We = (Adj − p) × (Node − d) × (Diff −v)
where
      Adj-p is the boundary of two adjacent regions linking with an edge.
      Node-d is the distance difference between nodes that links by an edge
      Diff-v is the phase difference or direction difference between two
regions of block directional image.
The nodes are placed in the centre of gravity of
each region. The nodes size vary according to the
weight. The edges are shown by the lines and the
thickness is proportional to the weight .
CONSTRUCTING SUPER GRAPH
    We combine the properties of the Graph and model of the
    Super Graph to form,

•   A node for region with similar directions.
•   Its co-ordinates is the centre of gravity related to those
    regions of the graph.
WEIGHTAGE TO sNODES AND sEDGES
Wsn = nΣi=1 Area (Ri)
Where
Area (Ri) is the area of all regions with similar directions.
Ri includes regions with similar directions.

Wse = dis(sn) + Σ Adj-p(Ri,Rj)
Where
 Wse is the weight of edges in super graph.
 dis(sn) is the distance between nodes of a super graph.
 Adj-p is the sum of the adjacent perimeter between two
regions.
SUPER GRAPH
            The obtained block
             directional image have
             four directions, so we have
             four nodes.
            All the nodes are
             connected with the other
             three edges.
            If the number of nodes are
             high, its takes much time
             to find a match.
RETRIEVING THE FINGERPRINTS
•   Fingerprints are classified according to their structure.
•   A sample from each structure is taken for comparison.

    Cost Function = (Σi (Wi.node – *Wi.node )) * (Σj (Wj.edge - *Wj.edge))

    where
    Wi.node and Wj.edge are the node weight and edge weight of
    the Super graph.
    *
     Wi.node and *Wj.edge are the node weight and edge weight of
    model super graph.
• Different classifications give different cost value.Among
  that the lowest cost value function is taken and the
  comparison of the fingerprint proceeds in that class.

• By this method high accuracy is achieved in short
  comparison time.

• Previously FBI used 3 major classifications for matching the
  fingerprints and they had many sub-classifications.

• But now they use around 10 major classifications and
  many sub-classifications which gives them a fast result.
SOME MORE INTERESTING
   APPLICATIONS…..
EPIDEMOLOGY
• Networks model used to represent the
spread of infectious diseases and design
prevention and response strategies.

• Vertices represent individuals, and edges
their possible contacts. It is useful to
calculate how a particular individual is
connected to others.

• Knowing the shortest path lengths to
other individuals can be a relevant
indicator of the potential of a particular
individual to infect others.
SOCIAL NETWORKS
NETWORKS (ROADS, FLIGHTS,
         COMMUNICATIONS)



                                    JFK

        LAX               STL
HNL
                    DFW
                                  HJK
THANK YOU!!!

Mais conteúdo relacionado

Mais procurados

introduction to graph theory
introduction to graph theoryintroduction to graph theory
introduction to graph theoryChuckie Balbuena
 
Cs6702 graph theory and applications 2 marks questions and answers
Cs6702 graph theory and applications 2 marks questions and answersCs6702 graph theory and applications 2 marks questions and answers
Cs6702 graph theory and applications 2 marks questions and answersappasami
 
Graph representation
Graph representationGraph representation
Graph representationTech_MX
 
Dijkstra algorithm a dynammic programming approach
Dijkstra algorithm   a dynammic programming approachDijkstra algorithm   a dynammic programming approach
Dijkstra algorithm a dynammic programming approachAkash Sethiya
 
Graph Theory Introduction
Graph Theory IntroductionGraph Theory Introduction
Graph Theory IntroductionMANISH T I
 
Application Of Graph Data Structure
Application Of Graph Data StructureApplication Of Graph Data Structure
Application Of Graph Data StructureGaurang Dobariya
 
Graphs in Data Structure
 Graphs in Data Structure Graphs in Data Structure
Graphs in Data Structurehafsa komal
 
Introduction to Graph Theory
Introduction to Graph TheoryIntroduction to Graph Theory
Introduction to Graph Theory Kazi Md. Saidul
 
Minimum spanning tree
Minimum spanning treeMinimum spanning tree
Minimum spanning treeAmit Rathi
 
Dijkstra's algorithm presentation
Dijkstra's algorithm presentationDijkstra's algorithm presentation
Dijkstra's algorithm presentationSubid Biswas
 
Data structure computer graphs
Data structure computer graphsData structure computer graphs
Data structure computer graphsKumar
 
Dijkstra’S Algorithm
Dijkstra’S AlgorithmDijkstra’S Algorithm
Dijkstra’S Algorithmami_01
 

Mais procurados (20)

Graph theory
Graph theoryGraph theory
Graph theory
 
introduction to graph theory
introduction to graph theoryintroduction to graph theory
introduction to graph theory
 
graph theory
graph theory graph theory
graph theory
 
Graph Theory
Graph TheoryGraph Theory
Graph Theory
 
Cs6702 graph theory and applications 2 marks questions and answers
Cs6702 graph theory and applications 2 marks questions and answersCs6702 graph theory and applications 2 marks questions and answers
Cs6702 graph theory and applications 2 marks questions and answers
 
Graph representation
Graph representationGraph representation
Graph representation
 
Graph theory
Graph  theoryGraph  theory
Graph theory
 
Dijkstra algorithm a dynammic programming approach
Dijkstra algorithm   a dynammic programming approachDijkstra algorithm   a dynammic programming approach
Dijkstra algorithm a dynammic programming approach
 
Graph Theory Introduction
Graph Theory IntroductionGraph Theory Introduction
Graph Theory Introduction
 
Graph theory
Graph theory Graph theory
Graph theory
 
Application Of Graph Data Structure
Application Of Graph Data StructureApplication Of Graph Data Structure
Application Of Graph Data Structure
 
Graphs in Data Structure
 Graphs in Data Structure Graphs in Data Structure
Graphs in Data Structure
 
Graph theory
Graph theoryGraph theory
Graph theory
 
Euler graph
Euler graphEuler graph
Euler graph
 
Introduction to Graph Theory
Introduction to Graph TheoryIntroduction to Graph Theory
Introduction to Graph Theory
 
Minimum spanning tree
Minimum spanning treeMinimum spanning tree
Minimum spanning tree
 
Dijkstra's algorithm presentation
Dijkstra's algorithm presentationDijkstra's algorithm presentation
Dijkstra's algorithm presentation
 
Graph Theory
Graph TheoryGraph Theory
Graph Theory
 
Data structure computer graphs
Data structure computer graphsData structure computer graphs
Data structure computer graphs
 
Dijkstra’S Algorithm
Dijkstra’S AlgorithmDijkstra’S Algorithm
Dijkstra’S Algorithm
 

Semelhante a Applications of graphs

Semelhante a Applications of graphs (20)

Lecture 5b graphs and hashing
Lecture 5b graphs and hashingLecture 5b graphs and hashing
Lecture 5b graphs and hashing
 
10.graph
10.graph10.graph
10.graph
 
Unit II_Graph.pptxkgjrekjgiojtoiejhgnltegjte
Unit II_Graph.pptxkgjrekjgiojtoiejhgnltegjteUnit II_Graph.pptxkgjrekjgiojtoiejhgnltegjte
Unit II_Graph.pptxkgjrekjgiojtoiejhgnltegjte
 
Graph in data structure
Graph in data structureGraph in data structure
Graph in data structure
 
Optimisation random graph presentation
Optimisation random graph presentationOptimisation random graph presentation
Optimisation random graph presentation
 
Unit ix graph
Unit   ix    graph Unit   ix    graph
Unit ix graph
 
Unit 9 graph
Unit   9 graphUnit   9 graph
Unit 9 graph
 
Graph Algorithms
Graph AlgorithmsGraph Algorithms
Graph Algorithms
 
Graphs in data structures
Graphs in data structuresGraphs in data structures
Graphs in data structures
 
Dijkstra
DijkstraDijkstra
Dijkstra
 
d
dd
d
 
Application Of vector Integration and all
Application Of vector Integration and allApplication Of vector Integration and all
Application Of vector Integration and all
 
Dijkstra.ppt
Dijkstra.pptDijkstra.ppt
Dijkstra.ppt
 
Lecture 14 data structures and algorithms
Lecture 14 data structures and algorithmsLecture 14 data structures and algorithms
Lecture 14 data structures and algorithms
 
logic.pptx
logic.pptxlogic.pptx
logic.pptx
 
Chap10 slides
Chap10 slidesChap10 slides
Chap10 slides
 
Floyd aaaaaa
Floyd aaaaaaFloyd aaaaaa
Floyd aaaaaa
 
Social network analysis
Social network analysisSocial network analysis
Social network analysis
 
Graph Theory,Graph Terminologies,Planar Graph & Graph Colouring
Graph Theory,Graph Terminologies,Planar Graph & Graph ColouringGraph Theory,Graph Terminologies,Planar Graph & Graph Colouring
Graph Theory,Graph Terminologies,Planar Graph & Graph Colouring
 
06 Vector Visualization
06 Vector Visualization06 Vector Visualization
06 Vector Visualization
 

Mais de Tech_MX

Virtual base class
Virtual base classVirtual base class
Virtual base classTech_MX
 
Theory of estimation
Theory of estimationTheory of estimation
Theory of estimationTech_MX
 
Templates in C++
Templates in C++Templates in C++
Templates in C++Tech_MX
 
String & its application
String & its applicationString & its application
String & its applicationTech_MX
 
Statistical quality__control_2
Statistical  quality__control_2Statistical  quality__control_2
Statistical quality__control_2Tech_MX
 
Stack data structure
Stack data structureStack data structure
Stack data structureTech_MX
 
Stack Data Structure & It's Application
Stack Data Structure & It's Application Stack Data Structure & It's Application
Stack Data Structure & It's Application Tech_MX
 
Spanning trees & applications
Spanning trees & applicationsSpanning trees & applications
Spanning trees & applicationsTech_MX
 
Set data structure 2
Set data structure 2Set data structure 2
Set data structure 2Tech_MX
 
Set data structure
Set data structure Set data structure
Set data structure Tech_MX
 
Real time Operating System
Real time Operating SystemReal time Operating System
Real time Operating SystemTech_MX
 
Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Tech_MX
 
Motherboard of a pc
Motherboard of a pcMotherboard of a pc
Motherboard of a pcTech_MX
 
More on Lex
More on LexMore on Lex
More on LexTech_MX
 
MultiMedia dbms
MultiMedia dbmsMultiMedia dbms
MultiMedia dbmsTech_MX
 
Merging files (Data Structure)
Merging files (Data Structure)Merging files (Data Structure)
Merging files (Data Structure)Tech_MX
 
Memory dbms
Memory dbmsMemory dbms
Memory dbmsTech_MX
 

Mais de Tech_MX (20)

Virtual base class
Virtual base classVirtual base class
Virtual base class
 
Uid
UidUid
Uid
 
Theory of estimation
Theory of estimationTheory of estimation
Theory of estimation
 
Templates in C++
Templates in C++Templates in C++
Templates in C++
 
String & its application
String & its applicationString & its application
String & its application
 
Statistical quality__control_2
Statistical  quality__control_2Statistical  quality__control_2
Statistical quality__control_2
 
Stack data structure
Stack data structureStack data structure
Stack data structure
 
Stack Data Structure & It's Application
Stack Data Structure & It's Application Stack Data Structure & It's Application
Stack Data Structure & It's Application
 
Spss
SpssSpss
Spss
 
Spanning trees & applications
Spanning trees & applicationsSpanning trees & applications
Spanning trees & applications
 
Set data structure 2
Set data structure 2Set data structure 2
Set data structure 2
 
Set data structure
Set data structure Set data structure
Set data structure
 
Real time Operating System
Real time Operating SystemReal time Operating System
Real time Operating System
 
Parsing
ParsingParsing
Parsing
 
Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)Mouse interrupts (Assembly Language & C)
Mouse interrupts (Assembly Language & C)
 
Motherboard of a pc
Motherboard of a pcMotherboard of a pc
Motherboard of a pc
 
More on Lex
More on LexMore on Lex
More on Lex
 
MultiMedia dbms
MultiMedia dbmsMultiMedia dbms
MultiMedia dbms
 
Merging files (Data Structure)
Merging files (Data Structure)Merging files (Data Structure)
Merging files (Data Structure)
 
Memory dbms
Memory dbmsMemory dbms
Memory dbms
 

Último

How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8DianaGray10
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Brian Pichman
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfJamie (Taka) Wang
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDELiveplex
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPathCommunity
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Will Schroeder
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6DianaGray10
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 

Último (20)

How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8UiPath Studio Web workshop series - Day 8
UiPath Studio Web workshop series - Day 8
 
Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )Building Your Own AI Instance (TBLC AI )
Building Your Own AI Instance (TBLC AI )
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
activity_diagram_combine_v4_20190827.pdfactivity_diagram_combine_v4_20190827.pdf
 
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDEADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
ADOPTING WEB 3 FOR YOUR BUSINESS: A STEP-BY-STEP GUIDE
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
UiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation DevelopersUiPath Community: AI for UiPath Automation Developers
UiPath Community: AI for UiPath Automation Developers
 
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
Apres-Cyber - The Data Dilemma: Bridging Offensive Operations and Machine Lea...
 
UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6UiPath Studio Web workshop series - Day 6
UiPath Studio Web workshop series - Day 6
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 

Applications of graphs

  • 2. GRAPHS • Graph theory has turned out to be a vast area with innumerable applications in the field of social networks , data organization , communication network and so on… • We have considered here 1.Dijkstra’s algorithm 2. Fingerprint classification using graph theory
  • 4. DIJKSTRA’S ALGORITHM • Djikstra's algorithm (named after its discover, E.W. Dijkstra) solves the problem of finding the shortest path from a point in a graph (the source) to a destination. • It turns out that one can find the shortest paths from a given source to all points in a graph in the same time, hence this problem is sometimes called the single- source shortest paths problem.
  • 5. Given a network of cities and the distances between them, the objective of the single-source, shortest- path problem is to find the shortest path from a city to all other cities connected to it. • The network of cities with their distances is represented as a weighted graph.
  • 6. • Let V be a set of N cities (vertices) of the digraph. Here the source city is 1. • The set T is initialized to city 1. • The DISTANCE vector, DISTANCE [2:N] initially records the distances of cities 2 to N connected to the source by an edge (not path!) 60 2 3 30 20 40 4 20 1 70 110 SOURCE 5
  • 7. If there is no edge directly connecting the city to source, then we initialize its DISTANCE value to ‘∞’ • Once the algorithm completes iterations, the DISTANCE vector holds the shortest distance of two cities 2 to N from the source city 1 • It is convenient to represent the weighted digraph using its cost matrix COSTN x N • The cost matrix records the distances between cities connected by an edge. • Dijkstra’s algorithm has a complexity of O(N 2) where N is the number of vertices (cities) in the weighted digraph
  • 8. DIJKSTRA’S ALGORITHM Procedure DIJKSTRA_SSSP(N, COST) /* N is the number of vertices labeled {1,2,3,….,N} of the weighted digraph. If there is no edge then COST [I, j] = ∞ */ /* The procedure computes the cost of the shortest path from vertex 1 the source, to every other vertex of the weighted digraph */ T = {1}; /* initialize T to source vertex */ for i = 2 to N do DISTANCE [i] = COST [1,i]; /* initialize DISTANCE vector to the cost of the edges connecting vertex I with the source vertex 1. If there is no edge then COST[1,i] = ∞ */
  • 9. for i = 1 to N-1 do Choose a vertex u in V – T such that DISTANCE [u] is a minimum; Add u to T; for each vertex w in V – T do DISTANCE [w] = minimum ( DISTANCE [w] , DISTANCE [u] + COST [u ,w]); end end end DIJKSTRA_SSSP
  • 10. EXAMPLE • Consider the weighted graph of cities and its cost matrix given below. 60 1 2 3 4 5 2 3 1 0 20 ∞ 40 110 2 ∞ 0 60 ∞ ∞ 30 20 40 4 20 3 ∞ ∞ 0 ∞ 20 1 4 ∞ ∞ 30 0 70 70 5 ∞ ∞ ∞ ∞ 0 SOURCE 5 WEIGHTED GRAPH COST MATRIX C5X5
  • 11. Trace of The Table following that shows the trace of the Dijkstra’s algorithm
  • 12. The DISTANCE vector in the last iteration records the shortest distance of the vertices {2,3,4,5} from the source vertex 1. • To reconstruct the shortest path from the source vertex to all other vertices, a vector PREDECESSOR [1:N] where PREDECESSOR [v] records the predecessor of vertex v in the shortest path, is maintained. • PREDECESSOR [1:N] is initialized to source for all v != source
  • 13. PREDECESSOR [1:N] is updated by if (( DISTANCE [u] + COST [u, w]) < DISTANCE [w]) then PREDECESSOR [w] = u soon after DISTANCE [w] = minimum ( DISTANCE [w] , DISTANCE [u] + COST [u ,w]) is computed in procedure DIJKSTRA_SSS • To trace the shortest path we move backwards from the destination vertex, hopping on the predecessors recorded by the PREDECESSOR vector until the source vertex is reached
  • 14. EXAMPLE • To trace the paths of the vertices from vertex 1 using Dijkstra’s algorithm, inclusion of the statement updating PREDECESSOR vector results in
  • 15. • To trace the shortest path from source 1 to vertex 5, we move in the reverse direction from vertex 5 hopping on the predecessors until the source vertex is reached. The shortest path is given by PREDECESSOR(5)=3 PREDECESSOR(3)=4 PREDECESSOR(4)=1 Vertex 5 Vertex 3 Vertex 4 Source Vertex 1 Thus the shortest path between vertex 1 and vertex 5 is 1-4-3-5 and the distance is given by DISTANCE [5] is 90
  • 17. The three characteristics of FINGER PRINTS are: 1. There are no similar fingerprints in the world. 2. Fingerprints are unchangeable. 3. Fingerprints are one of the unique features for identification systems.
  • 18. FINGERPRINT TYPES The lines that flow in various patterns across fingerprints are called Ridges and the space between ridges are Valleys.
  • 19. Cont.. Types of patterns in 1 and 2 are terminations. Fingerprint. 3 is bifurcation.
  • 20. MINUTE, CORE AND DELTA Core – The places where the ridges Minute – The places at which form a half circle. the ridges intersects or ends. Delta – The places where the ridges form a triangle.
  • 29. CONSTRUCTION OF RELATED WEIGHT GRAPH Graph can be shown by G index including four parameters of G= (V, E, μ,υ). where V is number of nodes. E is number of edges. μ is weight of nodes. υ is weight of edges.
  • 30. Some information can be used in constructing the graph related to a finger print like: • Centre of gravity of regions. • The direction related to the elements of the various regions. • The area of all the regions. • The distance between centres of gravity. • The perimeter of regions.
  • 31. WEIGHTAGE TO NODES AND EDGES Wn = Area (Ri) where  i = 1,2,3,……,n.  Wn is the weight of nodes .  Ri is the specified region in block directional image. We = (Adj − p) × (Node − d) × (Diff −v) where  Adj-p is the boundary of two adjacent regions linking with an edge.  Node-d is the distance difference between nodes that links by an edge  Diff-v is the phase difference or direction difference between two regions of block directional image.
  • 32. The nodes are placed in the centre of gravity of each region. The nodes size vary according to the weight. The edges are shown by the lines and the thickness is proportional to the weight .
  • 33. CONSTRUCTING SUPER GRAPH We combine the properties of the Graph and model of the Super Graph to form, • A node for region with similar directions. • Its co-ordinates is the centre of gravity related to those regions of the graph.
  • 34. WEIGHTAGE TO sNODES AND sEDGES Wsn = nΣi=1 Area (Ri) Where Area (Ri) is the area of all regions with similar directions. Ri includes regions with similar directions. Wse = dis(sn) + Σ Adj-p(Ri,Rj) Where Wse is the weight of edges in super graph. dis(sn) is the distance between nodes of a super graph. Adj-p is the sum of the adjacent perimeter between two regions.
  • 35. SUPER GRAPH  The obtained block directional image have four directions, so we have four nodes.  All the nodes are connected with the other three edges.  If the number of nodes are high, its takes much time to find a match.
  • 36. RETRIEVING THE FINGERPRINTS • Fingerprints are classified according to their structure. • A sample from each structure is taken for comparison. Cost Function = (Σi (Wi.node – *Wi.node )) * (Σj (Wj.edge - *Wj.edge)) where Wi.node and Wj.edge are the node weight and edge weight of the Super graph. * Wi.node and *Wj.edge are the node weight and edge weight of model super graph.
  • 37. • Different classifications give different cost value.Among that the lowest cost value function is taken and the comparison of the fingerprint proceeds in that class. • By this method high accuracy is achieved in short comparison time. • Previously FBI used 3 major classifications for matching the fingerprints and they had many sub-classifications. • But now they use around 10 major classifications and many sub-classifications which gives them a fast result.
  • 38. SOME MORE INTERESTING APPLICATIONS…..
  • 39. EPIDEMOLOGY • Networks model used to represent the spread of infectious diseases and design prevention and response strategies. • Vertices represent individuals, and edges their possible contacts. It is useful to calculate how a particular individual is connected to others. • Knowing the shortest path lengths to other individuals can be a relevant indicator of the potential of a particular individual to infect others.
  • 41. NETWORKS (ROADS, FLIGHTS, COMMUNICATIONS) JFK LAX STL HNL DFW HJK