GithubHelp home page GithubHelp logo

akro's People

Contributors

ahtsan avatar edlanglois avatar gitanshu avatar krzentner avatar maliesa96 avatar naeioi avatar ryanjulian avatar sud0nick avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 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

akro's Issues

Concatenate operation for Spaces

This is a common use case which leads to a lot of unnecessary munging.

e.g.

    def observation_space(self):
        task_ub, task_lb = self.task_space.bounds
        env_ub, env_lb = super(OneHotMultiTaskEnv,
                               self).observation_space.bounds
        return spaces.Box(
            np.concatenate([task_ub, env_ub]),
            np.concatenate([task_lb, env_lb]))

Could just be

    def observation_space(self):
        task = self.task_space
        obs = super(OneHotMultiTaskEnv,
                               self).observation_space
        return spaces.Box.concatenate(task, obs)

This will require some thought about how non-alike spaces interact, and should provide a feature for concatenating members of these spaces easily and consistent with this spec, once a space is described as a concatenation of other spaces.

Imported from ryanjulian/rllab#2

gym.Spaces conformance

This library would be more effective if it were phrased as an extension for gym.Spaces, i.e. akro types can be used as drop-in replacement types for gym.Spaces types, but with extra features.

This can probably be achieved by inheriting from spaces types and running the gym test suite on akro types in the CI

akro.Discrete does not work.

I want to use discrete action space via akro.Discrete, but what I get in my step function is not discrete numbers, but a list of float numbers. But akro.Box does work well. So can someone tell me what is the problem?

Add spaces-tagged data types

This would add tagged data types (and no-copy constructors) for the concrete types represented by a spaces.

This would allow users to perform important akro operations without needing an explicit reference to the space (and saves a lot of type checking). It would also get rid of a lot of helper/misc functions.

This idea is best illustrated by an example:

import akro

dspace = akro.Dict({'foo': akro.Discrete(3)})

d = {'foo': 1}  # a regular old dict
d_tagged = akro.tag(d, dspace)  # returns an akro.dict (inherits from dict) which stores dspace
d_flat = d_tagged.flatten()  # now I can flatten without any args
d_flat.to_tf_placeholder()  # sure, why not?
e = dspace.sample()  # returns an akro.dict by default)

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.