Today we have released a new version of TuringBot with two much-awaited features: custom searches and history functions.

### Custom searches

The simplest case of symbolic regression is that of finding formulas that predict a variable taking as input one or more other variables. That is, finding **y = f(x)**.

This is a simple mathematical equation. Why not allow something more complicated, for instance, find f(x) such that **y/x = sin(x)*(f(x)+7)**?

This is a case of implicit symbolic regression problem. In it, the task goes from being

- Compute f(x)
- Compare to y and evaluate the error

To being

- Compute f(x)
- Evaluate the left and right sides of the user-defined equation
- Compare the two results and evaluate the error

TuringBot now allows this kind of search:

By toggling the “Advanced” button, you can type your own equation using your input variables, numerical constants, and any base function offered by the program. You can read more about this feature on the documentation.

### History functions

Time series modeling is one of the most important machine learning problems, if not *the* most important.

In this kind of problem, one is often interested in using previous values of some quantity to predict the next values.

TuringBot now allows that to be done with its new history functions, which we call lag functions:

These functions are delay(i,N) and moving_average(i,N). Here i represents one of the input variables, and N an integer number. These two functions allow formulas involving previous values of your data series to be discovered.

### Download version 1.9

TuringBot 1.9 can be downloaded from our download page.