Code Monkey home page Code Monkey logo

autodrome's People

Contributors

0xflotus avatar vojtamolda 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  avatar  avatar

autodrome's Issues

Install error in requirements-darwin.txt (OS is Ubuntu 16.04)

Thank you and hope you can answer a question.
I'm looking for a open gym env for linux
Can I make this repo work under linux.
I get the following error.


(pyt1.0) auro@auro-ml:~/rl/autodrome$ pip install -r requirements-darwin.txt
Requirement already satisfied: pyobjc in /home/auro/anaconda3/envs/pyt1.0/lib/python3.6/site-packages/pyobjc-5.1.2-py3.6.egg (from -r requirements-darwin.txt (line 1)) (5.1.2)
Collecting pyobjc-framework-Cocoa (from -r requirements-darwin.txt (line 2))
  Using cached https://files.pythonhosted.org/packages/fe/e9/ba571f1415cfa7281ee1d6a44573ae5f1d0c5216a869bfaae7f30172d3e3/pyobjc-framework-Cocoa-5.1.2.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-4hnja3o5/pyobjc-framework-Cocoa/setup.py", line 24, in <module>
        extra_link_args=['-framework', 'CoreFoundation']),
      File "/tmp/pip-install-4hnja3o5/pyobjc-framework-Cocoa/pyobjc_setup.py", line 389, in Extension
        os_level = get_os_level()
      File "/tmp/pip-install-4hnja3o5/pyobjc-framework-Cocoa/pyobjc_setup.py", line 203, in get_os_level
        pl = plistlib.readPlist('/System/Library/CoreServices/SystemVersion.plist')
      File "/home/auro/anaconda3/envs/pyt1.0/lib/python3.6/plistlib.py", line 162, in readPlist
        with _maybe_open(pathOrFile, 'rb') as fp:
      File "/home/auro/anaconda3/envs/pyt1.0/lib/python3.6/contextlib.py", line 81, in __enter__
        return next(self.gen)
      File "/home/auro/anaconda3/envs/pyt1.0/lib/python3.6/plistlib.py", line 120, in _maybe_open
        with open(pathOrFile, mode) as fp:
    FileNotFoundError: [Errno 2] No such file or directory: '/System/Library/CoreServices/SystemVersion.plist'
    
    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-4hnja3o5/pyobjc-framework-Cocoa/

error :import autodrome.envs

import autodrome.envs
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/wm/anaconda3/pkgs/autodrome-master/autodrome/__init__.py", line 1, in <module>
    from .simulator import ETS2, ATS
  File "/Users/wm/anaconda3/pkgs/autodrome-master/autodrome/simulator/__init__.py", line 1, in <module>
    from .simulator import Simulator
  File "/Users/wm/anaconda3/pkgs/autodrome-master/autodrome/simulator/simulator.py", line 61
    print(f"Setting up mod with map in '{mod_dir}'...")
                                                     ^
SyntaxError: invalid syntax

OpenAI Gym Environment Slows Down After ~10 Episodes

It seems that the September 2018 1.32.x update of ATS/ETS2 broke the long-term stability of the OpenAI Gym environment runs.

Over the period of about 10 episodes the game slows down to the point where one of the ugly time.sleep(...) calls in the code of the Simulator class breaks down. Waits are normally meant to let the game redraw it's UI before pressing ~ on the virtual keyboard and issuing console commands.

The frequently repeated cycle of opening and closing the map is very unique use case and most likely isn't covered by any SCS in-house unit test. The usual gaming workload is only a single map load of the usa or europe followed by a long stretch of driving. This also means that the bug is very unlikely to get fixed by a subsequent patch.

Here are the update 1.32.3 release notes links for ATS and ETS2. None provides a clue why the slow down might be happening.

Support for Linux (and Docker)

Current version of Autodrome runs only on macOS. Since ETS2/ATS can run on all three major platforms (Mac, Linux and Windows) there's no inherent reason or a major roadblock why this can't be done and in fact some OS abstractions are already in place to make the process easier.

Porting to Linux would also allow us to ship the project as a Docker container. Docker would significantly lower the time to get started with the project since the existing installation process is very cumbersome and requires a lot of manual steps - get Steam, download ETS2/ATS, install Python with it's dependencies and so on.

Steps to run the Linux port can be roughly outlined like this:

  • Implement I/O abstraction in SteeringWheel and Keyboard classes in controller.py.
  • Implement screen capture and management abstractions Window class from window.py.
  • Build the libtelemetry.so telemetry plugin library.
  • See what other else comes up and fix it ๐Ÿ˜‰.

Getting to a working Docker image can be outlined this way:

  • Create a Dockerfile (This link and this link may or may not help ๐Ÿ˜‰).
  • Put the image on Docker Hub.

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.