GB2534375A - Improvements in and relating to network analysis - Google Patents

Improvements in and relating to network analysis Download PDF

Info

Publication number
GB2534375A
GB2534375A GB1500943.4A GB201500943A GB2534375A GB 2534375 A GB2534375 A GB 2534375A GB 201500943 A GB201500943 A GB 201500943A GB 2534375 A GB2534375 A GB 2534375A
Authority
GB
United Kingdom
Prior art keywords
node
network
nodes
particle
particles
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
GB1500943.4A
Other versions
GB201500943D0 (en
Inventor
Anthony O'neill Mark
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
TUMBLING DICE Ltd
TUMBLING DICE Ltd
Original Assignee
TUMBLING DICE Ltd
TUMBLING DICE Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by TUMBLING DICE Ltd, TUMBLING DICE Ltd filed Critical TUMBLING DICE Ltd
Priority to GB1500943.4A priority Critical patent/GB2534375A/en
Publication of GB201500943D0 publication Critical patent/GB201500943D0/en
Priority to PCT/GB2016/050071 priority patent/WO2016116734A1/en
Publication of GB2534375A publication Critical patent/GB2534375A/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them

Abstract

Network analysis is performed by: feeding test particles to one node; causing the particles to propagate in the network according to predetermined propagation rules; recording flow counts of data visits of the particle to each node. The network is physical or a virtual model and can relate to transportation, telecommunications, power transmission, social networks. The particle is an information packet transmitted from node to node. The propagation rules include visit limitation rules, i.e. the maximum number of node visits for each particle, and a hope count limit. A particle allowed to visit a node multiple times or only once is analogous to Bosons or Fermions, respectively. Boson-like particles tend to remain within sub-networks and identify nodes with high degree of hubness. Fermion-like propagation moves further along and determines choke points in the network. The starting node and a next connected node where the particle moves are selected at random.

Description

Title: Improvements in and relating to Network Analysis
Field of the Invention
This invention relates to network analysis apparatus, and to a method of analysing a network, which method may be implemented on such apparatus.
Background to the Invention
Network analysis is typically used to study actual and possible interactions between discrete objects the interactions between which can be governed by actual or virtual io connections between the objects. Typically, the objects are treated as nodes, and the permissible direct interaction between two objects can be represented by a connection between the two corresponding nodes.
Network analysis is used on a wide range of quite disparate types of network. For IS example, transportation networks, telecommunications networks and social networks have all been subject to network analysis, which is also used as a tool in modelling spread of diseases, analysing the possible effect of a change of one element of an environment on the rest of the environment and analysing links between suspects and victims in the course of a criminal investigation.
Although known analysis methods, such as graph theory, can be implemented on computers, it has been found that, at least, for larger networks, the analysis places extremely high demands on computer resources, resulting in slow implementation and/or the need for powerful computing hardware,
Summary of the Invention
According to a first aspect of the invention, there is provided network analysis apparatus comprising memory means on which is stored a virtual model of a network having multiple nodes, each of which is connected to one or more other nodes of the network by a respective connection, the apparatus having data processing means programmed or arranged to analyse the network by a method comprising steps of feeding virtual test particles to at least one node of the virtual network, causing each such test particle to propagate through at least part of the network, in accordance with one or more pre-determined propagation rules, to at least one further node connected to said at least one node and for each of one or more nodes recording in the memory means data relating to the visits of the test particle to that node.
According to a second aspect of the invention, there is provided a method of analysing a network having multiple nodes, each of which is connected to one or more nodes of the network by a respective connection, the method comprising the steps of: (a) feeding test particles to at least one node of the network; (b) causing each test particle to propagate through at least part of the network in to accordance with one or more pre-determined propagation rules to at least one further node over a respective connection; and (c) for each of one or more nodes recording data related to visits of the test particles.
Is The use of test particles to explore the network provides a relatively quick and efficient method of analysing the network and is well suited to computer implementation. The data can readily provide quantitative information on the importance of the nodes to the network, thus facilitating, for example, the ranking of nodes in order of importance.
Accordingly, the data may usefully comprise or represent the number of visits of particles to each node.
Nodes which are subjected to larger numbers of visits will tend to be more important, to network functionality, since they lie on a greater number of routes, i.e. strings of inter-connected nodes, through the network.
Preferably, the propagation rules include a node visit limitation rule which may be selectively applied so that, if the rule is applied, the number of possible visits of a given particle to each node is limited, whereas if the visit limitation rule is not selected, no such limitation is applied.
Preferably, the visit limitation rule restricts the number of visits a particle can make to a node to 1.
The selection or non-selection of the visit limitation rule can be considered to govern whether the particles behave in a way that is analogous to Bosons or Fermions. Under this analogy, a node can be considered to be quantum state and the number of permissible visits of a given particle may correspond to the permitted population level of that state, accordingly, a particle that can visit a node multiple times is analogous to Boson, whilst a particle that can only visit a given node once is analogous to a io Fermion.
It has been found that the Boson-like particles are effective at revealing local substructures in a network, whilst the Fermion-like particles are more effective at deeper, wide ranging analysis that can identify nodes (for example hub nodes) that are Is key to the network architecture.
A visit of a particle from a first node to a further node may comprise the steps of selecting a further node directly connected to the first node and updating (for example by incrementing) a flow count for the further node if the selected propagation rules so 20 permit.
In the case of the method in accordance with the second aspect of the invention, the network may be a physical network, for example a telecommunications or power distribution network, or a virtual model of such a network. The virtual model can, however, correspond to an actual, physical network.
Where the network is a physical network, and has recording means for recording receipt of information at the nodes (as would be the case with the telecommunications network), each particle may comprise a respective information packet, transmitted from node to node. In such a case, the recording of the visits may be achieved by means of for example, registers at the key nodes or an operations and maintenance centre to which the data are transmitted.
In the case where a virtual model of a network is analysed, the test particles are also virtual, each particle comprising that which causes the data relating to the visit of a test particle to a node to be updated for that node.
Preferably, the data relating to the visits of particles to nodes comprise a respective flow count for each node, the flow counts being stored in corresponding flow count registers.
The test particles may be successively fed to the same initial node of the network.
In this way, the method and apparatus can provide a percolation measure associated with that node.
Preferably the particles are used to analyse the network in as stochastic manner.
To that end, the particles may to advantage propagate through the network in a random or pseudo-random manner.
For example, a particle at one node may move to a next node selected at random from the nodes directly connected to said one node.
Additionally or alternatively, the initial node to which each particle is fed may be selected at random or in a pseudo-random manner.
These types of random/pseudo-random analysis can provide a relatively accurate estimate of network characteristics for a given degree of propagation of particles (i.e number of hops from node to node) or number of particles fed to the network, enabling the method to be rapidly and/or efficiently performed.
The propagation rules may conveniently include a rule setting, as a hop count limit, a maximum number of node visits for each particle.
Preferably, the number of particles fed to the network, the probe count limit, is limited to a number less than the total number of pathways through the network. This can reduce data processing requirements for performing the method without substantially degrading the accuracy of data yielded by the method, at least where the network is analysed stochastically. Thus a fair representation of the network characteristics can be obtained without exploring all possible pathways (defined by the connections through the network).
Preferably, the hop count limit, number of particles to be fed to the network and the i) application or otherwise of the visit limitation rule are user controllable parameters.
This gives the user flexibility in choosing the type of analysis most suitable for the data that the user wishes to retain.
The data relating to the visits may to advantage comprise the identifies of the nodes in a set of the nodes which are accessible from a given node over a given number of connections, or hops, from that node.
In this case, the method preferably includes the step of comparing sets of said nodes accessible via different connections from the given node to obtain an indication of the importance of the node to the network architecture.
If the different sets of nodes have the same or similar members, then this suggests that the given node is only one of a number of possible paths to other nodes and is not therefore a hub or choke point of the network.
Where said sets have been identified, the method preferably includes the steps of calculating the mean path length (i.e. number of connections) from the given node to each other node in the set.
Brief Description of the Drawings
The invention will now be described, by way of example only, with reference to the accompanying drawings in which: Figure 1 is a flow chart of a first example of a method in accordance with the invention, the method being used to provide indications of the flow of information over a network (an hereinafter referred to as gnaflow), where no node visit limitation rule is being applied; Figure 2 is a corresponding flow chart of the same example, the gnaflow algorithm, where a node visit limitation rule is applied; Figure 3 is a diagram of a very simple notional network, showing the effect of the io limitation rule on the propagation of a particle through the network, compared with another particle to which no such rule is being applied; Figure 4 is a flow chart of the steps involved in a second example of a method in accordance with the invention, referred to as gnaenv, for comparing sets of nodes accessible via different connections from a given node to obtain an indication of the importance of the node to the network architecture; Figure 5 shows two examples of simplified networks having corresponding nodes of differing importance, which would be revealed by the second example of method; Figures 6 and 7 are flow charts setting out the steps of a third example of a method (referred to as gnapath) in accordance with the invention for determining the set of nodes connected to a given node via a given number of connections (which information can be used by the second example mentioned above) and/or for determining the average path length of the nodes in said set from a given node; Figure 8 illustrates a set of nodes on a simple network identified by the third example of method; Figure 9 shows a virtual test network on which the gnaflow method has been performed using Boson-like particles in a way which reveals nodes having a high "hubness" value to the network; Figure 10 is a diagram with the same test network on which the same method has been performed, but this time using Fermion-like particles, and in a way which reveals the nodes which are most important to the global architecture of the network; Figure 11 shows a second test network on which the gnapath method is performed to show nodes with the shortest mean path length and nodes with the largest connection sets; Figure 12 is a diagram of the 400 KV electrical power transmission network of the UK National Grid, analysed by the gnaflow method (using Boson-like particles), the most significant nodes of this network being shown in bold; Figure 13 is a corresponding diagram of the network showing the nodes highlighted as a result of gnaflow analysis using Fermion-like particles; Figure 14 shows the same network when analysed using the gnaenv method, in order to highlight the ten most unique nodes in the network; Figure 15 also shows the 400 KV power distribution network, this time with the nodes with the smallest mean path, as revealed by the gnapath method, highlighted; Figure 16 is a flow diagram showing how the above three methods can inter-operate with one another; Figure 17 shows how the gnaflow algorithm can be used to assess the effect of the lesioning of nodes on the performance of the 400 KV power distribution network shown in Figures 12-15; and Figure 18 is a block diagram showing network analysis apparatus, also in accordance with the invention.
Detailed Description
The flow charts of Figures 1 and 2 show different modes of operation for the example of the method which is referred to as gnaflow, and which supplies test particles to a network and then obtains data relating to the flow of particles (and hence information or whatever is being conveyed by the network) through the network. The network is stored as a virtual model in a computer memory, in which the network is represented by its nodes, or vertices, and the connections between the nodes. The nature of the actual nodes and connections will depend upon the type of network being considered. In the case of a power supply network, each node could be a substation, and the connections the power supply lines connecting the substations to each other. Where i) the network is, for example, a radio telecommunications network, the nodes may comprise base stations and the connections either physical cables for carrying communications, or radio links between base stations. It will be appreciated that the term "network" can refer to a more nebulous concept, for example a social network in which each node is constituted by a person who is connected to another person in the Is network by virtue of having that other person's contact details so that the two are able to communicate or otherwise interact directly with each other. The gnaflow method is applicable to any of these types of network (as indeed are the gnaenv and gnapath examples).
The computer apparatus for performing the method is shown, in simplified form, in Figure 18, and comprises an input/output device and display screen 1 connected to a data processor 2 which, in turn, receives data from and writes data into a memory 4. The memory 4 contains the model of the network and the program for performing the analysis methods, and is of known type. The data processor 2 is also known type and may, for example, comprise a microprocessor in the form of an ARM Cortex A9 system on a chip with 2GB of RAM. An example of such a processor is the Samsung (REM) Exynos SOC.
Initially, the user uses the input/output device to select the example of method to be performed. If the user selects the gnaflow method, then the computer will prompt the user to indicate whether the Bosonic or Fermionic type of analysis is to be performed. In the former case, this prompts the computer to prepare to perform the method indicated by the flow chart of Figure 1.
Under this method, the user needs to "initialise variables-by indicating the maximum number of node visits (i.e. hops from one node to another) that may be undertaken by a particle, as well as the maximum number of particles to be fed to the network, the probe count limit. Examples of how these parameters may be chosen are discussed below.
The method depicted by the chart of Figure 1 can also be represented by the following pseudo basic code: afR: begin procedure gnaboseflow needs values for: probe count limit, hop count limit, flow node, dispia tett vavt;a3i.ce set probe count =0 set hop count = 0 for each member of set {nodes in network} set flow end for new probe: if flow node = 0 :to ktost. optalloto n tart ot.;. bode randomly choose node#1 from set {nodes in network} eke attlt atact:rig potte set node#i W flow node endif sewct:lode next bop: randomly choose linden from set {nodes connected to node#1} ttptiato t tow ccool: tor ata.:,..t:rsotod roodo set flow count...ft*: = now courltw442+ 1 Olop cotott t acps: covietettf> if hop count < hop count limit set bop count = hop count + 1 set node#1 node#2 go to next hop end if Probe cottut ttast:ttioos totatts.
set probe count e probe count + 1 if probe count < probe count limit set flop count = 0 go to new probe end if Paint if display output for each member of set {nodes its network} display flow {bese low} end for end if atat end procedure gnaboseflow It will be appreciated that the method first selects a random starting node of the network, and injects a test particle into that node. Since the particle is virtual, this step is essentially constituted by selecting a node as the starting node. The method then selects, at random, another node which is directly connected to the starting node. This selection of the connected node is recorded in a flow register in the computer memory and constitutes the movement of the particle to the starting node to the next node over the connection. This movement is treated as a "hop" of the particle from one node to the other. The process is repeated until the hop count limit is reached, o and a further starting node is then selected at random for the injection of the next test particle. The test particle moves through the network in a similar fashion and the process is repeated until the probe count limit (i.e. the predetermined maximum number of test particles to be used) is reached.
Thus, each particle wanders randomly through the network hopping from node to node. The connection which is used by any particle to leave a node is selected randomly (but the particle is not allowed immediately to visit the node it just came from). The particle then hops through this connection to the next node. If the particle re-visits a node multiple times, the flow register associated with that node is incremented for each visit. After the procedure is repeated until the probe count limit is reached, the flow registers associated with each node will contain a representation of the "natural Bosonic flow" through that node. After the algorithm has been completed, the contents of the flow registers may be normalised and displayed on the display of the input/output device 1. The normalisation may take the form of determining which node has registered the maximum score and then expressing each registered score as a proportion of that score to the maximum, so that the node with the most visits has a normalised score of 1.
Figure 3 shows how the Boson-like particles can propagate through a very simple network. In the Figure each circle represents a respective node of the network and each straight line a respective connection between a pair of nodes. The network has a cluster of five inter-connected nodes which form a sub-network generally referenced 6. Each of the notes in the sub-network 6 is connected to at least 3 other of the nodes in the sub-network 6. The other side of the network is constituted by a number of less well connected nodes, specifically for "leaf nodes 8-11" each of which is connected to one other node. The network can also be considered to have a spine constituted by the nodes 12-14 which connect the leaf nodes 8-11 to the sub-network 6. In this specific example, node 16 of the sub-network 6 is chosen as the starting node into which the Bosonic particle is injected. One of the four connections of the node 16 to its neighbours is then selected and the particle then "hops" to the node at the other end of the selected connection, node 18. One of the four connections to the node 18 is then selected at random. Since the particle is Bosonic the selected connection could be one io that takes the particle straight back to the node 16, but in this case the next selected node is the node 20. The selection process is then repeated for the connections from the node 20, and in this example this results in the particle hopping back to the node 18 from which it then hops to the node 22. The hop count limit in this example has been set to 4, so that the particle then terminates at the node 22. During the process, Is the registers from the nodes 16, 18, 20 and 22 are updated so that the one visit of the particle to the nodes, 16, 20 and 22 is recorded, as are the two visits to the node 18.
Since each of the nodes in the sub-network 6 has a relatively large number of connections, and the Bosonic test particle can re-visit a node, the particle tends to remain within the sub-network 6, and successive such particles introduced into that sub-network will be relatively effective at exploring the network, and identifying the nodes which are best connected, and thus have a high degree of "hubness".
If the user selects the gnaflow method which uses Fermionic-type particles then the process depicted by the flow chart of Figure 2 is implemented. Again, the user needs to select the initial variables, namely the hop count limit and probe count limit (i.e. number of particles fed to the network). The process for gnafermiflow is similar to that of gnaboseflow.
A node is randomly selected using a pseudo random number generator and then a Fermion-like test particle is injected at this node. The random number generator is then used to select a connection through which the particle jumps or hops to the next node. If this node has not previously been visited, the visit register associated with this node is set and its flow register is incremented. If on the other hand the particle has visited the node before it is destroyed, and the associated register is not incremented, so that the node is treated as having been visited by the particle only once.
The path taken by the Fermion-like particle therefore starts at the randomly selected starting node, and continues until either the next selected node is one that has already been visited or the hop count limit has been reached, in which case the particle is also terminated.
Since the nodes can only be visited once per probe cycle, the Fermionic-like method prevents test particles becoming trapped within sub-networks. This means that, in the case of large networks, the exploration process by Fermion-like particles will be more efficient and the flow metric might better reflect the global as opposed to the local structure of the network.
Reverting to Figure 3, a Fermionic particle is injected at the node 8 and travels successively through the nodes 14, 13, 12 and 24 (the last node being one of the nodes of the sub-network 6). It would be appreciated that other connections may equally have been chosen to define the path taken by the Fermionic particle from the node 8, in which case the visit limitation rule (which gives the particle its Fermionic properties) would have resulted in the termination of the particle at any of the nodes 9-14 before the particle reached the node 24. However, successive Fermionic-like particles introduced at random into the nodes of the network are more likely than the Bose-like particles to be able to leave the sub-network 6 and/or to move further along the spine nodes 12-14 than a Bose-like particle.
The Fermionic particles can therefore be effective in determining which of the nodes constitutes choke points in the network by virtue of being on the only route from one significant part of the network to the other (for example nodes 12 and 13 in the Figure 3 network).
After the probe count limit has been reached, as with the case of gnaboseflow, the registers associated with each node contain a representation of the natural flow of particles through that node, and the contents of the flow registers may be normalised and displayed as before.
The pseudo basic program listing for gnafermifl ow is as follows: 1:4C005;:.
begin procedure gnafermiflow needs!Mu for. probe count lin it, hpp count limit flow node. display output lisith:kiss: s ti-alskss set probe count-0 set hop count for each member of set (nodes in network) set flow count;.:. :.,p& 0 end for new probe: if flow node -0 1.:O WOOWC.
Randomly choose node#1 from set (nodes in network) else Stit start:it:1g OOO: S. set node IN = flow node endif Thicees fn..: for each member of set (nodes in network} set visit counti.oiiti-oir.A2MVe end for COthi<ffi C.tW 8 OCCWO7::: next hop: Randomly choose node#2 from set {nodes connected to node#1) if visit count,, a2 = 0 Wats visit: :Sot i2cS set visit count,:,A,:,--i.
:itop co)iitotit. hotior if hop count < hop count limit 4daW flow citotnt Ioir WAS set flow count" ,,,n, flow ± 1 setnadeigr1 nodeli2 hop count a, hop count + 1 go to next hop end if end if COO O COW:O..% cioriipletedi? probe count probe count + 1 if probe count c probe count limit hop count go to new probe end if CO:35.A W.5 05, W WW:k: O'Oth:S.
if display output > 0 for each member of set: {nodes in network} display flow corrat,ii.toio {Fermi flow) end for end if E:ed end plocedure gnafermiflow Typically, the network to be analysed will have a very large number of modes and connections. For a typical small to medium-sized network (50-5,000 nodes) setting the probe count limit to 10,000 (corresponding to the number of particles that fit to the network) and the hop count limit of between 5 and 20 produces reproducible results for both gnaboseflow and gnafermiflow. In the case of the gnafermiflow algorithm, the additional requirement that nodes can only be visited once per probe cycle prevents test particles becoming trapped within sub-networks. This means that in the case of large networks the exploration process will be more efficient and that the flow metric will better reflect the global as opposed to the local structure of the network, as explained above with reference to Figure 3. If we choose the same node as the initial node for all of the particles, we can use the gnafermiflow algorithm to compute the connection set of that node (that is the set whose members are nodes which can be reached from that starting node within a hop count limit number of hops). The same initial node can be chosen for all of the particles used for the gnaboseflow algorithm, i) which enables the network flow associated with signal injection at that node to be determined.
The code for both variants of the gnaflow algorithm is simple enough to allow direct implementation in silicon, for example on a medium-sized FPGA using a C2 VDHL-is net list compiler such as the Panda Framework. With reference to Figure 4, the second example of the method takes the form of a gnaenv algorithm which is performed on nodes whose network environment is to be analysed. Those nodes can be selective iteratively, for example each node being selected sequentially. After a node is selected, a pair of different connections of that node to other nodes are then selected. In Figure 4 these are the steps referred to as "select random connected node #1" and "select random connected node #2". The selection is made with the aid of a pseudo-random number generator. For each of the two connected nodes, the algorithm determines which nodes that are connected directly or indirectly to the connected nodes that lie within a certain number of hops of the node being analysed.
Figure 5 shows two simplified networks, the upper of which, generally referenced 26 being the same as the network shown in Figure 3.
If the node 12 is selected as the node to be analysed, then the two connected nodes #1 and #2 will be the nodes 13 and 24. The selection of the nodes 13 and 24 can be considered to be analogous to the feeding of two Fermion-like particles to the node 12 and propagating those particles to the nodes 13 and 24 respectively. For each particle this would constitute the first hop, and the particle could then be propagated from the nodes 13 and 24 to the connected nodes by a number of further hops equal to the hop limit minus 1 (corresponding to the first hop). Alternatively, the connected set for each of the nodes could be calculated by means of the gnapath algorithm discussed below. It will be appreciated that, if Fermion-like particles are used, further particles may need to be fed to the node 12 to explore its environment if the connection for the "next hop" from nodes 13 and 24 and the subsequently visited nodes is selected at random, to take into account the fact that a particle will be terminated if a connection along which it has already hopped is subsequently chosen.
It will also be appreciated that, in the case of the network 26, the two connection sets for the node 12 will be different from each other since the nodes to the left of the node 12 can only communicate with the nodes to the right of that node through node 12 (which is therefore a choke point of the network).
Is The lower network shown in Figure 5 is a modified version of the network 26, and has the same nodes as the latter, plus an additional node, node 30 which connects the nodes 22 and 8. The node 30 provides an alternative route for communications between the left and right-hand sides of the network so that the two connection sets for the node 12 can be identical if a sufficiently high hop count limit is set.
More generally, the differential network environment is computed by evaluating the intersection of the two connection sets. If this intersection is empty, the uniqueness register of the current node is incremented. This process is repeated until a predetermined, user-selected probe count limit (corresponding to the number of particles fed to the node to be analysed) is reached. The next node to be analysed is then selected iteratively and this process is repeated until all the nodes in the network have been analysed. After the analysis is completed, the contents of the uniqueness registers are normalised and displayed. A modified version of the algorithm does not simply increment a register for a given node if the intersection of the connection sets is empty, but instead quantifies the similarities/differences between the connection sets (c) by means of the following equation: RI 4bi So, the more dissimilar these connection sets are the greater is the importance of the node as a unique information conduit within the network. In addition, the network environment algorithm can compute a variety of other statistics which are of use in characterising a network, for example, the set of pathways connecting a pair of nodes a and b (e.g. ordered by increasing effective path length) or the redundancy of a node (e.g. how easy is it to route around the node if it is lesioned?).
The evaluation version of the gnaenv algorithm implemented here can use libraries in which are provided by the (open source) PUPS/P3 homeostatic computing environment, especially its pseudo random number generator library (casino). PUPS/P3 is available from the SourceForge website.
It will be appreciated that the gnaenv algorithm computes the unique information flow Is across nodes in the network (and thus essentially provides a centrality measure which is closely related to betweenness. Thus the algorithm computes which routes through the network must pass through the given node and which cannot be re-routed through other nodes. This is achieved by looking at the network environment seen through each connection of a given node and then comparing them. This is achieved by randomly selecting pairs of connections on the node and then computing the connection set (over a number of hops) for each. If these connection sets are significantly dissimilar, then it is highly likely that the node is unique e.g. for path lengths greater than the hop limit, it is a bottle-neck or lies on a highway of the network. Conversely, connection sets similarity implies that the node is redundant, and is therefore easy to re-route around if it is legion). A pseudo-basic listing for the gnaenv algorithm is as follows: Turning to the gnapath algorithm, this computes two network properties which are useful indicators of network integrity: connection set size and member identity (which can be used in the gnaenv algorithm) and node mean part length, which is a measure of how well a given node is connected in terms of how many hops on average it would take to reach any other node in the network from that node. The mean path length of a given node is computed by calculating the global connection set for that
-I, di
ihy dithiiiihh000 Set xlf?.tt: fl 1:1^Me ni.M0 Wit, hop &ice nvokx, OUSPtet (ChOil0C08 :ouhit af0.5t lit>.0t,t)(4i k.haop): paa procodom gnapath hop MPit kUair."*".1, a er.h1F8napaffry hop cr$31ot hint, hhhO,42.
o-00.0,hoto) hh;01000000-0oth0..o ch.o4; (ts..00160.640i seut3J-, -Oifferthnce gdhihic, I-I node and labelling each node in the connection set with its hop distance from the starting node. For the (i) node, this will be hi. When all nodes in the network have been reached, the mean path length is computed by summing an the hop distances hl,..., hN and then computing the mean value: X = l/N hi Where: x is the mean path-length.
N is the number of nodes in the network.
hr is the hop distance between start and ith node.
The connection set of a given node is computed using a set of Fermionic probe particles. Effectively these particles traverse the network from the start node and make pseudo-random tours of the network subject to the exclusion principle: that a probe cannot revisit nodes which it has already visited, or which have been visited by another probe. When a probe particle finds an unoccupied node it labels it with its hop distance h from the staring node. This process stops when all the nodes in the network have been visited (e.g. all the states of the system are occupied to use terminology borrowed from quantum mechanics), returning the mean path length for the starting node, and its connection set, {N).
This connection set, IN} will contain every node in the network if it is fully connected. This can be used to build network integrity measures which measure the structural (connective) damage which occurs when nodes are (randomly) lesioned, and can also be used as an indicator of more subtle network damage. It is possible for random lesioning of nodes not to cause any structural damage, but to increase the mean path length: the network remains fully connected, but it is now harder to move between nodes as lesioning has eliminated some of the (shorter) paths through the network. This sort of (e. g. rate of change of 1 can be related to the thermal capacity of the substance) network damage is analogous in thermodynamic terms to heating a substance, while connective damage is a first order phase change similar to that seen when a substance changes state (e.g. from solid to liquid or liquid to gas).
The evaluation version of the gnapath algorithm implemented here has dependencies on libraries which are provided by the (open source) PUPS/P3 homoeostatic computing environment, especially its pseudo random number generator library (casino) and its sparse matrix library, larraylib.
The pseudo-basic listing for the part of the gnapath algorithm represented by the flow chart at Figure 6 is set out below.
The "compute 1 and connection for node" process of Figure 6 is as shown by the flow chart in Figure 7, and in the following pseudo-basic listing. It will be appreciated that I' is being used as lower case L as an alternative notation to x in Figures 6 and 7. e o
gnapath p (30:ES 1t: 31 111*.1;1111., -:110,1111.1 ers of {nudes.
t:tupo t 3)' prof,;.? cetusez,t put e, AV& k)dt>, th'spLty output' end if gm. etk
begirt eornpute patatrAerngth needsi hop covet fiend, paTh tiMe ise iytitpet igikk0 tot aU nwebers o set 1refilei^to ietwortl set pen tYMA in network ilte depth 0 end kr Cidnibizietie ipikiib:depth sidt. eieir Sieireek.Kooksi ii.abk Kink set port) death 1 set f piste depth frfeartret an4ihoon F oext twos? in network} tint tact:We count members Of set iPicth aeotp atVeSim,..se 0 inth ekineeek Seek befit i.netb en.
tot all members of set teat ("PPM. 00091.50...z*, set OOXf p?th depth node path depth path eseptp end for ffettfAketts.s. eSeSt iffSt ?:tf: rtfsttrsti Aat:Str. ttttrdeff tteetffsSe t-ttrirt Ohtst, tfefftr.., next dicpthi.
for afi men:temof set (pear depth nudes)... 0,0 for aU. members of set.,10earest oeiqiitiows iet pth.devth.riode} if pat. nearest 7:P440500U f Of anti path depth 'ode Path rkPIC -L sot tient neatest peryhfeetraf next path.rtepth node: path tfepth sswfisdepftf put.rlthtit nearest nerghbtturt.oF next Oath OOP,h code into set {pith depth:a des esd end for cod-tor ems men:: knit: triseeriseb set pare depth pa depth s =fpcftb depth < fever-x.0r strict @i14 C:ti members {pAtit depth neiln&L, >0 tto to flext depth end if sat mean path 0 set tnuat Cesrepute teptef prrtb. e:erfioeffff...}ea Pet, fat pt-' a ertsbe for all members of set {network nudes) if non neeirixk oNle path depth > mean path a mean pet?? 4-next nibp.Irk dean O4th depth set count twat + next (fell:W.0c node frte set 4OEIneer?or sat of nftt node no network) coo if end far set mean path neap path f cinnt bads:I.Sey e: a ikisiees.dn deb o4(f.d diSPhlY fled node in network mean path. fnode neon t.Wh).
dispfey trwrearoa set of mat node;network} iNode twolett e.th set) efftl if end 0' end ox end ptecedert compute flOth-ltogth The recipe for the gnapath algorithm is a little more complex than those of the previous algorithms. Each node in the network is selected in turn for analysis via an iterator. The algorithm then initialises the path depth computation by setting the (initial) path depth to 1. The algorithm then places all the nearest neighbour nodes in (path depth set 11. In addition the depth register associated with each of these nodes is set to path depth. The path depth counter is then incremented and all the second nearest neighbours which have not already been visited are placed in (path depth set 21. The algorithm then increments path depth. This process is then repeated until either there are no next nearest io neighbours or the neighbours hop count limit hops away from the node being analysed have been processed. The algorithm then sums the path depth registers of all the nodes in all the path depth sets and divides by N the total number of nodes in all the path depth sets to compute the mean path statistic, 'A' for the node being analysed. In addition the union of the path is sets is computed in order to generate the (hop limit count) (connection set} for node being analysed. The algorithm then repeats these computations until all the nodes in the network have been analysed. The algorithm then completes and exits. In order to run the gnapath algorithm only one parameter, the hop count limit is required. If local structure is to be probed, this is typically set to a small value (1-2). If the global structure of the entire network is to be probed, it can be safely set to N, the number of nodes in the network.
The gnapath algorithm is non-stochastic. Despite its relative complexity, the deterministic nature of the algorithm means that it runs relatively quickly even on large (2000-5000 node) networks. The gnapath algorithm implicitly uses a Fermionic test particle when probing the network to compute the mean path length & connection set metrics. The gnapath algorithm can return two network metrics: The mean path length 'x-which is a measure of how close all the other nodes in the network appear to a a given node. This is effectively the "six degrees of freedom" metric mentioned ad nauseam in the literature of Network Science.
* The hop limit count connection set of a given node. This can be used by the gnaflow algorithm.
As is the case with gnaflow and gnaenv, this algorithm can be run on a single node in order to compute the mean path length & hop limit count connection set) metrics for that node.
Figure 8 shows the same simple network as shown in Figure 3 after the two hop connection sets for nodes from node s has been determined by the gnapath algorithm.
The nodes in that set are the encircled, shaded nodes, other than the node s. Each node has included in it the number 1 or 2, indicating the number of hops of the node from the node s.
The mean path length for the set from the node s is the total of the numbers within the nodes in the set divided by the total number of nodes (i.e. (1+1+1+2+2+2+2)/7 = 1.57). The connection set is the union of;path depth 11 and {path depth 21.
Figures 9 and 10 show how the gnaflow algorithm may be applied to a slightly more complex text network (than the network of Figures 3, 5 and 8). The test network consists of 34 nodes with 66 connections between them, and is subjected to two contrasting types of flow analysis. The most significant nodes revealed by the first type of analysis are shown in bold in Figure 9, whilst those revealed by the second type of analysis are shown in bold in Figure 10.
The first type of analysis is performed with Boson-like particles, a hop count limit of 3 and c probe count limit of 10,000.
This analysis yields the results shown in the following table: Node Hubness Raw flow Norm. Flow Node name 66'14 00770 6640,000,; .000 07:6 30770;7007 70'74.006 0.675 7 0027 0007 7000 "00.0 O.7.76,.;.
0022 0003 3825.000 0.443 g 0000 0003 3491.000 0.404 d 0023 0003 3433.000 0.397 i 0002 0002 2997.000 0.347 c 0013 0002 2904.000 0.336 ee 0012 0002 2606.000 0.302 ccc 0003 0002 2447.000 0.283 cc 0001 0002 2434.000 0.282 e 0002 2429.000 0.281 iii 0004 0002 2372.000 0.275 f 0021 0001 2021.000 0.234 xxxxxx 0018 0001 2011.000 0.233 xxx 0017 0001 2008.000 0.232 xx 0016 0001 2006.000 0.232 x 0009 0001 2007.000 0.232 aaaa 0006 0001 1993.000 0.231 a 0001 1986.000 0.230 xxxxx 0019 0001 1990.000 0.230 xxxx 0011 0001 1989.000 0.230 aaaaaa 0001 1959.000 0.227 eeee 0007 0001 1965.000 0.227 as 0001 1949.000 0.226 aaaaa 0032 0001 1935.000 0.224 hhhhhh 0031 0001 1939.000 0.224 hhhhh 0028 0001 1932.000 0.224 hh 0033 0001 1915.000 0 222 hhhhhhh 0029 0001 1918.000 0 222 hhh 0008 0001 1907.000 0.221 aaa 0001 1881.000 0.218 hhhh 0024 0001 1327.000 0.154 ii 0026 0001 1237.000 0.143 q Table 1. Showing flow through test network 1 for short (2-3 hop) journeys. For these short journeys hubness (degree centrality) dominates and the peak flow is concentrated at the largest hubs.
The flow pattern in this case is dominated by hub effects, and this should be compared and contrasted with the results of the second type of analysis shown in the following table which show the pattern for longer random walks (i.e. where the hop count limit is at least 10), and, the probe count limit is 10,000. The particles used in the second type of analysis are Fermion-like.
njection node Hubness Raw flow Norm. Flow Node name K:oc: ;:ixi3 1 sc.:0.a.:0 1 (sczli ::::::4 1.n.c;r30 003 1:T F7 0.676 0012 0007: O772,600 0.600;107 677; 0067, 7724,0077 67,7: -; o 60773 0602 760.000 0, 604' so: 001'0; 0062 766,000 0,622 6o 0002 0062 71 4000 0. 472 7 0014 0008 560.000 0.372 ee 0023 0003 522.000 0.347 i 0007 479.000 0.318 j 0027 0007 351.000 0.233 h 0002 244.000 0.162 iii 0024 0001 151.000 0.100 ii 0026 0001 145.000 0.096 q 0016 0001 73.000 0.048 x 0001 69.000 0.046 xxxxx 0008 0001 67.000 0.044 aaa 0011 0001 64.000 0.042 aaaaaa 0021 0001 61.000 0.041 xxxxxx 0017 0001 60.000 0.040 xx 0033 0001 59 000 0.039 hhhhhhh 0019 0001 57.000 0.038 xxxx 0001 55.000 0.037 aaaaa 0009 0001 52.000 0.035 aaaa 0007 0001 53.000 0.035 as 0006 0001 53.000 0.035 a 0028 0001 51.000 0.034 hh 0018 0001 47.000 0.031 xxx 0001 44.000 0.029 hhhh 0031 0001 40.000 0.027 hhhhh 0001 40.000 0.027 eeee 0032 0001 38.000 0.025 hhhhhh 0029 0001 36.000 0.024 hhh In this case, the effect of the global network's architecture, that is where the nodes are located in the network, is more dominant, and a peak flow is concentrated along the network backbone. This type of analysis is informative as it may indicate ways in which a network can be degraded whilst causing minimal impact to its infrastructure.
A second example of how the gnaflow algorithm might be used is as a form of percolation analysis. In this case particles will be injected at the same node, and the results as applied to the network of Figures 9 and 10 are shown in the following table in which the particles are injected at node h. This could provide the following useful information for a social network: suppose h is a person who is infected with a strain of the influenza virus. In this case, the flow rates in the following table all relate to the probability of other people in the network becoming infected with this virus. In this highly simplistic percolation model, the probability of infection is proportional to 1 over n, where n is the hub size of a given node. Of course, to model the spread of infection in reality a more realistic measure of infection would be required. This could be factored into the connection selection part of the algorithm. The table showing the effect of injecting the particles to the same node, h is as follows: ignal node Raw flow Norm. Flow Node name 41759 000 1.000 h 6048.000 0.145 hhhh 5936.000 0.142 hhhhh 5906.000 0.141 hh 5903.000 0.141 hhhhhhh 5867.000 0.140 hhhhhh 5856.000 0.140 hhh 5789.000 0.139 g 2765.000 0.068 faf 2718.000 0.065 i 2082.000 0.050 d 1308.000 0.031 ii 1287.000 0.031 iii 1020.000 0.024 e 953.000 0.023 ccc 943.000 0.023 q 741.000 0.018 ee 723.000 0.017 cc 561.000 0.013 eee 536.000 0.013 c 375.000 0.009 j 94.000 0.002 eeee 88.000 0.002 xxxx 81.000 0.002 xxxxx 78.000 0.002 xx 73.000 0.002 xxxxxx 70.000 0.002 x 70.000 0.002 aaaaaa 000 0.002 aaaa 69.000 0.002 aaaaa 68.000 0.002 xxx 67.000 0.002 aaa 56.000 0.001 a 38.000 0.001 as Table 3. Showing the effect of injecting a signal (at node h) on test network 1. Wth modification, this sort of network measure could be used to model information flow and/or infection from a single individual or small group of individuals.
The execution of the gnaflow algorithm is relatively fast: very small networks for example the test network shown in Figures 9 and 10, take less than a second to be analysed by the algorithm, using an ARM (RTM) processor running an ARM 7 instruction set (e.g. ARM Cortex A9). More specifically, the Odroid x 2 development platform (on a 1.79GHz Samsung Exnyos (RTM) chip) is used. Analysis of larger networks on this platform takes the order of seconds. For example, random flow analysis of a woodland ecosystem network consisting of 1,655 nodes and 9,248 connections took 3.2 seconds to computer. A similar random flow analysis of a large 23318 node, 609868 connection network of word associations in the English language (Kiss et al 1973) took 1,583 seconds to process.
gna env algorithm The global network environment algorithm, gnaenv, computes the unique information flow across nodes in a network (this is essentially a centrality measure which is closely related to betweenness). That is, it computes which routes through the network must pass through a given node and which cannot be re-routed through other nodes. This is achieved by looking at the network environment seen through each connection of a given node and then comparing them. The more dissimilar these environments are the greater is the importance of the node as a unique information conduit within the network. hi addition, the network environment algorithm can compute a variety of other statistics which are of use in characterising a network including: * A measure of redundancy. How easy is it to route around a given node.
* The network radii of all the nodes in the network (or a user defined subset thereof).
-The connection set (all other nodes which can visited) via a single connection on a given node.
* The set of pathways connecting a pair of nodes a and b.
Computing the network environment seen at each connection of each node in the network is significantly more computationally expensive than computing random network flow. Despite this, the performance of the gnaenv algorithm (on ARM Cortex A9 development platform) is swift. The unique information Is flow and redundancy measures for all the nodes in test network 1 (as shown in Figures 9 and 10) was computed in under 2 seconds and it took less than 3 minutes to perform a similar global network environment analysis of the woodland ecosystem network.
The output produced when gnaenv is used to analyse test network 1 is shown in tables 4 and 5 below. For small networks which don't contain loops, the output of gnaenv is very similar to that of gnaflow. If the maximum subset network path lend is small (e.g. all nodes within the connection set lie within 2-3 hops of the node analysed), hubness (degree centrality) effects dominate. If the maximum subset network path length is larger (8-10 hops), the effect of network architecture begins to dominate, at least for networks with tree topologies.
Node Hubsize Env score Name 0014 0008 1.872 Eee 0007 1.842 J 0027 0007 1.784 H 0002 1.318 Iii 0023 0003 1.305 I 0022 0003 1.129 G 0013 0002 1.105 Ee 0002 0002 1.087 C 0000 0003 0.986 ^ 0003 0002 0 922 cc 0012 0002 0.822 Cm 0001 0002 0.821 E 0004 0002 0 725 Table 4. Showing the nodes in test network 1 exhibiting high levels of unique information flow (small subnet size: maximum path length <= 3 hops). For these short path subnets the hubness (degree centrality) of the node being analysed is dominant.
Node Hu bs ize Env score Name 0004 0002 3.427 f 0000 0003 2.989 d 0022 0003 2.857 g 0001 0002 2.824 e 0012 0002 2.741 ccc 0003 0002 2.458 cc 0013 0002 2.3W ee 0002 0002 2.270 c 0023 0003 2.184 i 0027 0007 1.992 h 0014 0008 1.948 eee 0007 1.939 j 0002 1.909 iii Table 5. Showing the nodes in test network 1 exhibiting high levels of unique information flow (large subnet size: maximum path length <= 10 hops). For long path subnets, the network architecture around the node being analysed becomes increasing dominant.
The network measures produced by gnaenv can be used in a variety of real world s situations. For example, measures like node density as a function of path length provide the basis of another method of modelling the spread of infection (or information) within social networks. The baseline measure, delivered by gnaenv is node criticality -effectively a betweenness centrality measure for unique paths through a node. This measure can be used a whole host of scenarios. These include finding critical proteins in the control and metabolic networks of pathogens, locating single points of failure in logistic networks and identifying keystone species within ecological networks.
Gnapath Figure 11 shows a second test network on which the gnapath algorithm can be performed to determine the five nodes with the shortest mean path length (for a 10-hop search), and the five nodes with the largest connection sets (5-hop search). The figure highlights (using enlarged dots) the nodes having the shortest mean path length whilst diagram and the five nodes with the largest connection sets. As can be seen, the same five nodes have the shortest mean path length and largest connection sets and are situated in the general centre of the network.
Thus, the nodes with the shortest mean path length, to all other nodes within a distance of N hops, tend to lie towards the centre of the network and act as a "structural glue" which holds the network together. In this particular case, the identified nodes are indeed central and furthermore they are critical to the global topology of the network. Removing these nodes, especially nodes A and C, which are single points of failure would cause the network to be broken in two. While the other nodes for example ce and cee are technically redundant, removing them would severely degrade the network if the information flow through the background section is substantial.
The two tables below show connectivity and net radius scores for all of the nodes in the test network shown in Figure 11.
Node Hubs ize Mean Path Name occg:. :)t:: *:;..vx.
oc.33 ocwn,:..sE0:.
S:S:c:::4 C.:052:::.$48:ss.s.:: ::::::02 *;;M::,,it:::::.: ::::::0e: :1Srnsr-: 4,S:::;C: s: 0001 0006 4.419 b 0007 0002 4.419 ce 0009 0002 4.419 cee 0005 4.484 e 0002 0004 4.548 d 0008 0006 4.774 cc 0014 0001 5.355 i 0001 5.355 j 0016 0001 5.355 k 0017 0001 5.355 I 0018 0001 5.355 m 0019 0001 5.419 0 0001 5.419 p 0021 0001 5.419 q 0022 0001 5.419 r 0011 0001 5.484 f 0012 0001 5.484 9 0013 0001 5.484 h 0024 0003 5.516 v 0003 5.516 t 0023 0002 5.581 u 0026 0002 5.645 s 0028 0003 6.258 w 0029 0003 6.323 y 0027 0002 6.387 x 0002 7.065 z Node Hubsize cset size Name MIS: 0lS103 S3C: 3:1:M0:11 s: 9:3:',;3 SISK::: '1.00S? ,, &SISK: 2:1:.(:0:11:: s;s: :.
0005 22.000 e 0002 0004 22.000 d 0001 0006 22.000 b 0022 0001 20.000 r 0021 0001 20.000 q 0001 20.000 p 0019 0001 20.000 0 0018 0001 20.000 m 0017 0001 20.000 I 0016 0001 20.000 k 0001 20.000 j 0014 0001 20.000 1 0013 0001 20.000 h 0012 0001 20.000 g 0011 0001 20.000 f 0009 0002 19.000 cee 0007 0002 19.000 ce 0008 0006 16.000 cc 0026 0002 15.000 s 0003 15.000 t 0024 0003 15.000 v 0023 0002 15.000 u 0029 0003 12.000 y 0028 0003 12.000 w 0027 0002 12.000 x 0002 11.000 z Tables showing connectivity and net radius scores for nodes in test network 2. In each case, the 5 "best" scores are shown in bold.
The "Hubsize" in the first of these two tables is the number of direct connections to a node (e.g. node has six direct connections, and thus a Hubsize of 6). C-set size is the number of members on the connection set of a node, that is the number of nodes that can be reached directly or indirectly from that node.
Figures U-15 are representations of an actual network, the 400 KV electrical power io distribution network of the UK National Grid. Each node of this network comprises a respective substation or repeater. In Figures 12-14 certain nodes, for example the node 34 in Figure 12 are highlighted by being represented by an enlarged bold dot. These are the most significant nodes yielded by the analysis of the nodes by the various different examples of methods in accordance with the invention, as discussed below.
In Figure 12, the highlighted nodes are the most significant nodes yielded by the analysis of the power distribution network using the gnaboseflow algorithm. The probe count limit was 10,000, and the hop count limit was 8 for this analysis.
The starting node for each particle was selected at random so that the analysis was representative of the general flow of power across the whole network.
The gnapath algorithm could have been used to assist the user in setting the variables for this gnaflow analysis, by determining the average path length, as this would be a suitable figure for the hop count limit.
Figure 13 shows the ten most significant nodes revealed by a corresponding analysis by the gnafermi flow algorithm whereas the gnabose flow tended to reveal the nodes at larger hubs, the Fermi flow analysis tends to reveal those nodes which lie on pathways between large clusters of nodes. In Figure 15, the highlighted nodes are the ten most unique nodes in terms of their environment, as yielded by analysis with the gnaenv algorithm. Due to the relative complexity of the network, the assignments of nodes is not immediately obvious: the effect of multiple looped pathways associated with the nodes towards the centre of the network means that the nodes which are most o unique actually lie at the edge of the network. The invention thus indicates that the highlighted nodes are potentially the most crucial nodes in the network, even though an intuitive consideration would have suggested that the most important nodes would lie near the centre.
The following example cases show how the algorithms within the GNA suite can inter-operate with one another synergistically.
The first example is illustrated in Figure 16, which shows how the gnapath algorithm (called from the exlas script) is used as a pre-processor to extract the largest network fragment from a non-fully connected network prior to downstream processing. This schematic shows the various stages of processing a network using the GNA suite tools. The first step in the data preparation process is to use the public domain rset tool to take a set of binary association data (that is data which indicates node A is directly connected to node B with strength s) and to generate a connection matrix (which is used by the GNA suite and also by the visualisation tool inflate') Although not strictly necessary, the next step is to use the public domain inflate tool to visually examine the network architecture (for example to look for disconnected sub-nets). If (small) sub-nets are found, they can be removed by running the exlas2 tool. This calls the gnapath algorithm, examines the connection sets returned, and automatically removes all nodes which are not in the largest 1 The public domain inflator uses inverse square law repulsive forces between all nodes and also "spring" forces (c.g. F = -Although the exlas script is in the public domain it calls the GNA suite tool gnapath which is not connection set (hence the largest subnet). The rset tool is then re-run and uses the exlas output to generate a modified connection matrix for the largest subnet, which may then be analysed via the GNA suite tools. If no-subnets are found, the GNA suite tools can be applied directly to the output of rset having (optionally) visualised the network.
Figure 17 shows how the gnaflow algorithm or a simple (largest) hub picking algorithm can be used to make a targeted attack on a network. Nodes lesioned is the biggest N hubs in the case of the hub picking algorithm, the top N "flow nodes" in the case of gnaflow, or N randomly selected nodes in the case of a random attack. In Figure 17, the trace 36 represents the cumulative damage when the largest N hubs are removed, the trace 38 the cumulative damage occurring when the top N nodes found by Fermionic mode gnaflow analysis are removed from the network and the trace 40 the cumulative damage which occurs when N nodes are randomly removed from the network. In the case of the UK 400KV UK electricity transmission network, flow is well correlated to hub size so in this case, the less sophisticated hub picking approach does as well as the gnaflow algorithm. The effect of a random, non-targeted attack is essentially minimal. The flatter damage curve in the case of the transmission grid is an indication that it relatively robust in the face of a targeted attack. The damage metric, LI is computed by the gnapath algorithm and is defined as: 11 = / N/Wnetwork nodes I connection set size It should be noted that this metric function is continuous' with respect to increasing network damage which means that it (and the gnapath algorithm) can be used as a component in sophisticated stochastic algorithms designed to lesion networks in an optimal fashion (for example, to generate maximum degradation with minimal deletion of nodes).
It will be appreciated that the data for the ordinate axis of Figure 17 (i.e. the damage measure) is obtained by using gnapath to yield the average path length and connection set size data.
In all of the above tables, with the exception of table 3, the left-hand column shows index numbers for the nodes as set out in a node storage table for the network.

Claims (22)

  1. Claims 1. Network analysis apparatus comprising memory means on which is stored a virtual model of a network having multiple nodes, each of which is connected to one or more other nodes of the network by a respective connection, the apparatus having data processing means programmed or arranged to analyse the network by a method comprising steps of feeding virtual test particles to at least one node of the virtual network, causing each such test particle to propagate through at least part of the network, in accordance with one or more pre-determined propagation rules, to at least one further node connected to said at least one node and for each of one or more nodes recording in the memory means data relating to the visits of the test particle to that node.
  2. 2. A method of analysing a network having multiple nodes, each of which is is connected to one or more nodes of the network by a respective connection, the method comprising the steps of: (a) feeding test particles to at least one node of the network; (b) causing each test particle to propagate through at least part of the network in accordance with one or more pre-determined propagation rules to at least one further node over a respective connection; and (c) for each of one or more nodes recording data related to visits of the test particles.
  3. 3. Apparatus according to claim 1, or a method according to claim 2, in which the data comprise or represent the number of visits of particles to each node.
  4. 4 Apparatus or a method according to any of the preceding claims, in which the propagation rules include a node visit limitation rule which may be selectively applied so that, if the rule is applied, the number of possible visits of a given particle to each node is limited, whereas if the visit limitation rule is not selected, no such limitation is applied.
  5. 5. Apparatus or a method according to claim 4, in which the visit limitation rule restricts the number of times a particle can visit a node to one.
  6. 6. Apparatus or a method according to any of the preceding claims, in which a visit of a particle from a first node to a further node comprises the steps of selecting a further node further directly connected to the first node and updating a flow count for the further node if the selected propagation rules so permit.
  7. 7. A method according to any of claims 2 to 6, in which the network is a physical network, or a virtual model of such a network.
  8. 8. A method according to claim 7, in which the network is a physical network, and has recording means for recording receipt of information at the nodes, each particle comprises a respective information packet, transmitted from node to node.
  9. 9. Apparatus or a method according to any of the preceding claims, in which the data relating to the visits of particles to nodes comprise a respective flow count for each node, the flow counts being stored in corresponding flow count registers.
  10. 10. Apparatus or a method according to any of the preceding claims, in which the test particles are successively fed to the same initial node of the network, so as to provide a percolation measure associated with that node.
  11. 11. Apparatus or a method according to any of the preceding claims, in which the particles are used to analyse the network in as stochastic manner.
  12. 12. Apparatus or a method according to claim 11, in which the particles propagate through the network in a random or pseudo-random manner.
  13. 13. Apparatus or a method according to claim 12, in which a particle at one node moves to a next node selected at random from the nodes directly connected to said one node.
  14. 14. Apparatus or a method according to any of claims 11 to 13, in which the initial node to which each particle is fed is selected at random or in a pseudo-random manner.
  15. 15. Apparatus or a method according to any of the preceding claims, in which the propagation rules include a rule setting, as a hop count limit, a maximum number of node visits for each particle.
  16. 16. Apparatus or a method according to any of the preceding claims, in which the io number of particles fed to the network, the probe count limit, is limited to a number less than the total number of connections of the network.
  17. 17. Apparatus or a method according to claim 16, in which the hop count limit, number of particles to be fed to the network and the application or otherwise of the IS visit limitation rule are user controllable parameters.
  18. 18. Apparatus or a method according to any of the preceding claims, in which the data relating to the visits comprise the identities of the nodes in a set of the nodes which are accessible from a given node over a given number of connections, or hops, from that node.
  19. 19. Apparatus or a method according to claim 18, in which the method includes the step of comparing sets of said nodes accessible via different connections from the given node to obtain an indication of the importance of the node to the network architecture.
  20. 20. Apparatus or a method according to claim 19, in which the method includes the steps of calculating the mean path length from the given node to each other node in the set.
  21. 21. Apparatus substantially as described herein, with reference to, and as illustrated in, the accompanying drawings.
  22. 22. A method substantially as described herein with reference to the accompanying drawings.
GB1500943.4A 2015-01-20 2015-01-20 Improvements in and relating to network analysis Withdrawn GB2534375A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
GB1500943.4A GB2534375A (en) 2015-01-20 2015-01-20 Improvements in and relating to network analysis
PCT/GB2016/050071 WO2016116734A1 (en) 2015-01-20 2016-01-12 Improvements in and relating to network analysis

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1500943.4A GB2534375A (en) 2015-01-20 2015-01-20 Improvements in and relating to network analysis

Publications (2)

Publication Number Publication Date
GB201500943D0 GB201500943D0 (en) 2015-03-04
GB2534375A true GB2534375A (en) 2016-07-27

Family

ID=52630859

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1500943.4A Withdrawn GB2534375A (en) 2015-01-20 2015-01-20 Improvements in and relating to network analysis

Country Status (2)

Country Link
GB (1) GB2534375A (en)
WO (1) WO2016116734A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180018076A1 (en) * 2016-07-01 2018-01-18 Autodesk, Inc. Three dimensional visual programming interface for a network of devices

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111813831B (en) * 2020-07-10 2022-10-14 中国铁塔股份有限公司厦门市分公司 Method, device and readable medium for presuming substation to which communication base station belongs
CN112487658B (en) * 2020-12-14 2022-09-16 重庆邮电大学 Method, device and system for identifying key nodes of power grid

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104685832B (en) * 2012-10-31 2019-06-14 富士通株式会社 Communication control method, network system and communication device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180018076A1 (en) * 2016-07-01 2018-01-18 Autodesk, Inc. Three dimensional visual programming interface for a network of devices
US11809678B2 (en) * 2016-07-01 2023-11-07 Autodesk, Inc. Three dimensional visual programming interface for a network of devices

Also Published As

Publication number Publication date
WO2016116734A1 (en) 2016-07-28
GB201500943D0 (en) 2015-03-04

Similar Documents

Publication Publication Date Title
Yang et al. Bayesian species identification under the multispecies coalescent provides significant improvements to DNA barcoding analyses
Cerrillo et al. Nonequilibrium quantum transport coefficients and transient dynamics of full counting statistics in the strong-coupling and non-Markovian regimes
Bruni Approximating minimal unsatisfiable subformulae by means of adaptive core search
Achlioptas et al. The solution space geometry of random linear equations
US20110161055A1 (en) Space solution search
WO2008016495A2 (en) Determination of graph connectivity metrics using bit-vectors
GB2534375A (en) Improvements in and relating to network analysis
Aiman et al. Genetic algorithm based solution to SAT-3 problem
Mo et al. Choosing a heuristic and root node for edge ordering in BDD-based network reliability analysis
Wright et al. Bayesian analyses in phylogenetic palaeontology: interpreting the posterior sample
Levi et al. Constructing near spanning trees with few local inspections
Zhou et al. Link prediction on heterophilic graphs via disentangled representation learning
Paradis The distribution of branch lengths in phylogenetic trees
Jan et al. Computational aspects of damage spreading
US10333697B2 (en) Nondecreasing sequence determining device, method and program
Canale et al. Diameter constrained reliability: Complexity, distinguished topologies and asymptotic behavior
Semenov et al. Finding effective SAT Partitionings via black-box optimization
Lê et al. A novel variable ordering heuristic for BDD-based K-terminal reliability
Hui Network reliability estimation
CN104657507B (en) The mode detection method and device of diagram data based on distributed system
Kim et al. On the use of Markov chains for epidemic modeling on networks
Bhandari et al. Betweenness centrality updation and community detection in streaming graphs using incremental algorithm
Ahmad et al. Determination of Critical Edges in Air Route Network Using Modified Weighted Sum Method and Grey Relational Analysis
Durfee et al. Parallel batch-dynamic graphs: Algorithms and lower bounds
Sanjab et al. Graph-theoretic framework for unified analysis of observability and data injection attacks in the smart grid

Legal Events

Date Code Title Description
WAP Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1)