Inertial navigation is extremely accurate in telling you the change from a sample to the next, but as your position is the second integral of your acceleration, any error compounds quickly (admittedly the quality of the INS available to people willing to spend 10s of millions of dollars on a vehicle FAR exceeds what you'd be able to put in a car). Sensors like GPS give you an absolute position but they're imprecise. The error propagates back into your next guess of state, and this repeats forever. You make changes to try and get from A to B but you may not exactly achieve B. Your loop is mostly about "what is my best guess at my present state" and "what is my desired next state". In dynamic systems, such as a rocket, robot, etc., reality is fuzzy. The part that's way harder though is that at least in a game engine, you know the absolute world state and when you make a change to your world state, it happens exactly as you wanted. A lot of effort has definitely gone into making sure the tasks can complete quickly enough, with some margin, and there are definitely systems that monitor these deadlines and treat even one timing miss as a major failure. Like the article describes, some Dragon tasks run every 100ms, others run every 20ms. For a car or spaceship though, there are hard real-time requirements. One frame could render in 20ms and the next in 25ms, which is completely fine. A game typically processes events as fast as it can, and the time between any two iterations of the loop is completely unpredictable. The similarity with game event loops is IMO superficial. That's not really surprising, as the overall system for an autonomous car and a spaceship is very similar - keep processing inputs from sensors, calculate some values and manage state machines, use those results to adjust outputs, some of which may operate actuators, and repeat. The article's indeed light on details, but what it describes sounds very similar to autonomous driving / driver assistance software I have experience with.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |