Code Monkey home page Code Monkey logo

radiate's People

Contributors

alianse777 avatar neopallium avatar nereuxofficial avatar pkalivas avatar rkarp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

radiate's Issues

NEAT : function solve

Hi,

I would perform a simple regression using NEAT. So, NEAT do maximization (i.e preserves genomes with high fitness) or the opposite ?

Kind regards.

Linear Algebra

Was it an active decision to not use linear algebra for neural network forward-propagation and the like? I would assume it would speed up the computations significantly.
Crates like nalgebra would present themselves as good candidates for such an implementation.

If it was a decision, what was the motivation?
Could it be that you can't really use linear algebra for NEAT (I'm not really familiar with how NEAT works)?

Make population training more flexible and idea for a more powerful GA server.

Right now the Population has full control over training/testing each member in a generation. I would like to have more control over how each member of a generation is tested against the problem.

The reason is to be able to make a server that just manages the genomes/populations with many worker computers doing the testing of each generation's members against the problem. The workers would request a member/problem pair from the server, evaluate that member against the problem and return the fitness score back to the server. The server could keep a track of Genomes & Problems in a database. Similar problems (same basic code but different inputs) could be trained faster by re-using genes from high scoring Genomes.

The current logic is like this:

  1. Create Population for a set of Genome, Environment and Problem.
  2. Set evolution parameters.
  3. Run evolution over population with callback for when each generation is finished.

I would like to split the Population::run() and Population::train() methods so an application can do the following:

  1. Create/setup population like steps 1 & 2 above.
  2. Instead of calling run() get the current list of members from the population.
  3. Process those members against the Problem (this might include offloading the work to workers over the network).
  4. Once all members have been evaluated and a fitness score has been collected, call into the Population with the fitness scores to end the current generation. This would be like the Population::train() method, just skipping the call to Generation::optimize() and setting each members fitness.
  5. Get the end of generation results and decide if another generation needs to be tested (loop to step 2).

NEAT Autoencoder / embedding?

Hello,

I'd like to evolve a network with a topological constraint for it's hidden layers.

In a dense network this would be some middle layer that forces the reduction of the dimensionality of the information.

In NEAT I'm not sure what this would mean, as the network topology has so much more freedom.

Is this possible in general? If so, can this be accomplished using radiate? I'm not very familiar with the library, just only getting started.

Thank you!

How to evolve based on head to head battles?

If I want to evolve organisms that compete in head to head 2 player contests (like tic tac toe), is there any guidence on how to set this up. An example would be great. I note that the sovle funtion for the Problem trait has a parameter for only a single model. Is there a convenient way to set up 2 player games?

What does Lstm mean for this crate?

I know Lstm is a variant of RNN in the context of neural network of machine learning. And in the original NEAT paper, the author did mention a kind of RNN, with which the game double pole is solved----the RNN here is not what we refer to in the context of machine learning, right?

But what does lstm mean in the context of NEAT for this crate? Does it mean that NEAT could generate lstm structure (like in this paper), and with which could solve non-Markov decision problem?

Documentation for Config fields

I'm playing around with radiate, and I'm a bit confused as to what the population config means. E.g. how does distance impact my performance? Where is it used? What does species_target mean during an optimization?

Thanks for the library, it was really easy to get started and get some results!

Meaning of `.reset()`?

What does .reset() method do on Neat struct?

I'd like to ensure my understanding is correct, as the documentation is a little unclear.

My real goal is to remove any previous state that may be retained in the network from previous evaluations / forward passes.
This ensures there is no chance of information leakage between successive trials (fitness measurements).

Will the .reset() method do this?

Thank you!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.