next up previous
Next: Intelligent Recombination Up: The Language Previous: Looking Inside a PADO

Looking Inside a PADO Node


The non-zero arity actions (non-terminals) for both main population and SMART operator programs are: ADD, SUB, MULT, DIV, READ, WRITE, ADF, IF-THEN-ELSE, PIFTE, MAX, MIN, LESS-THAN, EQUAL, NOT.

MAX and MIN double as OR and AND. All non-zero numbers are treated as TRUE and 0 as FALSE. PIFTE is a probabilistic IF-THEN-ELSE that takes 3 arguments. A random number is chosen and if it is less than arg1 then arg2 is returned, else arg3 is returned. ``Returned'' in the PADO context is equivalent to ``pushed onto the argument stack.'' ``Takes X arguments'' in the PADO context means ``pops X elements off the argument stack to use as input.'' In this chapter, the main population programs were given access to Library programs through a LIBRARY[i] action. In addition, there are six signal-access actions that the PADO programs discussed in this chapter were given. These functions are {POINT, AVERAGE, MOST, LEAST, VARIANCE, DIFFERENCE}. More detail on them can be seen in [Teller and Veloso 1995a, 1995b].

Table 3.1: Branch-decision function templates

The branch-decision function at a specific node is one of a preset set of function templates (table 3.1). tex2html_wrap_inline891 and tex2html_wrap_inline893 (table 3.1) can be any two of these three things: the action type of the temporally previous node (e.g. ``WRITE''), the result of the action of the current node, and the node's branch-decision constant. The branch-decision function compares these two values through one of the twelve choices in table 3.1, and (for this chapter) follows tex2html_wrap_inline895 on FALSE and tex2html_wrap_inline897 on TRUE.

Eric Teller
Tue Oct 29 17:04:55 EST 1996