The APS Environment

Mathematical Functions
 
By selecting the Functions (Math) Tab, you have full access to the 70 built-in mathematical functions of APS 3.0, including 24 IF THEN ELSE rules. Here is also the place where you can add Dynamic UDFs (DDFs) to your modeling kit.

To select a function, just check the box on the left. By default, the weight of each function is 1, but you can increase the probability of a function being included in your models by increasing its weight in the Select/Weight column. The weight property is very important for a successful modeling, as the overall number of functions used in a run must be well balanced with the number of terminals or variables in your data. For instance, if you are modeling data with hundreds of variables and using only the four arithmetical operators, you must weight proportionately the representation of each function in the function set, otherwise the creation of complex models will be seriously compromised. A good rule of thumb, is to have at least as many functions in the function set as there are variables.

By checking the Show Selected Functions Only box, only the selected functions are shown.

As you can see, before each function, it is given its common name, how it is represented in APS 3.0, its arity, and its mathematical definition.

To add a Dynamic UDF (DDF) to your modeling kit, just click the Add button on the Dynamic UDFs frame and the DDF editor appears.

By choosing the arity (minimum is 1 and maximum is 4) in the Arity box, the function header appears below. Then you just have to write the body of the function in the code editor. The code must be in JavaScript and can be rapidly tested for compiling errors.

In the Definition box, you can write a brief description of the function for your future reference. The text you write here will appear in the Definition column.

Dynamic UDFs are extremely powerful and interesting tools as they are treated exactly like the built-in functions of APS and therefore can be used to model all kinds of relationships between variables or complex expressions. For instance, you can design a DDF so that it will model the sum of four expressions, that is, DDF = (expression 1) + (expression 2) + (expression 3) + (expression 4), where the value of each expression will depend on the context of the DDF in the expression tree. A note of caution, though, although extremely interesting, DDFs decrease considerably the speed of the algorithm and therefore we advise you to choose your functions from the wide set of APS 3.0 built-in functions.

Home | Contents | Previous | Next