Update theory.en.md
This commit is contained in:
parent
453390a6ad
commit
42520df0c4
17
theory.en.md
17
theory.en.md
|
@ -30,14 +30,23 @@ Automaton
|
|||
A spatial automaton is a set of transition rules associated with an initial state of space.
|
||||
All the static information is in the space. All the dynamic information is in the rules. The automaton uses no other information. It must contain at least one transition rule and should not associate two identical ones.
|
||||
The transitions are local and asynchronous. They may be performed in parallel if their areas do not overlap. They are Markov processes.
|
||||
During a transition, all the transition rules are evaluated. If several can apply, one of them is selected at random or according any other algorithm.
|
||||
During a transition, all the transition rules are evaluated. If several, with the same set of conditions, can apply, one of them is selected at random or according any other algorithm. If several, with different sets of conditions, can apply, the one with the greatest number of conditions apply.
|
||||
|
||||
Transitions tree
|
||||
All transition rules of the same automaton can be grouped into a single tree: the transitions tree. This tree can be created automatically from a list of the rules. Each rule is written in the tree as a path from the root to a leaf. This path lists all the conditions that must be met for this transition rule to be applied. In each path, the conditions order is the same. It refers to an order previously defined on the set of all the sites of all the cells where an elementary rule can apply. This order is the same for all rules.
|
||||
At each node, each transition rule follows the branch whose number equals the number of arrows that met its condition for that site. Two rules follow the same path starting from the root as long as they share the same conditions. When they differ on one condition, they then follow two different branches. To each site on which a rule has a condition corresponds at least one node. Each node may have as many branches as there may be arrows in a site (including zero) plus one. This branch, known as neutral, is followed by the rules that have no conditions on this site but still have some conditions further.
|
||||
All transition rules of the same automaton can be grouped into a single tree: the conditions tree. This tree can be created automatically from any list of rules. Each rule is written in the tree as a path from the root to a leaf. This path lists all the conditions that must be met for this transition rule to be applied. It can also lists nodes that contain no condition for this rule but some conditions for other rules. Why is this ?
|
||||
The set of conditions of all the rules define a space which is named the local space. To recognize if a rule can apply, all the conditions of this rule must be checked. But when this research is done simultaneously for all the rules through the condition's tree, a sequence search has to be defined on the set of all the sites of all the cells of the local space in order to avoid checking several times the same site. This sequence search order is arbitrary and several orders can (and should) be compared.
|
||||
Whatever the search algorithm used, it has to establish a path that enumerate all the sites of all the cells of the local space at least once and once only. Using this enumeration or path, the search of a convenient rule through the conditions'tree proceeds as follows:
|
||||
At each step of the path is a site of a cell of the local space. At each step of this path is also a depth level of the conditions'tree. The number of arrows contained in the site is compared to the conditions of the various rules at this depth level.
|
||||
If no rules has a condition on the number of arrows contained in this site, the site is skipped and the search goes on to the next site and to the next depth level. The branch that links a node whith no conditions to the following node (or level) is called a neutral branch.
|
||||
Plus il y a de règles (moins il y a d’incertitude face à une situation), meilleure est la performance.
|
||||
If a rule contains a condition on the site, then the search follows a branch whose number equals the number of arrows that met its condition for that site.
|
||||
To summarize, two rules follow the same path starting from the root as long as they share the same conditions. When they differ on one condition, they then follow two different branches. To each site on which a rule has a condition corresponds at least one node.
|
||||
Each node may have as many branches as there may be arrows in a site (including zero) plus one. This branch, known as neutral, is followed by the rules that have no conditions on this site but still have some conditions further.
|
||||
|
||||
Performances
|
||||
Speed depend on the average depth of the transitions tree and on number of neutral branches. If all the possible situations are each described by a rule, there are no neutral branches and the performance is proportional to the average depth of the transitions tree. The maximal depth of the tree cannot exceed the number of sites the the local space contains.
|
||||
Speed depend on the average depth of the transitions tree and on number of neutral branches. If all the possible situations are each described by a rule, there are no neutral branches and the performance is proportional to the average depth of the transitions tree.
|
||||
The more rules (the less uncertainty about a situation), the better the performance.
|
||||
The maximal depth of the tree cannot exceed the number of sites the the local space contains.
|
||||
If some possible situations are not described by a rule, there are neutral branches. Then, exploring the local space may not lead to any change. The more neutral branches, the longer the exploration of the tree. This is because the nodes that have a neutral branch may need to be explored several times, if the exploration of their non-neutral branches fails.
|
||||
Speed depends lesser on the size of the area covered by the set of transition rules. This size mainy limits the number of possible parallel processes in the space.
|
||||
|
||||
|
|
Loading…
Reference in New Issue