I’m working on a new imperative programming language called Akasha. It’s a language where genetic programming can be done in a few lines. The language will allow for the user to use a default function set or they can specify what function set to include in their program generation. The programs generated will be Turing complete unless otherwise specified by the user by limiting the function set. Users will be allow to specify the amount of time a program generated will be allowed to run to prevent infinite loops. Also, the language will allow for a memory limit. It will also allow for program generation by other methods such as hill-climbing or simulated annealing.
The user will be allowed to specify parts of the program he wants generated. So for example, they might know the code they want is in a for loop, but don’t know the content of the for loop. They can write something like: for(int i = 0; i < 10000; i++){
}
For the longest while I have been trying to figure what AIXI is about. Tell me if I got it correct:
We are in an unknown world that has a utility function to maximise. For instance, we are in a pacman game and we are trying to gain the maximum score possible.
Based on the previous observation and rewards, AIXI forms different model for predicting which action will maximise future rewards. It chooses the model with the greats rewards with a small program size.