Evolution from Existing Models

Optimizing an External Model
 
Optimizing a model not created by APS, requires pretty much the same expertise necessary to make big modifications in models evolved by APS as, in both cases, you will need to know how to create K-expressions from parse trees.

So, assuming that the model you want to use as seed is not in Karva notation, you will need to translate your model into Karva notation as the Change Seed window can only accept models in Karva code.

The easiest way of translating your model into Karva code, consists of representing your model in a tree structure and then create a linear representation of the parse tree by writing down all the nodes in the tree from top to bottom and from left to right. You will end up with a K-expression that you can, with only a small modification, use as seed.

For instance, the expression tree below:

can be represented linearly by the following K-expression:

/.d1./.-.Exp.Exp.Ln.d2.d2.d2

Now you only need to incorporate this K-expression into a correct gene structure, with a head and a tail correctly defined. A simple way of doing this, consists of considering the entire K-expression the head of your gene and then add a tail (with the correct length, of course) containing only terminals (which terminals you add is irrelevant as these terminals will not interfere with the expression of your K-expression). For instance, the K-expression above could be correctly accommodated into the following gene:

/.d1./.-.Exp.Exp.Ln.d2.d2.d2.d0.d0.d0.d0.d0.d0.d0.d0.d0.d0.d0

Then you just have to create a new run in APS and evolve quickly (for one generation is enough) a proto-model with exactly the same structure you’ll need for integrating your seed model (that is, number of genes, head size, linking function, function set, etc.), and then change this proto-model in the Change Seed window with your seed.

These are only some examples of the things you can accomplish with the Change Seed method of APS 3.0. If you want to make other kinds of modification, say, use different K-expressions to represent different terms, then you must be familiar with the architectures of APS 3.0 learning algorithms so that you can map correctly all your modifications into Karva notation.

Home | Contents | Previous | Next