Collaborating Autonomous Systems

Current software trends, such as Microservices, are trending in a very interesting direction: that of collaborating autonomous systems. Dr. Jim Walsh (CTO, GlobalLogic) explores key concepts in this new blog.

Insight categories: AI and ML

Current software trends, such as Microservices, are trending in a very interesting direction: that of collaborating autonomous systems.

This paradigm is very familiar to us from the natural world. Swarms of bees, colonies of ants, schools of fish, even planets in motion 鈥渃ollaborate鈥 through the exchange of information (or forces) while remaining 鈥渁utonomous鈥 (capable of independent action) in isolation.

One manifestation of this pattern in software is the 鈥渃ontainerized Microservices鈥 paradigm that is transforming many large-scale systems. In this paradigm, the individual Microservices are designed to be as autonomous as possible. In particular, each microservice instance should have all the data and other information it requires to continue to work locally in isolation. Even if every other microservice in its system were to crash, an individual microservice instance should be able to continue functioning on its own (though perhaps with data that gets more 鈥渟tale鈥 over time as it stops receiving updates, for example).

A key concept in coordinating these autonomously operating microservices into a coherent system is that of 鈥渃horeography鈥. The word choreography is borrowed, oddly enough for a software concept, from the world of dance. When dancers perform, there is no person, no director, who tells them what to do. Instead, each dancer learns his or her part in advance. The individual dancers then perform their part as learned, coordinating their actions by the exchange of non-verbal cues with other dancers and from the music. Microservices systems are similar, but in this case the 鈥渃ues鈥 and information sharing are propagated through the system as broadcast, published events.

This type of choreography has a lot in common with physical systems like a swarm of bees, or an ant colony. While each insect is capable of independent actions, they co-ordinate among themselves through an exchange of signals鈥攃hemical, behavioral and even dance. Our information systems are headed in this direction鈥攂ecause it scales, and it works. What we are beginning to see is this same programming paradigm emerging at a 鈥渕acro鈥 scale in the physical world, due to connected devices.

More and more information handling capability is available at the 鈥渆dge鈥 of our connected systems. This trend will continue as the cost of compute power and related resources continues to decline. We can see this effect in our personal mobile devices already: The aggregate processing power of Apple鈥檚 iPhone X was comparable to that of Apple鈥檚 鈥淧ro鈥 line of laptops when it was launched in 2017[1] (though used for different purposes). This same 鈥渟mart鈥 phenomenon is clearly happening to all types of connected devices, including cars, smoke alarms, thermostats, and even light bulbs[2]. There is no doubt, at least in my mind, that the trend of smart edge devices will continue, even as network connectivity grows increasingly capable (as it will).

As the 鈥渆dges鈥 get smarter, collaboration between them gets more powerful. The more an edge node computes, or senses about its environment, the more it can share. Whether this sharing takes place in the form of peer-to-peer interaction, or through a central mediator such as a network, remains to be seen. But certainly, our smart edges will collaborate with each other one way or another.

Self-driving or 鈥渁utonomous鈥 cars will certainly be a dramatic manifestation of the phenomena of collaborating autonomous systems, but there are many others such as warehouse robots, home automation systems, and systems of smart devices generally that we are seeing now or will in the near future. By combining autonomous operation with the notion of signaling and 鈥渃horeography鈥, we will see the emergence of robust, scalable and powerful systems whose behavior is astonishingly nuanced.

Why am I so confident this will happen? Just take a look at the bees鈥

 

[1] http://bgr.com/2017/09/14/iphone-x-vs-iphone-8-a11-bionic-benchmarks-macbook-pro/

[2] Phillips Hue light bulbs contain a microcontroller; see http://colinoflynn.com/wp-content/uploads/2016/08/us-16-OFlynn-A-Lightbulb-Worm-wp.pdf

Author

Automotive.jpg

Author

Dr. Jim Walsh

CTO

View all Articles

Trending Insights

If You Build Products, You Should Be Using Digital Twins

If You Build Products, You Should Be Using...

Digital TransformationTesting and QAManufacturing and Industrial
ITSM vs ITIL

ITSM vs ITIL

AtlassianTechnology
Retail After COVID-19: How Innovation is Powering the New Normal

Retail After COVID-19: How Innovation is Powering the...

Digital TransformationInsightsConsumer and Retail

Top Authors

Vasyl Akimov

Vasyl Akimov

DevOPS Engineer

Sahil Gupta

Sahil Gupta

Consultant, Engineering

Sonal Padole

Sonal Padole

Senior Project Manager

Vimal Dhale

Vimal Dhale

Senior Consultant Engineering

Arti Gupta

Arti Gupta

Sr. Manager, Engineering

All Categories

  • URL copied!