-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Airsim Clock Speed #4841
Comments
Hello, I also encountered a similar problem to you. My task is to use DRL to train the drone to avoid obstacles, with ClockSpeed set to 5. When I complete the training, if I test with ClockSpeed set to 5, the drone can avoid collisions. But when I tested it with ClockSpeed set to 1, the drone crashed and seemed to forget the learned strategy. Have you solved the above related problems? Can you give me some advice? Thanks! |
Hi @Charles-Lim93 @wagh311 . I'm interested in this issue. Could you guys provide more info regarding the simulation scenario and how you measured the numbers you're providing here? For a starter, the Last but not least: there's a chance that this problem is arising from your training scenario. E.g. the way you're feeding your algorithm the timestamps can be hardcoded to support just 5x clockspeed. |
Hi there, I found out that if you change the clock speed in settings.json, it makes faster the simulation, which is make your agent feel slower. This means For example, let's say so, in AirSim, your physics gets affected by clock speed. So, for @wagh311 to compensate for this, you need your RL agent or control action space should synchronize with your clock speed in If you do not compensate your action space with clock speed, the RL agent cannot adapt to clock speed 5 to clock speed 1, because they are physically different scenarios. I hope this will help your simulation. |
Hello everyone, thank you for your replies. My current task is to use 3 drones to track 1 drone in the Block environment and achieve collision avoidance. The version of Airsim is 1.8.1. I just tried it and found that clockspeed will affect the real movement of the drone. Specifically, I set the target drone to fly along the Y-axis at a speed of 0.5m/s when clockspeed=5. However, when I used "getMultirotorState().kinematics_estimated.linear_velocity.y_val" to get the target's velocity, I found that it was only about 0.1m/s, which is 1/5 of the set value. In my task, the action space of the drone performing the tracking task is set to “spaces.Box(low=np.array([-3.0, -3.0]), high=np.array([3.0, 3.0]),dtype=float)”, and the speed of the target drone to be tracked is 0.5m/s. So, for @Charles-Lim93 , |
Question
What's your question?
Hello. I'm using Airsim for Reinforcement Learning, and it is great that working so well. I'm wondering about ClockSpeed in the settings.json file. To speed up simulation I set 'ClockSpeed' as 5, which means 5 times faster.
It worked fine but I found out that the value from 5X ClockSpeed si (drone velocity, for example) is almost 1/5 compared to normal speed. I'm wondering whether that velocity value is depended to clockspeed. If it is true then the training network will get wrong information compare to what I expected.
Include context on what you are trying to achieve
Is it correct that airsim's value differs to clockspeed, and if it do so, then how we can (or make independent from Clock Speed)?
Thank you in advance.
The text was updated successfully, but these errors were encountered: