Go to file
2023-01-01 18:45:51 -05:00
2_point_plot.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
Dockerfile Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities2.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities3.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities4.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities5.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities6.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities7.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities8.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities9.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model_probabilities.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
model.txt Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations2.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations3.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations4.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations5.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations6.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations7.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations8.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations9.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations10.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations11.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations12.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations13.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations14.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations15.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations16.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations17.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations18.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations19.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations20.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations21.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations22.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations23.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations24.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations25.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations26.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations_cuda.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations_gpu.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations_opencl.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations.cl Add probabilities work to git 2023-01-01 18:45:51 -05:00
mutations.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
README.md Add probabilities work to git 2023-01-01 18:45:51 -05:00
shifts.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
space_analysis2.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
space_analysis3.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
space_analysis4.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
space_analysis.py Add probabilities work to git 2023-01-01 18:45:51 -05:00
train_generator.py Add probabilities work to git 2023-01-01 18:45:51 -05:00

Terminology:

Sample space 'S' has 'n' bits, and there is a function 'f', that maps 'x' (an n-bit vector) in 'S' to 'y'.

f(x) = y

We can use PCA to generate candidates for some sub-sample of 'S', 'P'. Candidates that exhibit generalization properties (score higher than the previous generation on a sub-sample they haven't seen before, 'Q') can be cascaded into the input for training the next generation of candidates.

This candidate generation process is 'G'. 'G' is considered to perform well if the candidates that it generates exhibit generalization properties.

To bootstrap, we can use PCA for 'G' and store the state machine instructions 'S_G' for creating the highest-performing candidates on a particular problem 'f' as a sample space for training a new generator 'G_n'.

Use 'G' to generate candidates for 'G_n'. Training samples come from 'S_G', but candidates should be evaluated based on how well the candidates they generate perform on 'f'.

So, we need to be able to score a particular g e G_n. We can evaluate for a fixed number of epochs and use some combination of the average difficulty and evaluation score.

A generator G is a state machine with input

G(|j-bit step|m * n-bit inputs|) = y

Where y is a bit in an instruction.

'a' is an address in 'A' |log2(n)|

|opcode 2-bit| |00 - xor| |01 - end| |10 - and| |11 - nand|

xor is followed by an address 'a' for an input bit.

This process can be repeated indefinitely, replacing 'G' with 'G_n' to create new generators that outperform the previous generation for solving 'f'.

A candidate is a state machine with input f(|n-bit input|) = y