12 ms·
Hang on. That argument makes no sense. We've had subsumption architecture for a long time now( https://en.wikipedia.org/wiki/Subsumption_architecture https://en
by hangonhn 9y ago
Hang on. That argument makes no sense. We've had subsumption architecture for a long time now( https://en.wikipedia.org/wiki/Subsumption_architecture https://en.wikipedia.org/wiki/Subsumption_architecture ). Subsumption architecture puts some of the intelligence in the lower level systems. While the higher level controls can tell the lower level systems what it wants, it can't do things that the lower system determines is dangerous.
So if a normal Mercedez has a collision avoidance system that automatically brakes, there is no reason why an AI based system can't be built on top of that and the collision avoidance system automatically braking without intervention from the higher AI systems. A subsumption system prevents higher level controls from doing something catastrophic like hitting a pedestrian or, in biology, a person holding their breath until they die.
- btrettel 9y agoAs I was skimming the article, I was thinking some sort of system like this could be made, and I was pleasantly surprised to see the approach has a long history. This is one reason I like Hacker News.
- saetaes 9y agoDoesn’t the author recommend exactly that in the last sentence of the article?
- jfrankamp 9y agoYes. For new readers, suggestion for this article: start with the last sentence. Then skim the article re AI. Then respond. So we don't have to keep saying/hearing "Why not both?". The author's take is: both!
- TTPrograms 9y agoBut let's make sure that the definition of AI doesn't encompass this because...?
- glaberficken 9y agoI guess author makes the distinction from deterministic Vs non-deterministic algorithms. As a layman in these matters I still don't fully understand how some people classify machine learning algorithms as non-deterministic... ...i started wondering about this when I was reading a few articles about the AlphaZero algorithm that learned to play chess entirely from self play and wondered if it would always play the same moves in response to a fixed set of opponent moves (assuming the opponent starts as white). My guess was that it wouldn't always respond in exactly the same way in case there's any MCTS like step somewhere in there blended with the Machine learning algorithm. For a game like chess it would seem to make sense that the overall algorithm would still include a MCTS step (like AlphaGo did) but for an autonomous car it would seem crazy to any human to imagine that there would be any random search for a decision in a tree of possible interpretations of the input for example. Does any one have any detailed knowledge about this? Would a non-deterministic algorithm ever be allowed in an autonomous car?
- Izkata 9y ago> As a layman in these matters I still don't fully understand how some people classify machine learning algorithms as non-deterministic... Some algorithms start with random numbers for the model and converge towards a better model. After the model is generated the input->output will be deterministic, but since the model generation is non-deterministic the algorithm overall is considered non-deterministic.
- jvanderbot 9y agoYep! Every single autonomous system I'm aware of (and that I'm allowed to speak about) has such a system designed in from the ground up. The article presupposes we allow "intelligence" handle all decision making, which seems ridiculous even in biological systems, let alone those we design for a single purpose.
- Animats 9y agoYes. We had that in our DARPA Grand Challenge vehicle a decade ago. In addition to the main navigation and control system, there was a separate process taking inputs from the radar and speedometer, with the authority to slam on the brakes if the vehicle was about to hit something. Backing that up was a hardware stall timer reset every 100ms. If it hit 120ms without being toggled by the computer watchdog process, the brakes went on and the engine dropped to idle with no computer involvement. Then there was a DARPA-mandated remote engine kill radio system.
- seanmcdirmid 9y agoIntegrating AI with a subsumption architecture sounds interesting but could still not work. You would be abstracting a lot of details (as well as potential action) from the training process, so the overall result you get still might not work. Training on everything might actually yield a better result. Does anyone know how iRobot (Brooks' company) does it?
- hangonhn 9y agoI believe it is subsumption based with random walk added on top: bumper hit means turn around and wheel dangling means don't go farther. I think the more recent models have more intelligence added on top but still has the lower level systems acting as safe guards. Of course it doesn't run into the problems you mentioned because it doesn't have any learning (at least not one of the earlier models I had).
- seanmcdirmid 9y agoiRobot builds more than just roomba, I was wondering about their more advanced military robots.
- Retric 9y agoThe AI can still drive the car normally, the only thing that changes is it's prevented from running into another car at full speed. Which is no worse than having drivers override the system forcing a disengagement.
- Karlozkiller 9y agoYes, as long as you add a huge penalty to the training algorithm for triggering any underlying safety system I see no problem in that. (Otherwise I can see a completely mad car that believes everything is safe as it never crashes even when reckless )
- amelius 9y agoBut braking on a highway might not be the best response in all circumstances.
- adrianN 9y agoWhen the collision detection system kicks in and determines that you're going to hit something in the next couple of seconds, then braking probably is the best option.
- amelius 9y agoWhat if it's a large piece of cardboard?
- chopin 9y agoI know of an accident where someone overran a cardboard container used to package washing machines. He thought it was empty. Unfortunately it was not. Some truck lost part of its load. I think its safe to break always when encountering an ambiguous situation.
- amelius 9y agoOk, what if the cardboard is flying over the road?
- adrianN 9y agoProbably still safer not to hit it, or at least not to hit it at full speed.
- beobab 9y agoAnother anecdotal tale: My dad once didn't bother slowing down for "cardboard tubes" that had fallen off a lorry. It turned out they were ceramic tubes, and caused quite a bit of damage.
- rimliu 9y ago
- Gibbon1 9y agoThat sort of thing is common in industrial controls. Start the big ass air compressor and if the oil pressure doesn't hit 100 psig in five seconds the interlock trips. That's handled by a controller on the pump itself. Also really common or required that the interlock be totally separate from the control system.
- taneq 9y agoAgreed. You use the lowest-tech option which is practical at every stage. So if you have a mechanism which can travel between points A and B and will cause damage if it leaves that range, your best option is a physical stop at each end. Second best option is a hard-wired limit switch at each end which cuts motor power. Third best is a limit switch which is used by software. You wouldn't use machine vision or LIDAR. And then as you say, safety related functions (anything on which human life depends) need to be separate from general control code and to meet the requirements of whatever safety spec you're working to (e.g. SIL).
- pj_mukh 9y agoVery true. Which is why I'm still waiting for what happened to all the lower level safety systems, presumably driven by lighting invariant LIDAR or RADAR systems, in the Uber situation. The article kind of mentions: "cyclist detection from 3D point cloud is much harder task than cyclist detection from an image" The system didn't need to know that it was a "cyclist". There was something there, in its path. Stop.
- deleted 9y ago[deleted]
- gambiting 9y agoIn fact, the XC90 is already equipped with a radar-based emergency stop system from factory - that alone would have been 100% sufficient to prevent or vastly reduce the impact. But of course it looks like the system was disabled/overriden by the Uber's autonomous solution.
- skgoa 9y ago> So if a normal Mercedez has a collision avoidance system that automatically brakes, there is no reason why an AI based system can't be built on top of that and the collision avoidance system automatically braking without intervention from the higher AI systems. In fact this 'bottom up' approach is exactly what all automoted driving efforts in the automotive industry follow. It's the biggest difference between how the auto industry and Silicon Valley are tackling this problem. A lot of digital ink has been spilled over how slow and supposedly prone to disruption by hip and agile software companies this approach is, yet it becomes ever more evident that it was the correct choice.
- w_t_payne 9y agoAbsolutely right. Doing otherwise shows a worrying lack of systems engineering expertise. Actually - the industry that really knows how to do this sort of thing is the defense industry.
- carlmr 9y ago>A lot of digital ink has been spilled over how slow and supposedly prone to disruption by hip and agile software companies this approach is, yet it becomes ever more evident that it was the correct choice. The car industry had 130 years to become the conservative, anti-agile, careful industry it is. They are in the business of costing human lives a lot longer. The problem is "move fast and break things" works really extraordinarily well for software which is for entertainment and information purposes. Not for something serious.
- YeGoblynQueenne 9y agoNot an expert on self-driving cars, but modern, statistical machine learning systems have to be trained sort of end-to-end. That is, if you want to machine-learn how to perform a task, you have to learn both the low-level and the high-level actions at once. And you can't add to the knowledge of the task, once the system is trained. That's a limitation of the technology: statistical machine learning models are notoriously non-compositional. That means that basically you can't take one trained model and use it as a feature, to learn a new model for a different task. Say, if you train a machine learning classifier C1 to recognise class Y1 from features F1,...,Fn, you can't then take the model of Y1 built by C1 and give it to a different classifier, C2, as a feature in a new feature vector Fn+1,...,Fn+k to learn a different class, Y2. So you have to learn everything you need to know in one go- and that's terribly, awfully difficult. There is a type of machine learning algorithm whose models are inherently compositional- Inductive Logic Programming (full disclosure: that's my research). These learn logic representations and from logic representations, so once you learn a model you can use it as a new feature and continue learning. Statistical machine learning folks have been trying to do that for a while now, without much success.
- wodenokoto 9y agoActually they are extremely compassable. A feed forward neural network is often called a multiple layer perceptron, because it is multiple perceptron classifiers that feed into each other. If you want to build a domain specific image classifier, you take the bottom layers of a generic classifier and train it on your otherwise too small dataset. You can absolutely add predictions from one classifier as a feature to the next. It is quite common to have a pipeline where you augment text with Part of Speech, Named Entity Recognition, etc, before performing the final task.
- YeGoblynQueenne 9y agoWhat perceptrons feed into the next layer are not features- they're activations. They can't be used as features because they don't represent attributes of some concept. CNNs invent new features that can be used further down the track- sure, but the end result is not something you can use any further. You can't, for example, take a learned concept of a dog and then use it as a feature to learn about pets. With language learning pipelines again, you're not adding a newly learned model to a set of features- instead, you use that model to label parts of your data that were not previously labelled. What I mean (what my research group does) is more like what is discussed by Francois Chollett of Keras, here: https://blog.keras.io/the-future-of-deep-learning.html https://blog.keras.io/the-future-of-deep-learning.html The kind of program-like modularity he's describing is missing from modern statistical classifiers, deep nets included.