HOME

TheInfoList



OR:

A schema (: schemata) is a template in
computer science Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
used in the field of
genetic algorithm In computer science and operations research, a genetic algorithm (GA) is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to g ...
s that identifies a
subset In mathematics, a Set (mathematics), set ''A'' is a subset of a set ''B'' if all Element (mathematics), elements of ''A'' are also elements of ''B''; ''B'' is then a superset of ''A''. It is possible for ''A'' and ''B'' to be equal; if they a ...
of strings with similarities at certain string positions. Schemata are a special case of cylinder sets, forming a basis for a
product topology In topology and related areas of mathematics, a product space is the Cartesian product of a family of topological spaces equipped with a natural topology called the product topology. This topology differs from another, perhaps more natural-seemin ...
on strings. In other words, schemata can be used to generate a
topology Topology (from the Greek language, Greek words , and ) is the branch of mathematics concerned with the properties of a Mathematical object, geometric object that are preserved under Continuous function, continuous Deformation theory, deformat ...
on a space of strings.


Description

For example, consider binary strings of length 6. The schema 1**0*1 describes the set of all words of length 6 with 1's at the first and sixth positions and a 0 at the fourth position. The * is a wildcard symbol, which means that positions 2, 3 and 5 can have a value of either 1 or 0. The ''order of a schema'' is defined as the number of fixed positions in the template, while the '' defining length'' \delta(H) is the distance between the first and last specific positions. The order of 1**0*1 is 3 and its defining length is 5. The ''fitness of a schema'' is the average fitness of all strings matching the schema. The fitness of a string is a measure of the value of the encoded problem solution, as computed by a problem-specific evaluation function.


Length

The length of a schema H, called N(H), is defined as the total number of nodes in the schema. N(H) is also equal to the number of nodes in the programs matching H.


Disruption

If the child of an individual that matches schema H does not ''itself'' match H, the schema is said to have been ''disrupted''.


Propagation of schema

In evolutionary computing such as
genetic algorithms In computer science and operations research, a genetic algorithm (GA) is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to g ...
and
genetic programming Genetic programming (GP) is an evolutionary algorithm, an artificial intelligence technique mimicking natural evolution, which operates on a population of programs. It applies the genetic operators selection (evolutionary algorithm), selection a ...
, propagation refers to the inheritance of characteristics of one generation by the next. For example, a schema is propagated if individuals in the current generation match it and so do those in the next generation. Those in the next generation may be (but do not have to be) children of parents who matched it.


The Expansion and Compression Operators

Recently schema have been studied using
order theory Order theory is a branch of mathematics that investigates the intuitive notion of order using binary relations. It provides a formal framework for describing statements such as "this is less than that" or "this precedes that". This article intr ...
. Two basic operators are defined for schema: expansion and compression. The expansion maps a schema onto a set of words which it represents, while the compression maps a set of words on to a schema. In the following definitions \Sigma denotes an alphabet, \Sigma^l denotes all words of length l over the alphabet \Sigma , \Sigma_* denotes the alphabet \Sigma with the extra symbol *. \Sigma_*^l denotes all schema of length l over the alphabet \Sigma_* as well as the empty schema \epsilon_* . For any schema s \in \Sigma^l_* the following operator s, called the expansion of s, which maps s to a subset of words in \Sigma^l : s := \ Where subscript i denotes the character at position i in a word or schema. When s= \epsilon_* then s = \emptyset. More simply put, s is the set of all words in \Sigma^l that can be made by exchanging the * symbols in s with symbols from \Sigma. For example, if \Sigma=\, l=3 and s=10* then s=\ . Conversely, for any A \subseteq \Sigma^l we define , called the compression of A, which maps A on to a schema s\in \Sigma_*^l: A:= s where s is a schema of length l such that the symbol at position i in s is determined in the following way: if x_i = y_i for all x,y \in A then s_i = x_i otherwise s_i = *. If A = \emptyset then A = \epsilon_*. One can think of this operator as stacking up all the items in A and if all elements in a column are equivalent, the symbol at that position in s takes this value, otherwise there is a wild card symbol. For example, let A = \ then A = **0. Schemata can be partially ordered. For any a,b \in \Sigma^l_* we say a \leq b if and only if a \subseteq b. It follows that \leq is a partial ordering on a set of schemata from the reflexivity, antisymmetry and transitivity of the
subset In mathematics, a Set (mathematics), set ''A'' is a subset of a set ''B'' if all Element (mathematics), elements of ''A'' are also elements of ''B''; ''B'' is then a superset of ''A''. It is possible for ''A'' and ''B'' to be equal; if they a ...
relation. For example, \epsilon_* \leq 11 \leq 1* \leq **. This is because \epsilon_* \subseteq 11 \subseteq 1* \subseteq ** = \emptyset \subseteq \ \subseteq \ \subseteq \. The compression and expansion operators form a
Galois connection In mathematics, especially in order theory, a Galois connection is a particular correspondence (typically) between two partially ordered sets (posets). Galois connections find applications in various mathematical theories. They generalize the fun ...
, where \downarrow is the lower adjoint and \uparrow the upper adjoint.


The Schematic Completion and The Schematic Lattice

For a set A \subseteq \Sigma^l, we call the process of calculating the compression on each subset of A, that is \, the schematic completion of A, denoted \mathcal(A). For example, let A = \. The schematic completion of A, results in the following set: \mathcal(A) = \ The
poset In mathematics, especially order theory, a partial order on a Set (mathematics), set is an arrangement such that, for certain pairs of elements, one precedes the other. The word ''partial'' is used to indicate that not every pair of elements need ...
(\mathcal(A),\leq) always forms a complete lattice called the schematic lattice. The schematic lattice is similar to the concept lattice found in Formal concept analysis.


See also

* Holland's schema theorem * Formal concept analysis


References

{{Evolutionary computation Genetic algorithms