Oil Drop Navigates Complex Maze
sciencenow.sciencemag.org
sciencenow.sciencemag.org
(representing a pac-man game by having ghosts detect a "smell" of pac-man that diffuses through the maze)
This is a brilliant application of a novel idea BUT the physical process at work only seems miraculous because we do not deal with acid gradients every day. Consider: would the same claims that it "performs a computation" be as credible in the vacuum cleaner and air pressure version?
If any computation is being done, it is a search space being covered in parallel by billions of independent agents (the molecules of the medium). The movement of the water droplet (or ping pong ball!) merely serves to display the answer.
There are other cases of analog chemical processes beating out digital computations. But the reference to medicine also seems like a stretch - navigating a simple maze with a couple of acidic and basic chemicals seems very far away from a complex chemical hunting cancer in the human body.
At best, it'll increase the concentration of a drug in the cancer (among other places) above that of a "plain" drug, which is an improvement, thus should be investigated.
For someone who's not a graph theorist, it's an easy mistake to make, since the longest path problem is, in general, NP-complete. He was probably just thinking of this problem.
That might be true for dense graphs, if you think that O(|V|^2 log|V|) is unfavourable.
A normal maze graph is planar and therefore |V| <= 3|E| - 6. Thus, maze problems can always be solved in O(|V| log|V|) time for a constant number of exits and starting points.
So, while the author made a little mathematical blunder ( single layer maze problems are efficient to solve), he's not the one that implied NP-completeness.
EDIT: Clarified my comment so that no-one can think I'm implying that an O(|V|^2 log|V|) algorithm is an NP problem.
(|V| > log|V|), therefore (|V|^2 |V| == |V|^3) > (|V|^2 log |V|). As a polynomial is a (loose) upper-bound, it cannot be greater than polynomial time, thus !NP-Complete.
O( | E | + | V | log | V | )
Definitely not NP-Complete. Finding the distance from all nodes to all other nodes may be NP-Complete (not sure, but it seems like it would be, and doing so would be meaningless in a maze), but maze-solving is relatively easy in computing terms. Heck, even if you don't know the maze it's not NP-Complete: simply walk the whole thing and then calculate the shortest path.Granted, the quote only says mazes can fall into NP-Complete... but I really don't know what you'd have to do to do that, without clearly falling out of a "maze" problem and into a more general "graph" problem.
Dijkstra's for example computes a minimum spanning tree on a graph (it doesn't really compute shortest path from a->b, it computes shortest path from a to all other nodes) and does it in O(E+VlogV) if I remember....which is quite a bit better than polynomial time.
Here's an account of someone who actually tried one in real life (it takes a couple of pages): http://www.scottaaronson.com/papers/npcomplete.pdf
Personally I see no reason to believe this isn't true of all physical processes that "solve" an NP-complete problem.
The oil droplet is able to (usually) find the shortest path by always moving in the direction of higher acid content. Would you expect it to find the longest path by always going away from the higher acid content? That's wrong; that's not the longest path to the exit, it's the SHORTEST path back to the entrance!
OK, so how about the least acidic path that it hasn't already taken; i.e. not allow it to double back? Also wrong: that will lead it into the first blind alley that faces away from the exit, where it will be trapped.
So given that 1. We cannot use the highest acidic value as a criterion and 2. We cannot use the lowest acidic value as a criterion and 3. We cannot use the lowest acidic value not already visited, that leaves us with expecting the droplet to neither always take the most acidic exit from an intersection nor the least acidic. However, surely SOMETIMES the least acidic exit might be the longer path, and SOMETIMES the most acidic exit is. Then we are forced to conclude that the droplet must act differently at different times with the same stimulus!
That implies it has to maintain some kind of state, or memory. As the droplet is undifferentiated oil, it seems unlikely that it has a large enough state space to solve the longest path problem.