Modeling And Simulation Technology
Graph Basics


  1. A Graph = {S, L}
    1. S is a set of nodes.
    2. L is a set of links -- an association of one node to another as a pair (aka a tuple) of references. We will assume the order of the node refrences indicates the direction of the link, giving directed links as opposed to undirected links.
      1. One or more directed links implies it is a directed graph.
      2. Undirected links only implies it is an undirected graph.
      3. Repeated tuples in the set of links implies redundant links. Except in special cases these will be assumed to be repeated reference to the same link in drawings.
      4. If a tuple has the same node as the first and second reference it is a "self-loop" link. Except in special cases these will be assumed to NOT be included.
      5. The degree of a node is the number of links into and out of the node.
        1. The number of links into a node gives its in-degree
        2. The number of links out of a node gives its out-degree
    3. Path -- any sequence of links and their shared nodes which can be traced from one node to another visiting each included node only once.
      1. The length of a path is the number of links it contains.
      2. The distance between two nodes is the length of the shortest path between the nodes.
      3. A directed path is a path in which all contained links are directed from the start node, in succession, to the end node, and is also known as a route between the two nodes.
      4. An undirected path ignores the direction of the links it contains.
      5. A path segment is any consecutive sequence of nodes and links contained in a path.
      6. The diameter of a graph is the largest distance between any two nodes in the graph.
      7. A connected graph has an undirected path between any two nodes in the graph.
      8. An unconnected graph (or disconnected graph) has at least one pair of nodes with no undirected path between them. When a subset of nodes cannot be connected to any another subset of nodes then the nodes are in separate components of the graph.
      9. When alternate (redundant) links between nodes are not included a path may be represented by the ordered sequence of nodes it passes through.
    4. Trail -- any sequence of links and their shared nodes which can be traced from one node to another visiting each included link only once. Note that all paths are trails.
      1. A trail segment is any consecutive sequence of nodes and links contained in a trail.
      2. A trail segment that is a path except that it starts and ends on the same node is a loop. Note that by the definition above this trail segment is not a path.
      3. When alternate (redundant) links between nodes are not included a trail may be represented by the ordered sequence of nodes it passes through.
    5. Walk -- any sequence of links and their shared nodes which can be traced from one node to another.
      1. When alternate (redundant) links between nodes are not included a walk may be represented by the ordered sequence of nodes it passes through.
    6. A Subgraph is a subset of the nodes in a parent graph, and includes only links from the parent graph that are between nodes in the subgraph.
      1. Any connected subgraph which has no undirected path to other nodes in the graph is a component of the graph.
      2. Any graph which consists of two or more components is unconnected.
      3. A hypernode is a node that represents a subgraph and all the links between the nodes in the subgraph.
      4. A hyperlink is any link that is between a hypernode and any node external to the subgraph it includes.
      5. A hypergraph is any graph that includes one or more hypernodes.
    7. A semantic graph is a graph whose links indicate various association types between the nodes.
    8. A bipartite graph is a graph whose nodes form two distinct sets and whose links start in one of those sets and end in the other.
    9. Graph element properties are homogeneous value fields over the members of the set of nodes or over the members of the set of links. Property fields may be defined as restricted to the links or nodes of a subgraph.
      1. Any field associated with each node in a graph forms a field of node properties, such as names, weights, or associated agent models and state variables for the links.
      2. Any field associated with each link in a graph forms a field of link properties, such as names, weights, or associated agent models and state variables for the links.
  2. Finite state machine (FSM) graphs include nodes which represent the allowable states of the FSM, and directed links which represent the allowable state transitions for the FSM. An FSM occupies only one state at any given time, and its behavior consists of the sequence of states it occupies over any given time period.
          F = {S, T, I, O}
    where
       S is the set of states
       T is the set of transition link tuples
       I is the set of a set of inputs for each transition link
       O is the set of one output for each transition link
    
    
    1. The nodes of the FSM have a property that designates the distinct states of the FSM. These are often names or indices.
    2. Each link of the FSM has a designated set of one or more input tokens which, when input while in the domain state will cause the FSM to transition to the link's range state.
    3. Often each link of the FSM has one designated output token that is generated by the FSM if the link transition is triggered.
  3. A network model is any real-world network applications model. Common network models include electric power grid, communications networks, highways, petroleum distribution pipelines, and water distribution pipes and channels, and the virtual networks of actual traffic and resource flows over those physical networks. These are commonly called the critical infrastructure (CI) networks.

Updated: 2011-01-18