Algorithms – most people have heard this term before. The term comes from information technology and is therefore also frequently used in the bergisch.smart_mobility project, especially in the field of artificial intelligence (AI), which plays a decisive role in the smart mobility of the future. But what exactly is an algorithm and what purpose does it serve? What is Monte Carlo simulation and how does it help our project partner Aptiv in the development of intelligent on-board networks in vehicles?

### What is an algorithm?

In simple terms, an algorithm is a clear and structured set of instructions or rules for solving a problem or performing a task. Algorithms in everyday human life are therefore, for example, building instructions for pieces of furniture or the instructions of a navigation system to drivers in order to reach the desired destination. Just as a human being needs instructions to solve a task, so does a computer. In order for it to be able to execute commands and solve tasks, it also needs algorithms. The following applies: The more precisely the requirements are entered into an algorithm, the more certain the output of the desired result is from the computer.
If different algorithms are cleverly combined with each other, complex systems are created that already take on a variety of tasks in the modern world – for example, automated or even autonomous parking functions of vehicles. Such parking systems must be thoroughly tested before they are actually used in road traffic. Due to the high complexity of these systems, however, it is very time-consuming to prove their functionality – even if these tests are automated and carried out in a simulated environment. In order to reduce the scope of these lengthy tests to a tolerable level in terms of time, various mathematical methods are used for this purpose.

### How does Monte Carlo simulation work?

If many of the environmental parameters in a test situation (e.g. temporal relationships, unexpected external influences, etc.) are unknown or can only be determined with great effort, simulations that work according to the random principle offer a solution to the problem. A well-known method for such a random principle simulation is the Monte Carlo simulation (also called stochastic scenario analysis), named after the casino of the same name in Monaco. The basis of this type of simulation is a large number of similar random simulations, which with a certain probability arrive at a relatively good, approximate result for the initially posed problem. Complex problems are thus solved with the help of probability theory.

### Intelligent vehicle architecture and in-vehicle data transmission

Within the framework of the bergisch.smart_mobility project, special teams are dealing with the conception of an intelligent vehicle architecture and thus also with a series of structures and algorithms that are complexly interwoven in different computer systems. This is the case, for example, in the area of in-vehicle data transfer, in which the most diverse vehicle components exchange information with each other in the form of data packets. This data transfer must be coordinated so that a smooth data flow can take place. When designing this coordination, however, there are always many imponderables that cannot be clearly determined in the planning phase.
A comparable example from everyday life is the concept of road and city planning, where people, roads, traffic lights, etc. must be coordinated with each other to avoid traffic jams, collisions and other incidents that impede the flow of traffic. Despite thorough planning, traffic jams or other imponderables can still occur in road traffic.

### The data jam problem

Especially when computer systems are networked, communication between them also involves such imponderables, which can hardly be determined in advance. The different data streams of the devices can fluctuate greatly in number and frequency. It can happen that several networked devices want to send large and time-critical data at the same time, resulting in a congestion in the network. In the process, data packets can be severely delayed or even lost. This problem of uncertainty in the transmission of communication data is a classic task for Monte Carlo simulation. This simulation then runs an enormous number of random experiments, determines various solution approaches for the data congestion problem on the basis of stochastics and provides information about their suitability.

### The Monte Carlo principle in simulation software

For the work in the bergisch.smart_mobility project in the field of intelligent vehicle architecture, simulation software for automotive networks is used to ensure error-free communication between different components within a vehicle. Among other things, this software uses the Monte Carlo principle to simulate various data transmission scenarios. Before the actual simulation can begin, it is adapted to the pre-determined conditions through extensive configuration. Known parameters are used as a basis, for example, which devices are networked with each other at what speed and which data streams are to be expected and how frequently. In addition, the simulation period is defined before the start. Furthermore, the orientation is configured, i.e. the target on which the focus is to be directed in the subsequent simulation.
As soon as the simulation has begun, very large quantities of possibilities are calculated and finally summarised for evaluation. Depending on the configuration, this can take anywhere from a few minutes to several days. Thanks to the high computing speed of the simulation, scenarios for the period of many weeks, months or even years can be simulated in a short time.

After the simulation has run, the corresponding results and the simulation data calculated for them are proposed. These results provide information on how the networked devices in the vehicle (computer systems) and the connecting link points (switches) can be optimally configured in order to prevent congestion, collisions or losses of data in the overall network or at least to reduce their occurrence as best as possible. Although the simulation software is a very valuable tool in the configuration of a network, in the end it still requires an analytical decision-maker, i.e. an experienced network specialist, to select a practicable solution from the determined results. Proof of the quality and suitability of the selected configuration is then provided on the real system.