vojtamolda / autodrome Goto Github PK
View Code? Open in Web Editor NEWFramework and OpenAI Gym environment for autonomous vehicle development.
Home Page: http://tiny.cc/autodrome
License: MIT License
Framework and OpenAI Gym environment for autonomous vehicle development.
Home Page: http://tiny.cc/autodrome
License: MIT License
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/
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
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.
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:
SteeringWheel
and Keyboard
classes in controller.py
.Window
class from window.py
.libtelemetry.so
telemetry plugin library.Getting to a working Docker image can be outlined this way:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.