I'm watching a youtube video where a guy is talking about how computers can learn to go from some point A to some point B.

However, the way he does it is very disappointing: all he does is generate thousands of objects that go from A to some random destination, and then he updates all the random destinations by taking the average of the original destination + the destination of the object that got closest to B. This process is then repeated until convergence.

I don't see what's so impressive about this. If you wanted the machine to go from A to B, why did you not just ... you know .... tell it to go to B?. What's the point of essentially generating random instructions, and hoping one of those random instructions just happens to be: go to B, when you could just as well tell that instruction to the computer yourself?

Is this really what people mean when they say that a computer "learns" to do some task? And if so, what's so impressive about it? What am I missing?

  • $\begingroup$ Welcome to Ai.Se, nice question...you are actually missing quite a lot, if those decisions were truly random then it would take a long time to reach a final conclusion..instead the the machine learns from its failures...that is what the machine is 'learning'. Also sometimes state B might not be straightforward for humans to calculate, it can only be done by a powerful machine. $\endgroup$ – DuttaA Aug 25 '18 at 12:32
  • 2
    $\begingroup$ The main problem in today's relationship between public and researchers is the enormous gap between them. On the first hand there are advanced science projects available and on the other hand we have an uninformed public. The gap is filled by science education, that is a special format in mainstream television which is filled by journalists who are filtering real science into a simplified language. Part of this manipulation is to explain a brute force solver with the term “The robot learns something”. Such edutainment hides the real scientific papers which are written in a different language. $\endgroup$ – Manuel Rodriguez Aug 25 '18 at 12:34
  • 2
    $\begingroup$ It might be worth adding a link to the video you are explaining. There are many ways that a computer might "learn" to solve a task. It would help to see the material that you are asking about, in order to write an answer which addresses what you actually saw. $\endgroup$ – Neil Slater Aug 25 '18 at 14:02
  • $\begingroup$ In order to achieve an approximation to the complexity of this problem or any other one, put yourself in the place of the machine. How do you go from A to B? It is not so easy as it seems. You need a map of the area or create your own one by exploring, after that you need to evaluate the shortest path or, at least, a path not too long, ... Moreover, how you learned to do it ? By yourself or someone teach you? (including the parents at ages less than two years). $\endgroup$ – pasaba por aqui Aug 26 '18 at 9:44
  • $\begingroup$ The main issue is the internal causation of the machine. How does this change? By a human, say, changing the program that defines the behavior of the machine? That's not learning. It's a human using human knowledge to alter the behavior of the machine. "Learning" means the machine changing its own internal causation in response to sensory input/effector output. Unsupervised learning of ANNs (artificial neural nets) seems promising but has not factored up to the human-level case. In reality AI doesn't know how to make a computer learn by itself as humans do. $\endgroup$ – Roddus Aug 26 '18 at 10:08

Your confusion is a result of Moravec’s Paradox; the just tell it to... step is enormously more difficult than it sounds. So what researchers do is attempt to find a general approach to that problem. The problem is expressed as a matrix of numbers (a grid that may be a million on each side these days) and “learning” is the process of computing the values for each of those numbers. Obviously no human can solve an equation like that, so a machine solver is used. Therefore the work of the AI researcher is to find better ways to generate these large matrices i.e. to express go to X and to create better solvers. The holy grail is a matrix and a solver that will work for any X.

  • $\begingroup$ It's nice to know that dedicated researchers are informed about the problem. They are able to discuss the irritation with expert-systems and their attempt to solve the task is so complicated that somebody needs to explain this to the public. $\endgroup$ – Manuel Rodriguez Aug 25 '18 at 18:32

Your Answer

