jd-eth / airsimneurips Goto Github PK
View Code? Open in Web Editor NEWMy solution to Airsim Competition at NeuRIPS
License: BSD 2-Clause "Simplified" License
My solution to Airsim Competition at NeuRIPS
License: BSD 2-Clause "Simplified" License
Hi!
In control.py you invert the sign of pitch and yaw. Is it for converting bodyrates from ENU to NED convention?
If so, why don't you do the conversion from NED to ENU when you pass the input data (i.e., odometry and trajectory) to the MPC?
Thanks in advance!
Hi
I am really impressed by your work.
I would like to try your algorithm out in tier2 and tier3 as well (combining with perception, of course).
My idea is to detect gate in the FPV then infers its position and relative orientation and use this as one of the point to go.
However, to do so, I would need the drone to control yaw angle as well.
Could you please let me know of where to start to look at?
Best Regards,
Surfii3z
Hello:
Thanks for your work and contribution! I am new to this framework. May I kindly ask you some questions about how to install this project.
Is this project mainly for the Final round binaries and environments (v1.1), do I also need to download the environments for Qualifier binaries and environments (v1.0) and Training binaries and environments (v0.3).
Do I need to install the unreal engine and running the AirsimNeurIPS Linux binaries inside the unreal engine or I just run the command: ./AirSimExe.sh -windowed -opengl4
in one terminal under path/to/AirSim/AirSim_Final_Round
and open another terminal to run python daniel.py --level_name 'Final_Tier_1'
.
For clone the repo from ACADO and rpg-mpc, do I just simply clone this two repo inside thepath/to/AirSimNeurIPS
or I should follow the installation guidelines of ACADO and rpg-mpc such that I also need to install the ROS in order to install rpg-mpc.
Thank you very much!
Best regards,
Xin
Hello
I am new to this kind of things, but I have configure it for almost a week. There is still some problem.
when I load the airsim environment, it is working fine, but when I start running the "python3 daniel.py --level_name 'Final_Tier_1' ", The API auto shutdown and loading some error. I tried to debug, I think the problem is with the load_level function, it seems reset everything, because when I comment this line, it is not auto shutdown, but the problem is with the ground truth gate. The problem of the API auto shutdown is shown image below. Is it the problem with the environment that I install or [..?]
Runtime output
/home/hbzhang/anaconda3/envs/py37/lib/python3.7/site-packages/quaternion/numba_wrapper.py:20: UserWarning:
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Could not import from numba, which means that some
parts of this code may run MUCH more slowly. You
may wish to install numba.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
warnings.warn(warning_text)
Connected!
Connected!
Connected!
Controller planning for first goal.
('Planning finished for: ', 0)
Race Started.
Started odometry callback thread
Advancing, Constraint at 1 speed None checks: (0.405, 8.0) goal at [-5.31999779e+01 -1.65400009e+02 1.57890835e+01 1.00000000e+00
-3.87750980e-06 0.00000000e+00]
Controller needs replan due to finished goal.
Started Control thread
Exception in thread Thread-2:
Traceback (most recent call last):
File "/home/hbzhang/anaconda3/envs/py37/lib/python3.7/threading.py", line 926, in _bootstrap_inner
self.run()
File "/home/hbzhang/anaconda3/envs/py37/lib/python3.7/threading.py", line 870, in run
self._target(*self._args, **self._kwargs)
File "daniel.py", line 349, in apply_control
input = self.mpc_control.getInput(drone_state)
File "/home/hbzhang/opt/race/AirSimNeurIPS/Daniel/control.py", line 136, in getInput
X, U = self.getFullMpcOutput(state)
File "/home/hbzhang/opt/race/AirSimNeurIPS/Daniel/control.py", line 158, in getFullMpcOutput
np.transpose(np.tile(self.Q,self.horizon)), self.Qf, 0)
ValueError: Expecting double matrix 1x4 for x0
Planning finished
Deviating from path: cur min: 3.270086270123526
Shortest reference at: [-6.76222300e+01 -1.65742261e+02 2.05628951e+01 -5.37410072e-01
-6.29929323e-01 5.12515020e-01 -2.27393528e-01 3.49715995e+00
7.47523120e+00 2.75829935e+01 5.60843636e+00 8.50086349e-01
-8.33360600e-01 -5.69350357e-02]
Now at at: { 'x_val': -68.05735778808594,
'y_val': -166.64027404785156,
'z_val': 17.448781967163086}
Controller needs replan due to deviation, enter stablizing mode.
Planning finished.
Deviating from path: cur min: 2.0030785706223586
Shortest reference at: [-6.80399974e+01 -1.66492098e+02 1.89346437e+01 2.18921756e-01
-8.20261498e-01 5.08268610e-01 -1.44593773e-01 2.76207593e-01
2.87705108e+00 2.98159579e+01 7.43465724e+00 5.50776434e-01
-4.81496129e-01 -1.72444656e-02]
Now at at: { 'x_val': -67.86662292480469,
'y_val': -167.6032257080078,
'z_val': 17.277036666870117}
Controller needs replan due to deviation, enter stablizing mode.
Planning finished.
Controller needs replan due to reference too short.
Planning finished.
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.