They did most of that back in 2015.[1] This is version 2.
It's interesting what's happening as the control theory people get into machine learning. The controls people don't typically run a neural net as a controller. They use the trained net as a tool for building a controller with known continuity properties. The trouble with pure neural net controllers is that they sometimes do something totally bogus for some data point within the normal input space. That's not OK in control systems.
This has all the math of machine learning plus the math of control theory and I don't understand it, although I sometimes look at the papers.
>They use the trained net as a tool for building a controller with known continuity properties.
This sentence and comment is a revelation to me so thanks!
I was very into control theory from 2001-2006 before jumping into Bayes nets and eventually ML. Having not really returned to CT since, it's always been a question in my mind how to use ML for SCADA & PLCs without running into the problems that you describe. As with most problems like this, it seems obvious now that it's described as such - though not actually obvious to those like me outside of it!
> "The trouble with pure neural net controllers is that they sometimes do something totally bogus for some data point within the normal input space."
A friend's theory on Google Maps is that it sometimes intentionally sends you down a non-optimal path in order to gather data on alternate routes. This friend isn't in the ML space, so this is just their anecdotal observation. Are they right, then?
>The trouble with pure neural net controllers is that they sometimes do something totally bogus for some data point within the normal input space. That's not OK in control systems.
Is that actually true? Everything we do at work with neural nets seems to indicate continuity. We do stuff with mathematical simulations and imagelike processing. Latent space for auto encoders tend to be smoothly varying throughout the range of outputs.
I thought the problem is just that it isn't proven that neural nets are sufficiently smooth.
That was roughly the thesis of Fuzzy Logic (Kosko 1993); complex control systems that used neural nets during design to extract "rules" from the system under control.
Back in the late 70s, my high school driving instructor said "don't tell your parents, but the best way to learn how to control a car is to go out to the school parking lot on a snowy night and spin donuts." Funny that they are finding that artificial intelligence can use the same method.
He's not wrong. When there's a solid snow, I love to find an empty parking lot and just do some stupid maneuvers. It really let's you get a feel for what works and what does. Like, if I turn my steering all the way and slam on the brakes. How far do I slide. Where do I end up? It's really good for getting comfortable with all kinds of scenarios
I've never tried it with a RWD car, but as a teenager, I thought the behavior of FWD in the snow was really fun. Go around a turn as fast as possible, and push on the gas pedal, it slides towards the outside, front first. Let off on the gas, and the front snaps back to the inside of the turn. I also buried my car in a snowbank more than once and had to dig it out.
This group has done good work, and at talks about their work I was able to come away with an interesting trivia.
When they try to compete with the best racers in the world, they do lose by a consistent amount. It turns out the human racers are constantly pushing the vehicle+tires to the limit of control to understand the sharpest possible turns they can make without losing time. As the tires wear, the human is in constant learning mode to compensate turn approaches as the coefficient of friction changes.
Work on the DeLorean will hopefully feed into their racing controls and then they might be able to beat the best human racers in the world on arbitrary tracks.
Somewhat reminds the progress airplanes did in the 1970s with fly-by-wire technology. Specifically they way it was utilised in the F-16.
Moving from directly piloted controlled surfaces (rudder, elevator, flaps, ailerons etc) to using a computer to convert the pilot command input to servo actuators. Flight surfaces had much more authority, much better performance could be achieved, but the flight computer was in charge of safety and keeping the aircraft within limits.
Steer and brake by wire is a safety thing, all manufacturers so far have kept a mechanical link in place despite electric assistance because of the potential for lawsuits. Infinity has gone the closest to full steer by wire so far that I’m aware of.
So is the general idea that by removing the automated controls, which normally limit drift so human drivers don't lose control, they're able to gather data at the extremes of car handling?
I'm curious how this would be applied in the real world. It almost seemed to suggest that a self-driving car would operate with those stability controls turned off, allowing it operate evasive maneuvers that would be impossible in a human-driven car.
Drifting is objectively less effective and safe than normal manuevering and braking.
Drifting as a sport exists to look cool and stylish. It's like figure skating with cars.
(There is one exception- off road racing on loose surfaces requires drifting. But driving that way off road is only useful for speed at the expense of safety and reliability.)
Stability control is just another algorithm running in the car so it's logical that a more general system would supersede it. Keeping existing code in place would limit car's possibilities and increase complexity.
I drive a lot on slippery surfaces. My car has stability control from 7-8 years ago. I’m sure a lot has improved in that time, but it is very obvious that the stability control in my car is more about trying to “rescue” me than assist me. Meaning, it will interrupt normal flow to “correct” more than it will assist.
If you extend the envelope for what driving dynamics you can handle I would imagine you could make a much more smooth and safe experience.
That being said: I’ve driven somewhat newer cars on wet race tracks, at speed, and I have to say I’m a bit impressed with how well they behave under stress. Still meddlesome, but not as dangerous as they used to be.
(But track use in slippery conditions are outside the envelope for a road car, so you’re better off with the assists turned down or off to avoid surprises)
It's a demonstration that they can predict the result of a wide range of control inputs across a wide range of vehicle states.
There's nothing unusual about a car without stability control. ABS and traction control have only become standard features relatively recently. Vehicle stability control builds on traction control by attempting to predict the driver's intent instead of just preventing slipping.
I think that you are right, that it enable more drastic responses in situations that required them. The normal control mode would probably focus on passenger comfort though.
Don't get me wrong I think this is an impressive feat and I am always impressed to see universities pull off these kinds of complex system and control projects. Yet, there are a few things that I would like to mention.
The article says that the car does "doughnuts with inhuman precision" and they want to develop vehicles that can handle "emergency maneuvers or slippery surfaces like ice or snow". In this context, I feel this demo falls a bit short. The car can drive with superhuman precision, but it also gets superhuman capabilities like inch-precision localization (and an IMU is my guess) or superhuman steering wheel turning speeds. And the vehicle is heavily modified for this specific use-case. Drifting looks stable in the video but I really cannot judge how much easier it is with this car than a normal car. In addition, the asphalt also looks fresh and clean. I would like to see what happens if it suddenly encounters wet surfaces (or ice).
Inch precision localization isn't out of the grasp of human drivers. Kimi Raikkonen at Monaco coming millimetetd from the walls repeatedly comes to mind.
It also isn't out of the abilities of a bog standard optical SLAM+IMU.
I genuinely hope Tesla get a 2020 Roadster to lap the Nurburgring on autopiliot with nobody inside. If it lives up to promises, it will easily set the all time lap record as the fastest vehicle ever.
It will be an interesting time when a $200k production car can whip the pants of a multi-million dollar F1 racecar.
I wonder if it would be feasible to make a fleet of race cars that have self driving technology that has each car communicating with the others and monitoring the human drivers, with the car letting the human drive but able to step in if the human tries to do something that would cause a crash?
I bet you could make some pretty good money with such a fleet running open races that members of the public can pay to drive in.
The self driving system could keep track of the number and severity of its safety interventions which could be used to give time penalties at the end of the race [1], so that the winner is determined by the skills of the humans.
Besides racing, you could also do car chases that recreate scenarios from action movies. Add in something to simulate guns, and you could do scenarios where a car with a driver and a couple armed passengers is trying to escape a couple pursuing cars, each with a driver and armed passenger.
[1] Or maybe actually do the time penalties during the race. If the self driving system has to take over from you, it could slow you down for a bit before returning control to you.
I doubt race car drivers (who are better drivers than the average car driver) would want a computer to yank their steering or do something unexpected in a race.
Autonomous cars aren't necessarily better than race car drivers.. would be interesting if human racers and autonomous compete
Probably not. Teslas, for example, have a ~9:1 drive reduction from motor output shaft to drive wheels. 1000Nm is a high torque motor to be sure, but not that hard to find.
It's not supposed to be for routine use. The idea is that if the car gets into a situation where stability is lost it will know how to handle it.
As an example, imagine an autonomous car is going around a bend and hits a large patch of black ice and goes into a slide. Current systems will struggle to handle the car and it could result in a crash. With this knowledge added the car will know how to handle slides and will recover easily.
Another example (given in the article) is if a person darts out into the path of the car it can perform a sharp turn and gracefully handle manoeuvring around them without losing control using this knowledge.
Yes #1 is that this is mostly Drifting techniques, which are mostly for show/style competition. The tyre slip angles mentioned are around 40deg, far past the optimal level of grip.
Yes #2 Racing techniques are more explicitly seeking to optimize for maximum grip, often found around 3 to 6 degree slip angles (depending on tyres, tyre pressure, tread & road temps, road cleanliness, dryness, etc.).
Both still are in the ranges of tyre slippage, at the edges of control, and burn tyres at crazy rates vs street use (drifting just insanely so).
Moreover, as someone with race training & experience, I can say that anyone doing full race/drift techniques on the streets as an ordinary practice is a real a*hole & a hazard.
BUT, all that said, it is absolutely critical to have thise techniques in your bag of tricks, available to use when something exceptional happens. In those rare-ish events, being able to use the full performance envelope of the vehicle is a real life saver, both for you and the others nearby.
So, for sure not every day, but these guys are absolutely right about the need to work on the full dynamic range of the performance spectrum.
they have gotten this car to do complex and exotic movements via automated manipulations of the car's human-oriented interface, that is, a single steering wheel, four wheels that turn in the same direction, and then the brakes / accelerator.
It seems though that if you are actually trying to design autonomous cars that feature greater maneuverability than what is normally possible you'd instead ditch the whole assumption of a single steering column and all of that and just consider all the wheels as independent, or maybe add more wheels that engage for some kinds of maneuvers, or probably a whole lot of other things that im sure all the car people here know are possible if you are no longer constrained to controls created for a single human with only four limbs and extremely limited coordination and reaction time.
Imagine if the car could also do that in the air, where the "ground" is unstable and changes all the time, but autonomy system should still maintain narrow range glissade.
Can an autonomous car beat the best version of Frank Martin in The Transporter series, let alone any of the Fast & Furious drivers?
Now we have the answer. It’s game over people! Even the fictional drivers in the movies have no chance against real world AI today.
This means in the future when an autonomous car or robot is chasing you — you may as well give up. You just better hope it doesn’t get cheap enough that someone can simply hire a swarm of robots or autonomous cars to kidnap people or incapacitate them or wreak havoc en masse (eg crashing into 10,000 gas stations at once).
Too many software engineers overlook the fantastic opportunity for cleverness when naming things. It's one of the hardest problems in computer science, but one of the most rewarding.
I was half expecting a Toyota Sprinter Trueno and Eurobeat. Pop references aside, though, what is this useful for? I thought cars were designed to not skid normally due to ABS?
I believe the idea is partially to understand how to train models to recover from skids. ABS gives you an assist, but it may be that the car can drift itself out of danger?
> “We’re trying to develop automated vehicles that can handle emergency maneuvers or slippery surfaces like ice or snow,” Gerdes said. “We’d like to develop automated vehicles that can use all of the friction between the tire and the road to get the car out of harm’s way. We want the car to be able to avoid any accident that’s avoidable within the laws of physics.”
ABS is a very human-centric system the tries to keep the car controllable under low traction, often by sacrificing something aspect of movement. The neural nets here throw all that out of the window, and control the car with direct physics, without being once or twice removed from reality.
The video also has some very interesting points about how the AI should be able to control the acceleration and braking on each wheel individually - so we really don't need to limit AI driving with human safety or control systems.
[+] [-] Animats|6 years ago|reply
It's interesting what's happening as the control theory people get into machine learning. The controls people don't typically run a neural net as a controller. They use the trained net as a tool for building a controller with known continuity properties. The trouble with pure neural net controllers is that they sometimes do something totally bogus for some data point within the normal input space. That's not OK in control systems.
This has all the math of machine learning plus the math of control theory and I don't understand it, although I sometimes look at the papers.
[1] https://news.stanford.edu/2015/10/20/marty-autonomous-delore...
[+] [-] AndrewKemendo|6 years ago|reply
This sentence and comment is a revelation to me so thanks!
I was very into control theory from 2001-2006 before jumping into Bayes nets and eventually ML. Having not really returned to CT since, it's always been a question in my mind how to use ML for SCADA & PLCs without running into the problems that you describe. As with most problems like this, it seems obvious now that it's described as such - though not actually obvious to those like me outside of it!
[+] [-] charliepark|6 years ago|reply
A friend's theory on Google Maps is that it sometimes intentionally sends you down a non-optimal path in order to gather data on alternate routes. This friend isn't in the ML space, so this is just their anecdotal observation. Are they right, then?
[+] [-] allovernow|6 years ago|reply
Is that actually true? Everything we do at work with neural nets seems to indicate continuity. We do stuff with mathematical simulations and imagelike processing. Latent space for auto encoders tend to be smoothly varying throughout the range of outputs.
I thought the problem is just that it isn't proven that neural nets are sufficiently smooth.
[+] [-] pjc50|6 years ago|reply
[+] [-] octoboto|6 years ago|reply
[+] [-] elfexec|6 years ago|reply
Just in time for the 30th anniversary of back to the future. Nice.
[+] [-] godelski|6 years ago|reply
[+] [-] asdfman123|6 years ago|reply
[+] [-] YeGoblynQueenne|6 years ago|reply
[+] [-] lyjackal|6 years ago|reply
[+] [-] chkaloon|6 years ago|reply
[+] [-] xeromal|6 years ago|reply
[+] [-] perl4ever|6 years ago|reply
[+] [-] mensetmanusman|6 years ago|reply
When they try to compete with the best racers in the world, they do lose by a consistent amount. It turns out the human racers are constantly pushing the vehicle+tires to the limit of control to understand the sharpest possible turns they can make without losing time. As the tires wear, the human is in constant learning mode to compensate turn approaches as the coefficient of friction changes.
Work on the DeLorean will hopefully feed into their racing controls and then they might be able to beat the best human racers in the world on arbitrary tracks.
[+] [-] ohadron|6 years ago|reply
Moving from directly piloted controlled surfaces (rudder, elevator, flaps, ailerons etc) to using a computer to convert the pilot command input to servo actuators. Flight surfaces had much more authority, much better performance could be achieved, but the flight computer was in charge of safety and keeping the aircraft within limits.
https://en.wikipedia.org/wiki/Fly-by-wire
[+] [-] Neil44|6 years ago|reply
[+] [-] jamestimmins|6 years ago|reply
I'm curious how this would be applied in the real world. It almost seemed to suggest that a self-driving car would operate with those stability controls turned off, allowing it operate evasive maneuvers that would be impossible in a human-driven car.
[+] [-] dharmab|6 years ago|reply
Drifting as a sport exists to look cool and stylish. It's like figure skating with cars.
(There is one exception- off road racing on loose surfaces requires drifting. But driving that way off road is only useful for speed at the expense of safety and reliability.)
[+] [-] zone411|6 years ago|reply
[+] [-] bborud|6 years ago|reply
If you extend the envelope for what driving dynamics you can handle I would imagine you could make a much more smooth and safe experience.
That being said: I’ve driven somewhat newer cars on wet race tracks, at speed, and I have to say I’m a bit impressed with how well they behave under stress. Still meddlesome, but not as dangerous as they used to be.
(But track use in slippery conditions are outside the envelope for a road car, so you’re better off with the assists turned down or off to avoid surprises)
[+] [-] maxerickson|6 years ago|reply
There's nothing unusual about a car without stability control. ABS and traction control have only become standard features relatively recently. Vehicle stability control builds on traction control by attempting to predict the driver's intent instead of just preventing slipping.
I think that you are right, that it enable more drastic responses in situations that required them. The normal control mode would probably focus on passenger comfort though.
[+] [-] jcims|6 years ago|reply
[+] [-] mmerlin|6 years ago|reply
[+] [-] fieldmeasure|6 years ago|reply
The article says that the car does "doughnuts with inhuman precision" and they want to develop vehicles that can handle "emergency maneuvers or slippery surfaces like ice or snow". In this context, I feel this demo falls a bit short. The car can drive with superhuman precision, but it also gets superhuman capabilities like inch-precision localization (and an IMU is my guess) or superhuman steering wheel turning speeds. And the vehicle is heavily modified for this specific use-case. Drifting looks stable in the video but I really cannot judge how much easier it is with this car than a normal car. In addition, the asphalt also looks fresh and clean. I would like to see what happens if it suddenly encounters wet surfaces (or ice).
edit: typos
[+] [-] sudosysgen|6 years ago|reply
It also isn't out of the abilities of a bog standard optical SLAM+IMU.
[+] [-] matt-attack|6 years ago|reply
[+] [-] grecy|6 years ago|reply
It will be an interesting time when a $200k production car can whip the pants of a multi-million dollar F1 racecar.
[+] [-] tzs|6 years ago|reply
I bet you could make some pretty good money with such a fleet running open races that members of the public can pay to drive in.
The self driving system could keep track of the number and severity of its safety interventions which could be used to give time penalties at the end of the race [1], so that the winner is determined by the skills of the humans.
Besides racing, you could also do car chases that recreate scenarios from action movies. Add in something to simulate guns, and you could do scenarios where a car with a driver and a couple armed passengers is trying to escape a couple pursuing cars, each with a driver and armed passenger.
[1] Or maybe actually do the time penalties during the race. If the self driving system has to take over from you, it could slow you down for a bit before returning control to you.
[+] [-] DreamScatter|6 years ago|reply
Autonomous cars aren't necessarily better than race car drivers.. would be interesting if human racers and autonomous compete
[+] [-] dragosmocrii|6 years ago|reply
[+] [-] jcims|6 years ago|reply
[+] [-] spectramax|6 years ago|reply
[+] [-] devit|6 years ago|reply
[+] [-] Digit-Al|6 years ago|reply
As an example, imagine an autonomous car is going around a bend and hits a large patch of black ice and goes into a slide. Current systems will struggle to handle the car and it could result in a crash. With this knowledge added the car will know how to handle slides and will recover easily.
Another example (given in the article) is if a person darts out into the path of the car it can perform a sharp turn and gracefully handle manoeuvring around them without losing control using this knowledge.
[+] [-] toss1|6 years ago|reply
Yes #1 is that this is mostly Drifting techniques, which are mostly for show/style competition. The tyre slip angles mentioned are around 40deg, far past the optimal level of grip.
Yes #2 Racing techniques are more explicitly seeking to optimize for maximum grip, often found around 3 to 6 degree slip angles (depending on tyres, tyre pressure, tread & road temps, road cleanliness, dryness, etc.).
Both still are in the ranges of tyre slippage, at the edges of control, and burn tyres at crazy rates vs street use (drifting just insanely so).
Moreover, as someone with race training & experience, I can say that anyone doing full race/drift techniques on the streets as an ordinary practice is a real a*hole & a hazard.
BUT, all that said, it is absolutely critical to have thise techniques in your bag of tricks, available to use when something exceptional happens. In those rare-ish events, being able to use the full performance envelope of the vehicle is a real life saver, both for you and the others nearby.
So, for sure not every day, but these guys are absolutely right about the need to work on the full dynamic range of the performance spectrum.
[+] [-] zzzeek|6 years ago|reply
It seems though that if you are actually trying to design autonomous cars that feature greater maneuverability than what is normally possible you'd instead ditch the whole assumption of a single steering column and all of that and just consider all the wheels as independent, or maybe add more wheels that engage for some kinds of maneuvers, or probably a whole lot of other things that im sure all the car people here know are possible if you are no longer constrained to controls created for a single human with only four limbs and extremely limited coordination and reaction time.
[+] [-] DreamScatter|6 years ago|reply
[+] [-] dehrmann|6 years ago|reply
Wish theme parks had rides like this.
[+] [-] keyle|6 years ago|reply
[+] [-] deepsun|6 years ago|reply
Wait, that's called landing autopilot.
[+] [-] EGreg|6 years ago|reply
Now we have the answer. It’s game over people! Even the fictional drivers in the movies have no chance against real world AI today.
This means in the future when an autonomous car or robot is chasing you — you may as well give up. You just better hope it doesn’t get cheap enough that someone can simply hire a swarm of robots or autonomous cars to kidnap people or incapacitate them or wreak havoc en masse (eg crashing into 10,000 gas stations at once).
[+] [-] freedomben|6 years ago|reply
:-D
Too many software engineers overlook the fantastic opportunity for cleverness when naming things. It's one of the hardest problems in computer science, but one of the most rewarding.
[+] [-] saagarjha|6 years ago|reply
[+] [-] joshvm|6 years ago|reply
> “We’re trying to develop automated vehicles that can handle emergency maneuvers or slippery surfaces like ice or snow,” Gerdes said. “We’d like to develop automated vehicles that can use all of the friction between the tire and the road to get the car out of harm’s way. We want the car to be able to avoid any accident that’s avoidable within the laws of physics.”
[+] [-] sudhirj|6 years ago|reply
The video also has some very interesting points about how the AI should be able to control the acceleration and braking on each wheel individually - so we really don't need to limit AI driving with human safety or control systems.
[+] [-] Hamuko|6 years ago|reply
[+] [-] fourthark|6 years ago|reply
If the friction were variable and unknown it would get completely lost.