First WhatsNewHelpConceptInfoGlossaryHomeContentsGalleryThemesOur PapersSearchMessage
BackNext TourbusIntroductionTutorLinksApplicatOnlineRelatedOfflineSoftwareSOSFAQExhibitionFun

Introduction to Complex Systems

by David Kirshbaum


Outline of Contents

I. Introduction:
  1. Complex Systems Theory : Basic Definition

II. Four Important Characteristics of Complexity:
  1. Self-Organization
  2. Non-Linearity
  3. Order/Chaos Dynamic
  4. Emergent Properties

III. Computer Programming approaches used for demonstrating, simulating, and analyzing these characteristics of Complex Systems:
  1. Artificial Life
  2. Genetic Algorithms
  3. Neural Networks
  4. Cellular Automata
  5. Boolean Networks



I. Introduction to Complex Systems Theory : Basic Definition

A Complex System is any system which involves a number of elements, arranged in structure(s) which can exist on many scales. These go through processes of change that are not describable by a single rule nor are reducible to only one level of explanation, these levels often include features whose emergence cannot be predicted from their current specifications. Complex Systems Theory also includes the study of the interactions of the many parts of the system.

Previously, when studying a subject, researchers tended to use a reductionist approach which attempted to summarize the dynamics, processes, and change that occurred in terms of lowest common denominators and the simplest, yet most widely provable and applicable elegant explanations.

But since the advent of powerful computers which can handle huge amounts of data, researchers can now study the complexity of factors involved in a subject and see what insights that complexity yields without simplification or reduction.

Scientists are finding that complexity itself is often characterized by a number of important characteristics:
(II.1) Self-Organization
(II.2) Non-Linearity
(II.3) Order/Chaos Dynamic
(II.4) Emergent Properties.

From the learning process of analyzing, simulating, and modelling these characteristics of Complex Systems, a number of unique and thought-provoking computer programming approaches have emerged:
(III.1) Artificial Life
(III.2) Genetic Algorithms
(III.3) Neural Networks
(III.4) Cellular Automata
(III.5) Boolean Networks.


To obtain more information about Complex Systems in general Press:
Help & Overview or Thematic Introductions
Tutorials & FAQs
Applications
Relevant Links
Press your Browser BACK BUTTON to return to this point when or if you wish to.

(II.1) Self-Organization

Scientists are finding that change occurs naturally and automatically in systems in order to increase efficiency and effectiveness, as long as the systems are complex enough as defined above.

This change is accomplished by the elements that make up the system when they respond automatically to feedback from the environment the system inhabits. Environmental feedback can be seen as providing information about the system's efficiency and effectiveness.

Elements that survive negative environmental feedback will automatically re-settle themselves, or re-organize themselves and their interactions in order to better accomplish the system's goals. Success at this then assures their continued existence by also protecting or reinforcing the structures of which the elements are a part.

Such responsiveness occurs even when the elements and system are non-organic, unintelligent, and unconscious as long as the system is complex as described above.

For more general information about Self-Organization, press HERE

For information about applications, press HERE

For relevant hyperlinks to other webpages on the Web, press HERE

Press your Browser BACK BUTTON to return to this point when or if you wish to.

Examples

Some examples of Self-Organization in different Complex Systems are:

(II.1.A) Natural Selection: Natural Selection is best known from the theory of evolution that describes what species succeed and what species become extinct in the battle to survive in the natural environment.

In that theory, individuals are born with a range of characteristics. Those characteristics that support survival become more common in the species as a whole because the individuals that have those characteristics tend to live longer and mate more successfully, thus spreading the gene for that characteristic more readily. In contrast, those individuals that have characteristics that do not support survival do not as readily pass on the gene for that characteristic, because they do not tend to survive as well and thus are less likely to breed as often.

Such a process can also happen with non-organic complex systems, because naturally in the course of development in all complex systems (organic or non-organic) those processes that work will be reinforced or occur again, or be protected or strengthened somehow (because the structures they are a part of will tend to not be damaged as much or will be protected in some way). In contrast, those processes that damage or endanger the system will operationally not occur as often or be as easily transferred because the structures that they are a part of are more likely to be damaged or destroyed.

Researchers have developed computer programming techniques that solve problems based on the complex processes of biological evolution and natural selection. These techniques of "Evolutionary Computation" are called: (III.1) Artificial Life, and (III.2) Genetic Algorithms.

For a brief introduction to these techniques, press their name or the corresponding number.
Press your Browser BACK BUTTON to return to this point when/if you wish to.

(II.1.B) Another pattern for Self-Organization is found for example in the complex system of the central nervous system of animals.

In this example, the brain cell networks that are the ones that most successfully help the animal survive are the one's that are the most used, and thus are the ones that grow the most in size and complexity. In contrast, those brain cell networks that do not help the animal survive are less used, and thus grow less, and may even stop growing, atrophy, and disappear.

Researchers have developed a computer programming technique based on this approach to solving problems (like survival) called (III.3) Neural Networks.

For a brief introduction to this technique press on it's name or outline topic number.
Press your Browser BACK BUTTON to return to this point when/if you wish to.

(II.1.C) A further example of a pattern of Self-Organization is where an overall task is accomplished by breaking it down into mini-tasks which are then spread among separate little parts for execution, which then also coordinate together where necessary to support the overall functioning.

In nature we find this manifested most obviously in cells which make up organs in the body. Cells do not exist separate from the organ. Cells in fact make up the organ's very structure, and then perform different roles in the overall work of the organ which accomplishes it's overall purpose.

Researchers have developed a computer programming technique based on this approach to solving problems called (III.4) Cellular Automata.

For a brief introduction to this technique press on it's name or outline topic number.
Press your Browser BACK BUTTON to return to this point when/if you wish to.

(II.2) Non-Linearity

When change occurs in Complex Systems it occurs in a non-linear fashion.

Linear change is where there is a sequence of events that affect each other in order as they appear one after the other. In contrast, in non-linear change, one sees elements being changed by previous elements, but then in turn these changed elements affect the elements that are before it in the sequence.

Thus in non-linear analysis, researchers look at how everything in the sequence has the possibility of affecting everything else in the sequence before and after it. Thus often the result ends up being unproportional to the original input.

This type of dynamic in a complex system is much closer to how things actually happen in nature. Almost never in nature does a purely linear sequence of events and change occur.

For more general information about Non-Linearity, press HERE
Applications : Relevant Links
Press your Browser BACK BUTTON to return to this point when/if you wish to.

(II.3) Order/Chaos Dynamic

It is usually fairly easy to predict what will develop in the next stage of system development when one has extensive knowledge of the previous stage. And this knowledge is usually of a range of possibilities that can develop next.

But as one begins to deal with stages of development farther and farther down the sequence of developmental stages, it becomes more and more difficult to predict what will develop based only on knowledge of that first stage, even when that knowledge is extensive. Thus even though there is logical development from stage to stage, there is an increasing inability to predict what will actually be the next development. This uncertainty of predictability is called "chaos".

Thus, one can then see how a tiny change in a condition can eventually lead to a huge number of different possible results. But yet all these changes are still logical results of that tiny change, it just becomes increasingly difficult to predict exactly which result will actually occur. But since some probability of occurrence for many of them can be known, then statistical analysis is still very important for helping describe the overall situation.

The classic illustration for this is the idea of how the flapping of butterfly wings in one part of the world can contribute to the evolution of a hurricane in another part of the world.

For more general information about Order and Chaos, press HERE then HERE
Applications : Relevant links.
Press your Browser BACK BUTTON to return to this point when/if you wish to.

(II.4) Emergent Properties

The unpredictability that is thus inherent in the natural evolution of complex systems then can yield results that are totally unpredictable based on knowledge of the original conditions. Such unpredictable results are called emergent properties. Emergent properties thus show how complex systems are inherently creative ones.

Emergent properties are still a logical result, just not a predictable one. This can also include higher level phenomenon that cannot be reduced to it's simpler constitutes or it's origins.

For more information in general about Emergent Properties, press HERE
Applications : Relevant Links.:
Press your Browser BACK BUTTON to return to this point when/if you wish to.

(III) Computer Programming Techniques

These emulate and model characteristics of Complex Systems

(III.1) Artificial Life

Artificial Life is a modelling program that simulates on a computer screen, with computer generated entities (called agents), the evolutionary processes of life which dictate which will survive and which will not. This includes natural selection.

For more information in general about Artificial Life, press HERE
Applications : Relevant Links
Press your Browser BACK BUTTON to return to this point when/if you wish to.

(III.2) Genetic Algorithms

Genetic Algorithms is a computing approach that is based on processes that attack problem solving in the manner that natural selection in biological evolution attacks the problem of survival of the fittest. Just as in natural selection, the program is set up to generate all sorts of programming solutions to a particular problem, and the ones that succeed and solves the problem survives, and the ones that don't are discarded.

For more information in general about Genetic Algorithms, press HERE
Applications : Relevant Links
Press your Browser BACK BUTTON to return this point when/if you wish to.

(III.3) Neural Networks

An interconnected group of artificial nerve cells affect each other in such a way as to arrive at a result based upon their inputs. This is adjusted in time until it best matches the required answer.

This approach is primarily used to study processes of learning and self-organization.

This programming approach is patterned after the developmental processes of the nervous systems of the animal kingdom.

For more information in general about Neural Networks, press HERE
Applications : Relevant links
Press your Browser BACK BUTTON to return this point when/if you wish to.

(III.4) Cellular Automata

Cellular Automata is a computing approach centered around simple programming sub-routines (called agents) which are given certain operational limitations:

(III.5.A) Their functioning is limited to a sub-task of the overall task of the structure that contains them.

(III.5.B) Their state is determined solely by the structure that contains them

(III.5.C) They cannot move around independent of that structure.

These limitations are often also the programmed parameters of the designated problem or goal.

These agents then solve their own individual programming goals, and coordinate together, which then contributes to the accomplishment of the overall structure's task or goal.

This is patterned after the way cells operate as parts of an organ in the body, and support the functioning of that organ.

To learn more in general about Cellular Automata, press HERE
Applications : Relevant links
Press your Browser BACK BUTTON to return this point when/if you wish to.

(III.5) Boolean Networks

Boolean Network Computation begins with the basic binary logic unit of on/off, yes/no, right/wrong - 2 opposite choices with no choices in between. One then studies complexity by creating complex relationships between such simple logic units by adding Boolean logic connectors such as "AND", "OR", "NOT AND", etc., and by using random variables. An example of this would be:

AND means both conditions must be true in order for the final condition to be true.

(1) Professional basketball players must be tall, AND
(2) Professional basketball player must be fast.
John is tall but he is not fast. Therefore he cannot be a professional basketball player.

In contrast, OR means that only one condition needs to be true.

(1) Tom likes sweet food, OR
(2) Tom likes salty food.
Chocolate brownies are sweet but not salty. Tom still likes chocolate brownies.

To learn more in general about Boolean Networks, press HERE
Applications : Relevant links
Press your Browser BACK BUTTON to return this point when/if you wish to.

More information about applying these ideas in our lives can be found HERE and in our many Essays.

To make a comment, please press HERE.

First WhatsNewHelpConceptInfoGlossaryHomeContentsGalleryThemesOur PapersSearchMessage
BackNext TourbusIntroductionTutorLinksApplicatOnlineRelatedOfflineSoftwareSOSFAQExhibitionFun
Page Version 4.73 April 2002 (Paper V1.0 October 98)