This example is similar to Example 4, but now the two nodes that are off-line at the start of the square dance exchange are not related to each other (in the sense that they do not form an exchange pair in any of the five successive cycles). This leads to the interesting situation that after the five exchange cycles, there are two sets of nodes that each have a result based on 29 contributions in total. this is curious, because there are only two dead nodes in the network so that we would expect a result based on 30 nodes in total.

The issue here is that the accumulation results with 29 contributions are in fact not the same. The difference is caused by the different exchange partners of the two dead nodes 9 and 22 in the very first exchange cycle (i.e. nodes 25 and 6 respectively).

The contribution of node 25 can ONLY reach the upper half of the table (nodes 0 to 15) via its exchange with node 9 in the first cycle. However, node 9 is off-line so that none of the nodes 0 to 15 will ever receive the contribution from node 9 (dead) OR node node 25. Also the contribution of node 22 9dead) will of course be missing, leading to 32 - 3 = 29 contributions only. 

Similarly, the contributions of node 6 never reach any of the nodes 16 to 31, because the only line of communicaton would be via dead node 22 in the first cycle. The nodes 24 to 31 therefore find a result based on 29 nodes, namely all 32 minus the dead nodes 9 and 22, and the cut-off node 6.

To identify this situation, the safety checks after completion of the square dance process must not only look at the number of contributions, but also at the result itself. In that case, it will be clear to all nodes that after the repair actions in the first part of table E, all nodes have 29 contributions, but they do not all have the same contributions.

In practice, a checksum is used to make sure that the accumulation results are identical on all connected nodes. This checksum can be compared much faster than sending over the entire accumulation result (which may be a normal matrix partition of several Gigabytes). If the number of  contributions is identical on all neighbouring nodes, but the checksum is not, a form of averaging will be performed that mends the differences in result. What is done exactly, depends on the accumulated information. For instance, a data table can be "averaged" by combining the two tables and removing double entries. A solution vector may actually be averaged, which is as good a solution as any. In all cases, the checksum test will ensure that not only the number of contributions is the same on all surviving network nodes, but also the actual accumulation result itself.

 

 

 

Project details

Ultimate Browsers SupportThe GPS Dancer project started in 2007 as a voluntary project of a working group of the International Association of Geodesy.

Read more ...

Square dance algorithm

Great Docs and SupportThe GPS Dancer system was named after its "square dance" exchange algorithm. Of course, it also wants to to make the GPS reference frame denser.

Read more...

Here, there be pirates

The Dancer on-line network became immune against internet connection problems by leaving the US marines, and becoming a pirate.

Read more ...

Go to top