Feedback Loop Analysis in the Encyclopedia Project

Anthony Judge and Nadia McLaren

Extract from the final report on Information Context for Biodiversity Conservation (2000).
See also Vicious cycles and loops (1995) and Strategic ecosystem: Feedback loops and dependent co-arising (1995)


In parallel with the work on individual data elements in the Strategies and Problems files (Section 9.2: Web module: Issues, actions, treaties and organisations, Activities of the workpackage), UIA undertook to advance its explorations of feedback loops (both self-reinforcing and self-damping), specifically for this project in the fields of environment and conservation. The specifications for this work were to:

Develop, refine and seek to dynamically display the self-sustaining, interlocking loops of conservation issues and solutions. In the event that on-the-fly generation and visualisation of loops is feasible during web server access, such dynamic displays would be developed as a means of shifting the level of analysis beyond seemingly isolated environmental Problems and Strategies. The visualization tools would then be adapted to assist editorial and error detection processes. The key issue here is speed of detection and generation of loops. This will be explored as a combination of machine capacity, algorithm logic and display design.

The significance of this work is that there has long been recognition of how one problem can aggravate another and of how several Problems can reinforce each other. The UIA data register many relationships between Problems in complex networks. Clearly such relationships may form chains or pathways linking many Problems. But hidden in the data as presented is also the existence of chains that loop back on themselves. The UIA data offer a unique opportunity to identify such feedback relationship loops or cycles through which several Problems constantly reinforce one another.

The notion of "loops", and its relevance to this project, requires some further explanation. As defined by the authors of Making Strategy in describing the value of Decision Explorer (Section 16.2.4: Decision Explorer): a loop represents a description of a chain of consequences that produces a dynamic outcome by feeding off itself (positive feedback = "vicious" or "virtuous" loops), or by controlling itself (negative feedback). Typically a feedback loop will be an important strategic issue in its own right. The purpose of detecting feedback loops is to raise the level of analysis of individual issues to a higher, systematic level. It is a technique which has the potential to add extra meaning to basic data, particularly relevant for policy makers (one significant user group for this product) and others concerned with understanding the interrelationships and root causes of environmental problems, notably those relevant to biological conservation. This is one perspective on the title of this project: Information Context for Biodiversity Conservation.

A self-reinforcing ("vicious") problem loop, then, is a chain of Problems, each aggravating the next, and with the last looping back to aggravate the first in the chain. An example is:

Man-made disasters > Vulnerability of ecosystem niches > Natural environment degradation > Shortage of natural resources > Unbridled competition for scarce resources > Man-made disasters.

Such cycles are "vicious" because they are self-sustaining problem cycles. organisational strategies and programmes that focus on only one problem in a chain may fail because the cycle has the capacity to regenerate itself. Individual "vicious problem cycles" also tend to interlock, forming tangled skeins of interlinked global Problems which implicate single environmental problems in chains and complexes of multi-sectoral issues. Without the means to untangle the relationships, the response to a conservation challenge may be ineffective, self-defeating or, even, harmful.

Before commenting on the project work in detecting vicious cycles, it is important to recognise that it is precisely through the detection of such loops that attention can be drawn to defects in the pattern of relationships in the data. It is possible for some loops to be the result of incorrect relationships rather than being representative of genuine feedback, and so "accidental" loops appear. Detection of loops is therefore in the first place an editorial tool for hyperlinkage within a relational database. It raises questions as to the appropriateness of certain links which otherwise may go unquestioned. It also sharpens the discussion on how distinctions are made, using verbal categories and definitions, and how system boundaries are drawn grouping what is represented in this way. The results indicate this is a very interesting area for further exploration.

Loop analysis

Prior to the Definition Phase of this project, experiments in 1995 gave rise to the results in Column 1 of the Table (below). It was concluded that the procedure had promise but needed refinement, notably to detect Problems erroneously excluded from loops, as well as loops excessively connected to a single problem.

Progressive Refinements of Problem Loops
. Prior to Project INFO2000 Project
Year 1995 1999 1999 2000 2000
. Column 1 Column 2 Column 3 Column 4 Column 5
Machine 386/486 486 Pentium III Pentium III Pentium III
Processing Time many weeks Some days 37 hours 12.5 hours 500 hours
Chains tested 9,519,722 15,000,000 46,474,882 16,091,877 1,239,769,768
Profiles . . 6,891 1,217 12,397
2-Loop - . . . 5
3-Loop 35 . . . 173
4-Loop 115 . . . 230
5-Loop 527 . . . 473
6-Loop 3,058 . . . 1,163
7-Loop 3,568 . . . 3,473
8-Loop excluded excluded excluded excluded 10,600
9-Loop excluded excluded excluded excluded 35,438
Total 7,303 6,000 15,958 8,253 51,555


Loop display for the Problem "Deforestation". Each cell is a Problem profile
Network Loop display for the Problem "Deforestation"


Display of all Problems involved in loops concerning "Deforestation"
Display of all Problems involved in loops concerning "Deforestation"

During the Definition Phase for the project, the data file on loops in the Problems data was critically reviewed. The programme previously written to detect aggravating pathways in the data and identify loops was re-run. Loops were identified for selected types of problems only and for a maximum of 7 problems per loop (since chain searching requires many days of computing time, even with 133 MHz PCs available to us at that time). Two weeks of judicious source editing of aggravating links between Problem profiles reduced the size of the file from 19,000 problem loops to around 7,000. A preliminary detection analysis was also made of cycles of facilitating strategies in the Strategies database. At the completion of the Definition Phase, there were 200 loops recognised to contain environmental issues relevant to biodiversity conservation. They were presented on the prototype CD. Work was also done in improving the display of loops, using popups, from single data records on the prototype CD.

It was anticipated that the number of loops detected in the data would increase significantly following the editing work on content and hyperlinks during the Implementation Phase of the project (Section 9.2.1: Substantive activities). One need for this work was to acquire a faster computer (to avoid having to segment the data). This was done with project funds.

However, loops are relatively rare in chains of problems. It was anticipated that the technique to detect loops (to this point explored in a DOS environment in batch mode and delivered online in a static mode) would need to be improved to make it easier for an online user to explore them dynamically. The algorithm through which such loops are detected was referred to a mathematician, but with no breakthrough. However, our objectives were achieved in other ways.

The next step in this work was enabling the contextual listing of Problems and Strategies on user request relating to a selected node. The list was provided "on the fly" at the request of the visitor to the UIA website. This facility provided a rich pattern of information in which loops were indicated if detected in the data.

During 1999, some 15 million chains of Problems were searched to detect those that looped back on themselves within 7 links maximum. Some 6,000 loops were detected and were scanned for potential errors and hyperlink redundancy. The results of this work were integrated into the facilities offered to web users via the UIA website. Loops were flagged in the hit index and so became available to webusers for the first time in beta test mode in October 1999. This web module was delivered in beta mode at http://www.un-intelligible.org/docs/overview.php#orga in early 1999 and has been continuously upgraded on numerous occasions since that time. Later in the year, as a result of third-party contribution to Java graphics capability, loops were visualised as an integral feature of the bespoke Java spring mapping facility (Section 16.2.2: Spring maps (Java applet)). This was a major step in the online graphic presentation of feedback loops in the data and is described below in Section 11.2.2: Loop patterns.

The non-web standard editing software was augmented to detect local link redundancies and errors in the cross-relationships of Problems and Strategies. This meant that the daily work of editing database profiles was also directly contributing to the refinement of loops. Of particular interest in any loop analysis were Problem profiles indicated as being the most highly connected to loops, namely members of the largest numbers of loops. These were treated as indicative of inappropriate hierarchical clustering and encouraged redistribution of functional relationships to broader or narrower Problems.

The final stages of the loop detection and visualization activity were completed towards the end of 1999. First, the loop detection program was run in batch mode for all Problems (except the most detailed and minor). The result was 15,958 feedback loops. Loops that involved the more detailed and minor Problems were edited at source to correct anomalous linkages

This activity reduced the number of loops to 5,873. To further eliminate errors, entries involved in more than 80 loops were carefully edited; redundant and anomalous links were corrected. This activity reduced the number of loops to 2,675. It is believed that this list effectively represents "keystone" biodiversity issues -- problems that are implicated in many negative feedback systems concerning the natural environment.

Finally, the loop detection program was run again for the entire Problems database. The resulting 51,555 loops were subjected to the error tests developed in previous iterations. A total of 9,315 Problem loops were uploaded onto the website.

A similar procedure undertaken on the Strategies database produced over 2,000 loops, but of inconsistent quality. No project time remained to invest in refinement of these links and the loops were not uploaded at this time.

It is expected that procedures developed in this project for working with loops will become the standard for future reiterations as the databases evolve in the future.

Loop patterns

