Git Product home page Git Product logo

evolutionary-reinforcement-learning's People

Contributors

shawk91 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

evolutionary-reinforcement-learning's Issues

Are there big differences between the performance of evolutionary algorithm and DDQN?

Thanks for the very sophisticated code.
I applied the command(python main.py --env MountainCar-v0) to run the code. The following figure shows part of the result. Apparently, the performance of evolutionary algorithm is much better than gradient descent method(DDQN).
image
ERL, as the paper said, retains the experiences from the entire evolutionary population in the replay buffer and uses them to update DDQN parameters by gradient descent. Are there big differences between the performance of evolutionary algorithm and DDQN, or am I misunderstanding the code?

should we store transaction when eval the net from pop ?

 def train(self):
        self.gen_frames = 0

        ####################### EVOLUTION #####################
        all_fitness = []
        #Evaluate genomes/individuals
        for net in self.pop:
            fitness = 0.0
            for eval in range(self.args.num_evals): fitness += self.evaluate(net, is_render=False, is_action_noise=False)
            all_fitness.append(fitness/self.args.num_evals)

should we store transaction when eval the net from pop ?
if we do store,the

if store_transition: self.num_games += 1

in the func def evaluate(self, net, is_action_noise=False, store_transition=True):

is the num_games counter right?

thanks

Can not step

If I use your env
env = utils.NormalizedActions(gym.make(env_tag))
I can not step an action, it says not implement error,

Why put a lot of network computing on the CPU instead of the GPU?

In the old code, network computing (including forward propagation and backward propagation) is on the GPU. But in the new version of the parallelized code, except for the PG part, all network calculations (population, rollout) are on the CPU. Why is that?
Is it a compromise of parallelization, or am I misunderstanding the code?

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.