Skip to main content

Distributed vs Centralized Intelligence


Image result for ant colony optimization

There are two main paths we could take towards the goal of building Synthetic (Artificial and General) Intelligence. We could either take the distributed or Centralized paths.


Building centralized intelligence requires designing an architecture where there is a central program that encodes the intelligence algorithm and this central system dispatches agents that are relatively not very intelligent to achieve its goals.

These agents could be something simple as the Intelligent agents that we currently have on our phones and in our homes like Alexa, Cortana, Siri and Google, or it could be as complex as a system of robots or drones controlled from some centralized source.

This is the way we humans find easiest to think in. When you are using some kind of Intelligent agent like Alexa, etc., even though you think that the intelligence you are dealing with is in your immediate vicinity, it actually resides on a massive computing cloud, and what you have is no different from a simple user agent that is not very intelligent and only serves as an interface to the larger system.

This kind of reasoning is not very easy to escape, even when we talk about distributed systems, it is rarely fully peer-to-peer as there will always be some centralized power somewhere even though designers of peer-to-peer systems try to reduce the power that this centralized source can possess.

The argument for our current centralized AI systems hosted by the major companies is that the computation and data necessary for achieving some kind of intelligence using our current algorithms are massive so therefore the user agent must be a thin client and most of the real intelligence is stored on the massive servers of the large companies. This is the current status quo.

You might argue that the cloud infrastructure is distributed and that even though it presents a unified view for the user, at the core it is thousands of servers communicating and computing to give you the illusion of this view. These cloud systems are so well designed that taking out a couple of servers out does not render the system inoperable because there is massive amount of redundancy built into it but the kind of distributed intelligence we will have in the future will be much more decentralized than a simple distributed architecture that houses our current AI in large data warehouses.

The future distributed AI will be more like an Ant colony, where each node is fully autonomous but shares a central goal with every other node. There could be different kinds of nodes specialized in different kinds of tasks but their organization will be much flatter and less hierarchical than current systems.

This is no different from the way multicellular biological organism are organized. You have different cells in groups as organs or systems but they all possess the same DNA sequence even though they express only the subset of genes that are required for them to fulfil their function. In my opinion this is the height of design sophistication and this is how future AI systems will be designed.

Even though most of the software running AI in large software companies are distributed, there are still some major computing centres where a massive amount of computing must be centralized for efficiency. This is the best we can do now because of the kind of hardware we have but this will not necessarily be so in the near future when we have more powerful/efficient hardware and better algorithms that the current brute-force-looking methods.

In future distributed intelligence systems you will not be able to point to any single source of the intelligence of all the agents. Each agent in the system will contribute to the intelligence of the entire system. Even though some agents will be specialized for some tasks depending on their capabilities they will be aware of the singular goal of the entire system and their part or sub-part in that goal.

The agents can still present a unified appearance as if there was some central kind of authority but this would only be an illusion as there would be no real central authority of any sort. Such a system would be both tightly coupled and highly redundant at the same time, although they all follow a single coherent goal each agent is fully redundant and the loss of one unit does not in any way jeopardize the general goal of the system.

The agents will coordinate themselves locally in tightly knit cliques but will also be aware of the global state of the system and what part they should play in that goal.

The underpinnings of this future intelligence are already being test run in the blockchain networks of the world. If you look beyond the money aspect of these blockchains you will see an underlying powerful distributed architecture upon which some kind of global artificial intelligence could be built where a participating member of the network could benefit from the intelligence offered by the whole system.




Comments

Popular posts from this blog

Next Steps Towards Strong Artificial Intelligence

If you follow current AI Research then it will be apparent to you that AI research, the deep learning type has stalled! This does not mean that new areas of application for existing techniques are not appearing but that the fundamentals have been solved and things have become pretty standardized.

Software of the future

From the appearance of the first programmable computer, the software has evolved in power and complexity. We went from manually toggling electronic switches to loading punch cards and eventually entering C code on the early PDP computers. Video screens came in and empowered the programmer very much, rather than waiting for printouts to debug our programs, we were directly manipulating code on the screen.


At the edge of a cliff - Quantum Computing

Source: https://ai.googleblog.com/2018/05/the-question-of-quantum-supremacy.html
Quantum computing reminds me of the early days of computer development (the 50s - 60s) where we had different companies come up with their different computer architectures. You had to learn how to use one architecture then move to another then another as you hoped to explore different systems that were better for one task than they were for another task.