In order to give users a sense of the pattern that multiple loops formed, a colour-coded tabular presentation is generated on-the-fly from database entries with loops. An example for "deforestation" is shown.

Java spring map display of loops for the Problem "Deforestation"
Java spring map display of loops for the Problem "Deforestation"

Loop display

Users are able to manipulate both of the above displays. The elements of the Java spring map can be dragged to redispose them. The same is true of the three-dimensional virtual reality display, which in this case is dynamic. Clicking on the nodes in either display will open a window with the corresponding profile text from the database.

3-D display of loops for the Problem "Deforestation". Each node is a Problem in the loop.
[Clicking on a node opens the Problem profile in the interactive variant]
3-D display of loops for the Problem "Deforestation"

At the close of this project work, the loop detection program successfully explored 1,239,769,768 chains of relationships in the Problems file to detect 51,555 loops (of up to 9 elements) in 12,397 Problem profiles (types B,C,D,E,F -- the more general categories). This took only 500 hours of computer time. The results were as indicated in Column 4 of the table above.

Having proved the possibility of identifying such cycles, the question raised was how this information could be best portrayed through various mapping techniques. One attractive option is to map the circles around the surface of a sphere with whatever interlocking the data implies.

In anticipation of such expertise, during the final phase of the project, several approaches were taken to facilitate user visualization of loops from the profile of any selected entry that was part of a loop). This work drew from complementary work in the concerned with "Graphics and Visualization" (Section 16: Multimedia visualization). As presented online at the culmination of this project, users can choose between the following presentations:

Tabular presentation: Users have a choice of two sets of tables:

  • Aggravated problems: Presents an array of cells in a first table, coloured to give the user a sense of the pattern of links from the selected problem, with a second table as a key to the first. Users can click from there to a similar table focusing on any selected problem in the array. Unfortunately because of technical constraints in the construction of the HTML page, the number of loops presented in this way is currently limited.

  • Aggravating problems: Since problem relationships are reciprocal, a second set of tables allows users to explore the reverse set of relationships in a similar manner.

Java spring map: Users have the option of selecting a spring map presentation, generated in response to the user request, restricted to problem loops. This can be used as an access interface to other such maps or to individual profiles of problems identified as nodes in the display.

Virtual reality display: Users have the option of selecting a virtual reality display, generated in response to the user request, restricted to problem loops. This presents a limited number of loops with which the selected problem is associated. The concern here was to demonstrate the viability of allowing users to generate and explore loops in this mode. As with Java map, users could then click into a text profile of any problem in a loop. Of special interest is the relative ease with which different display metaphors could be designed. The challenge is effectively switched to the question of which design metaphors provide the most additional meaning.

Identification of future activities

Partnerships and supportive coalitions of organisations

Both functionally and conceptually, such vicious cycles may offer a better way to approach complex networks of problems. Indeed they serve to make clear that any organisation with projects focusing on a single problem needs to be aware of any vicious cycle of which that problem is a part. Unless that organisation coordinates its activities with any bodies focusing on other problems in that cycle, its work may be undermined. Despite apparent success in responding to a particular problem in the short term, this may not affect the sustainability of the vicious cycle of which it is a part. Pressures building up in other parts of the cycle may regenerate the problem.

Ideally a coalition of organisations would form in response to each vicious problem cycle. Information passed between organisations should then match the pattern of impacts between the problems with which they are concerned. The strategic issue may be less one of how to 'break' the cycle and more one of how to reverse it, exploiting the fact that problems are functionally linked in this way.

Also, there are not just "vicious problem cycles". A significant number of problems also alleviate other problems, although this information is less easy to obtain and such links are consequently less frequent in the UIA data. There may therefore be "beneficent problem cycles" through which problems constrain each other. It could prove strategically advantageous to locate such cycles. Correspondingly, in the Strategies data there would be "facilitative strategy cycles" and "constraining strategy cycles".

Using the techniques developed through this project, UIA is in a good position to now identify the families of self-reinforcing and self-damping cycles in international activities. From this additional work it could identify both (a) networks of organisations working on the same issues and (b) supportive coalitions of organisations involved with problems and strategy cycles.

Display modes for feedback loops

During the Definition Phase of this project, Nadia McLaren visited the Millennium Institute in Washington DC for a demonstration of their software applications of system modelling and displays, which include feedback loops. The bespoke Java applet for spring maps, designed for this project, has the capacity to display feedback loops. Experiments with VRML showed that feedback loops could be represented in 3-D, notably as structures of loop clusters.

