next up previous
Next: Genetic Operations Up: GA Representation Previous: An Overview of GA

GA Representation of DFA

  In the subject problem the entity that is searched for is the DFA that will accept a known set of strings. So naturally, it is the DFA that is encoded into a chromosome. The population of chromosomes will serve as a pool of candidate DFA solutions. In GA it is most preferable to have a fixed length of chromosomes which corresponds to imposing an upperbound to the number of states in the DFA. With an appropriate choice of a penalty in the objective function the system will be forced to favor least number of states (see 3.3.1).

A DFA can be represented by a matrix where the states tex2html_wrap_inline766 enumerate the rows and the possible tokens tex2html_wrap_inline768 enumerate the columns.

displaymath770

tex2html_wrap_inline772 is the start state. The following definition of tex2html_wrap_inline774 completes the representation of DFA without any loss of generality.

displaymath762

The GA representation is the mapping of the elements of this matrix onto a chromosome that constitutes of tex2html_wrap_inline776 genes tex2html_wrap_inline778 by the equation:

displaymath763

In the implementation the chromosome has been chosen to be a vector of single-byte integers. Furthermore,

So, in particular the example of the small DFA of section 1 would have a GA data representation of

tabular96



Meltem TURHAN
Tue Oct 29 22:25:58 EET 1996