tmrl
taichi
Our great sponsors
tmrl | taichi | |
---|---|---|
11 | 36 | |
422 | 24,760 | |
10.0% | 1.3% | |
6.3 | 9.1 | |
4 days ago | 4 days ago | |
Python | C++ | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tmrl
-
Problem with Truncated Quantile Critics (TQC) and n-step learning algorithm.
Hi all! I'm implementing a TQC with n-step learning in Trackmania (I forked original repo from here: https://github.com/trackmania-rl/tmrl, my modified version here: https://github.com/Pheoxis/AITrackmania/tree/main). It compiles, but I am pretty sure that I implemented n-step learning incorrectly, but as a beginner I don't know what I did wrong. Here's my code before implementing n-step algorithm: https://github.com/Pheoxis/AITrackmania/blob/main/tmrl/custom/custom_algorithms.py. If anyone checked what I did wrong, I would be very grateful. I will also attach some plots from my last training and outputs from printed lines (print.txt), maybe it will help :) If you need any additional information feel free to ask.
- Training an unbeatable AI in Trackmania [video]
- Can you beat trackmania AI?
-
Python RL Environments on Windows
I don't know if it fits your need : https://github.com/trackmania-rl/tmrl
-
New to reinforcement learning.
Hi, if you are gonna train a deep RL algorithm on a real robot and you are a beginner, I suggest you try out tmrl. This will allow you to try out a readily available algorithm (Soft Actor-Critic) in real-time on a real video-game (TrackMania), as real-world-like proxy for all the concerns you will encounter on real robot, and to rather easily develop your own robot-learning pipeline from there for your own robot. The repo has a huge tutorial exactly for this purpose.
-
AI Learns Mario Kart Wii (Rainbow DQN)
I see, and how did you handle the simulator and dynamics? Did you "step" the game or did you capture screenshots with constant time interval in real-time? I am asking because tmrl uses the second option in TrackMania, which makes the approach generalizable to all video games including MarioKart, but so far we met no such success training CNNs with the Soft Actor-Critic familly. The setting is a bit more difficult because it uses continuous input inckuding the gas and break (I suppose you always send gas to the maximum?) and we don't use punishments for collisions and this kind of tricks, but still, if it works that well in your setting I think it should work similarly in ours.
-
Have you used any good DRL library?
I am very disappointed these guys don't cite tmrl :D
-
osu!
If you just want to make a Gym environment, focus on rtgym. You will want to have a way of retrieving observations, say, raw images for instance. You can do this with pywin32 as done here. You will also want to grab a reward signal, which will probably be the most challenging thing to do because you will have to compute that from screenshots since you don't have access to the game internals (in fact you could because the game is opensource, but I assume you don't want to go down this path). If there is something like a score counter that's not moving somewhere, I suggest you capture that and read the numbers individually with the 1-NN algorithm (which is done in the un-supported "trackmania nation forever" versions of the tmrl encironment btw if you need help doing that). Then you will need to input controls. I see that osu is controller by the mouse and keyboard, there are several solutions for that. You can use pywin32 I think, pyautogui, keyboard, and probably others. Once you have these basic building blocks, it will be fairly straightforward to use the rtgym API in order to build you real time Gym environment.
-
Is replay buffer can remove "done"?
Sometimes it is more than okay, it may be necessary. For instance in tmrl we do exactly that, because we are in a partially observable environment where we cannot say whether the next state will be terminal or not, and where what we try to actually optimize is an infinite sum of discounted rewards.
-
[P] DeepForSpeed: A self driving car in Need For Speed Most Wanted with just a single ConvNet to play ( inspired by nvidia )
Cool project. Shameless self-advertising here but you can use vgamepad to control the game with a virtual gamepad instead of key presses, which enables analog policies. We do this in TrackMania :)
taichi
-
This Week In Python
taichi β Productive, portable, and performant GPU programming in Python
- Taichi: Accessible GPU programming, embedded in Python
-
The GIL can now be disabled in Python's main branch
ETH Zurich is using it for their physics sim courses, University of Utah is using it for simulations (SIGGRAPH 2022), OPPO (they make smart devices running Android), Kuaishou uses it for liquid and gas simulation on GPUs. Lots of GPU accelerated sim stuff.
https://www.taichi-lang.org/
https://www.researchgate.net/publication/337118128_Taichi_a_...
https://github.com/taichi-dev/taichi
- Julia and Mojo (Modular) Mandelbrot Benchmark
-
Taichi v1.5.0 Released! See what's newπ
Check our the realease note (https://github.com/taichi-dev/taichi/releases) for more improvements.
-
You Don't Know Jax
I've recently started using Taichi (https://taichi-lang.org/) for numerical codes and the fact it doesn't try to trick you into thinking it's numpy is a nice "feature". ;)
- How can I get into this type of animation with programming?
-
Taichi v1.4.0 released!
Taichi v1.4.0 is released! See what's new: - Taichi AOT, along with a native Taichi Runtime library: Native applications can now load compiled AOT modules and launch Taichi kernels without a Python interpreter. - Taichi ndarray: An array object that holds contiguous multi-dimensional data to allow easy data exchange with external libraries. - Dynamic index: Use variable indices whenever necessary on all backends without affecting the performance of those matrices with only constant indices. See deprecation and more improvements in the release note.
-
Is Nvidia CUDA Used in VFX Software Tools?
Oh, then if you're not already tied to any particular VFX software, I might as well recommend Taichi again.
-
Marching squares algorithm implemented with Taichi: Struct Taichi fields and dynamic SNodes are used to represent line segments, and linear interpolation applied to smoothen the boundaries.
It's an upgrade of a basic version. See changes to the source code here: https://github.com/taichi-dev/taichi/pull/6851
What are some alternatives?
drqv2 - DrQ-v2: Improved Data-Augmented Reinforcement Learning
Halide - a language for fast, portable data-parallel computation
tm-dashboard - Dashboard for Trackmania displaying a bunch of vehicle information on screen.
dolfinx - Next generation FEniCS problem solving environment
wandb - π₯ A tool for visualizing and tracking your machine learning experiments. This repo contains the CLI and Python API.
Data-Science-For-Beginners - 10 Weeks, 20 Lessons, Data Science for All!
softlearning - Softlearning is a reinforcement learning framework for training maximum entropy policies in continuous domains. Includes the official implementation of the Soft Actor-Critic algorithm.
difftaichi - 10 differentiable physical simulators built with Taichi differentiable programming (DiffTaichi, ICLR 2020)
acme - A library of reinforcement learning components and agents
copilot.vim - Neovim plugin for GitHub Copilot
vgamepad - Virtual XBox360 and DualShock4 gamepads in python
open-im-server - IM Chat