Screenshots of virtual reality configurations generated from problems, organizations, strategies databases
Virtual reality configuration of problems Virtual reality configuration of problems
Virtual reality configuration of organizations Virtual reality configuration of organizations

Decision Explorer

Late in the project, the new features in the software Decision Explorer were found to display and analyse feedback loops. It is important to stress that this product is a tool for exploring information in a feedback model, not just a 'page layout' tool where the concepts are neatly placed. It is intended to be a dynamic modelling tool working with a database of concepts and links where areas of the model are extracted to focus on using a "map" command to "bring" further concepts onto the display. The producers of the software have suggested to the UIA that it may be preferable to have an initial map layout stored with the model data. If this is appropriate, the UIA could work with them to add a new section to the data with X/Y coordinates for the concepts. This would present people with a neater view of the data initially.

Another possibility suggested by the producers is their development of a 'Viewer' version of Decision Explorer that will be restricted to displaying only views that have been saved in a model, with no analysis or other capabilities. It would be free. In this way UIA users could distribute 'finished' models more widely.

Improved algorithms

The interesting possibilities for the development of more sophisticated displays of feedback loops depend on the identification and implementation of algorithms capable of positioning a multiplicity of loops (several hundred) over the surface of a sphere. To be useful, this has to be organised so the more detailed loops are positioned "locally" whereas the intersectoral loops exploit the global properties of the sphere.

As discussed elsewhere, it is interesting to hypothesise the existence of major 'pathways' formed by elements of different loops. Such pathways can be envisaged as being like rivers from which local loops break off (as whorls). A number of such pathways may intersect. It would then be the interlocking of these pathways which ensured the integrity of the system of problems as a whole.

This approach becomes especially interesting if it is hypothesised that such pathways are themselves necessarily circular. The question can then be formulated in terms of the nature of the surface onto which the pattern of loops can be usefully projected or mapped so as best to bring out the systemic integrity.

A flat surface is not especially interesting for such an exercise (although this has been done for metabolic pathways). More interesting in comparison is a sphere or a torus. In the case of a sphere, any such major pathways could emerge as 'great circles' in a geometrical sense. It would then be the interlocking of such great circles that provided the integrity of the structure. Lesser circles could encompass portions of the sphere. Local circles could then be positioned appropriately in relationship to them. Graphically displayed on computer, they could be accessible by zooming when detail was required, but the overall pattern would not be lost.

Clearly the projection of the loops onto such a surface constitutes a special challenge. What mathematical operation is necessary to effectively 'massage' the loops into the positions on the surface that most effectively bring out the integrity of any great circle-type phenomena? How should this question be formulated in mathematical terms?

Clearly the number of loops of the type detected can be considered very large, or even infinite, when the number of elements in a loop is increased. What then is the mathematical constraint that usefully excludes certain loops, so limiting the number that can be detected? This question would seem to have something to do with maximising the number of tangential relationships between loops, notably by 'nesting' the maximum number of loops within other loops -- minimising the number of loops that need to be represented non-tangentially as crossing other loops.

It might be argued that this approach to the analysis of the data is more complex than other more conventional forms available from graph theory. The assumption made here is that the constraint of representation on a surface comprehensible to the human mind is of immediate relevance to the ability to make informed decisions on such matters at a policy level. The existing ability to provide specialised analysis of what amounts to local loops in isolation has been well demonstrated, as has the inability to act on the larger loops to which these may contribute. A more comprehensive approach is required to 'thinking globally and acting locally', whether in the geographical or the systemic sense (as suggested here).

As in the case of studies currently supported by computer graphics (CAD, PCBD, molecular chemistry, etc), and even dependent on them, it is suspected that this approach might offer an entirely new grasp of global system properties of very large

Note: In some cases the relationship may be a feedback loop in its own right where A influences B and B influences A -- creating a nested negative feedback loop within a positive feedback loop.

The logic behind this is that it is inappropriate for broad and detailed Problems to be directly aggravating narrow and minor Problems, and vice versa; this connection is best shown through hierarchical relationships where "suites" of problems are so aggravating. The most common remedy was to remake the link higher up the hierarchy of the detailed or minor Problem.


Colin Eden and Fran Ackermann. Making Strategy: the journey of strategic management. Sage Publications, London, 1998.

Anthony Judge. Clarification of a Mathematical Challenge for Systems Science, 1994 [text]

creative commons license
this work is licenced under a creative commons licence.