On November 4th 2015 Konstantin Benz, researcher at ICCLab, presented an adaptive cloud application in the “Complex Adaptive Systems” conference in San Jose, California. “Complex Adaptive Systems” is a conference organized by Missouri University of Science and Technology (MST) which takes place every year and which includes topics like machine learning, data analytics and smart system architectures. Conference proceedings are published in the Procedia Computer Science journal by Elsevier.
The 5th Conference about “Complex Adaptive Systems” is dedicated to technologies that provide solutions to complex problems we face in everyday life. Complexity is everywhere. A complex system may be the traffic system in California which produces unforeseen traffic jams. Another complex system may be the power grid that delivers electric power to every household every day without any interruption. Or a complex system may be just the order of your favorite cereals that land in your bowl for breakfast. Complex systems are more than just systems which are a little bit complicated to observe.
Complex systems consist of many elements which are heterogeneous either in their role or in their behavior. The overall system behavior seen on a macroscopic level might be completely different from the behavior observed on the microscopic level. This may lead to “emergent” phenomena which are hard to predict, but still occur frequently in such systems and that can affect every element of the system. All elements in a complex system are linked to each other which makes analysis of such systems very difficult.
Many contemporary challenges are due to inherent complexity of their underlying system: a large traffic jam may come from a car that breaks unexpectedly leading to the propagation of a prolongated halt of every other vehicle that follows. Moreover many technical systems have to manage complexity, because there is a convergence of technologies and social systems. Software, hardware and even everyday technological devices become more and more connected and build a complex “Internet of Things”. The Internet of Things is connected to social systems and will become one complex system too – as IEEE Fellow Sajal K. Das claimed at the conference.
Machine learning and adaptiveness
How can we manage such complex systems? This is the question that researchers are trying to answer at the “Complex Adaptive Systems” conference which is organized every year by Dr. Cihan Dagli of the Missouri University of Science and Technology. The conference is sponsored by the MITRE Corporation, a not-for profit organization that operates research centers for the US Federal Government in the military and non-military sector. These federally funded research and development centers (FFRDCs) investigate new technologies for Defense & Intelligence, Aviation, Civil Agency Modernization, Healthcare, Homeland Security, US Courts and Cyber Security. The science of complexity aims at nothing else than improving our everyday life at micro- and macroscopic levels.
The answer on the question how to manage complexity is found by providing “smart” applications that use data mining, machine learning and statistical techniques in order to handle complex problems.
From dumb software to smart cloud application
It is obvious that cloud researchers have to invest time in dealing with challenges that are due to complexity of cloud systems. Cloud computing systems and especially many consumer software applications we use today are not “intelligent” in terms of adaptiveness – although quite a few examples exist that prove how adaptive software provides some benefits to consumers. The most popular example might be Amazon’s recommender system which is capable to propose recommended products to potential buyers thereby increasing revenue of product sales on Amazon’s shopping platform. It is clear that applications should become smarter in the future.
The ICCLab of the Zurich University of Applied Sciences investigates the possibility to host such “smart” applications in the cloud. The goal is to migrate contemporary software applications into cloud computing systems in order to make them more sophisticated. These so-called “cloud-native” applications can be transformed into a smart distributed software system by making it capable to capture and forecast end user behavior. This smart cloud-native distributed system is able to adapt itself to the requirements of application users – like e. g. performance requirements.
A prototype system of a smart cloud-native application has been provided by Konstantin Benz and Thomas M. Bohnert. The architecture of the prototype system is published in the paper: “Elastic scaling of cloud application performance based on Western Electric Rules by injection of aspect-oriented code“. The system is capable of forecasting resource usage of a Python program and switching the control flow from a low performing VM to a high performing one (in case the usage increases and thereby slows down the application). This control flow switch ensures performance of the application. The benefits of this application are guaranteed performance and elastic scalability of used cloud resources.
The latest publication success proves the effectiveness of ICCLab’s technology transfer strategy. Initiative-based research concepts are the starting points for innovative projects that lead to development of new products and publications.