Simulation and IoT Mitigating risk as systems grow

Faberwork’s Notes and Trends series offers new approaches and tools for companies to proactively address uncertainty and risk. Here we look at managing risk as computer systems grow in complexity and design.

The staggering growth of the Internet is being paralleled by the surging expansion of the Internet of Things, IoT. The IoT had its roots in retail when in 1999 an account manager for Procter & Gamble championed a wireless connection between store items and the firm’s inventory. IoT was fittingly born in retail because the IoT is not a theoretical or academic exercise. IoT connects physical things without the benefit of human intervention. IoT is where the rubber hits the road for the Internet.

In the US the penetration of Internet users is approaching 100%. Internationally the number of users is well past five billion. IoT connections, though, are over fourteen billion and growing fast. Growth rates for the IoT are estimated at about 17% per year.

The growth of IoT may accelerate as artificial intelligence and other technologies like 5G merge with IoT into new systems to create the Artificial Internet of Things, AIoT. These integrations will open up new frontiers for IoT.

Putting IoT in the business plan

For many businesses IoT is already here. The technology, like the internet itself, cuts across virtually all lines of business from medical and transportation to finance and insurance. Efficient use of IoT, however, requires integration into the regular business decision-making process. Business planning discussions about IoT should recognize the enormous opportunities being created by the technology.

But the discussion needs to include risk management. At scale, efficient IoT risk management can be expected to be continuous, and automated. Large networks will be tested with simulated systems with emerging Python-based protocols. These risk management tools should be embedded at the beginning of the design and not as an afterthought.

Continuous TestAutomation

Nothing here suggests that interconnected processes can’t be tested manually. One can always stress the actual machines to be certain that they work as expected in a system. The practicality of manual intervention quickly becomes inadvisable in complex systems though. The advisability of stressing machinery to prove a point for a risk event like a fire, which may never occur, is dubious. Given the updating and tweaking that large systems face over time, automated and continuous reviews should be expected. Manual manipulation of physical systems quickly becomes impractical.

The necessity of developing mathematical models which accurately represent a physical system like a trucking company has broad recognition for complex systems. These computer models of things that are going to be connected to one another through the IoT can be stressed as severely as necessary and as frequently as desired when it’s done in a simulation.

For example, trucks on the road can report on their location, the wear on the engine, and the network can predict the required maintenance. All this is done in real-time. And the model can continuously adjust as new types of trucks are added or tire wear increases. And since the simulation and system testing is done continuously changes will not adversely affect the physical system’s performance.

The power of simulation

The goal of a simulator is to mimic the operation of a physical system. A simulation takes inputs like temperature, or pressure and feeds them to computer models of individual things linked together in a system. It might be a compressor or cooler that can help manage the temperature in one room which is modeled. But of course, there is likely to be many rooms for a system to manage.

Creating a simulator requires us to gather and prepare accurate data which is appropriate to the problem. Algorithms need to be created to generate the output data from the simulator which the inputs and system properties demand. Mechanisms to display and save the output data need to be present in the simulation. Finally, we need to verify the reasonableness of the output data that is generated in different test scenarios.

The inputs are digital. They can be in the form of XML, JSON, string, or other files which are the inputs for the model of the actual device. These events are digitally input into the simulator which contains all the individual elements. The simulation then outputs a result, which may be room temperature. The output is based on the conditions of the environment which the simulator is given.

The simulator is flexible. The simulator can act as a RESTful stand-alone server, waiting to be used and can be called by different platforms. It can test the communication layer of the model, including basic authentication, SSL, and HTTP. Using the simulator, we can gain an understanding and visualization of the project including things like how much electrical load an application can handle. We can force the Simulator to “misbehave” and see how the interrelated systems handle these anomalies, thereby making sure that the other systems of the ecosystem behave as expected.

A simulation is just the output of a simulator. That is when we input pressure and temperature, we get the resulting computer prediction of the room temperature. Each time we do this we perform a simulation. Of course, we can repeat the process for a whole range of temperatures and pressures. Then we might say we have tested the room temperature model, an IoT, through simulation. The process should be automatic and continuous.

This type of computer model can be very complex because the behavior of the physical things in an IoT may include thousands of items interacting all at once. Many simulators like this can have hundreds of thousands of lines of computer code.

Because of the growing scope of TestAutomation, it is important to choose the most forward-looking architecture. At this point, the choice is most likely to be Python-based. Python is an open source language growing in popularity.

The simulator can mimic the real network of physical items and provide the test case scenarios for a physical system like heating and cooling in a warehouse. A simulator can capture unexpected events and correlations that would not necessarily be predicted by a theoretical model.

The general architecture of a BlackBox simulator used in transportation especially by the trucks is shown below. For security data is encrypted.

Simulation applications

Fabework has developed simulators for energy, transportation, enterprise resource planning domains and many others. The unique features of these applications will be the subject of future notes.

MARCH 11, 2024
Alok Pancholi
Founder & CEO
SHARE
LinkedIn Logo X Logo Facebook Logo