Computer simulation modeling. Statistical simulation modeling. The concept of a simulation model and simulation


Introduction

One of the important features of the ACS is the fundamental impossibility of conducting real experiments before the completion of the project. A possible solution is to use simulation models. However, their development and use are extremely complex, and it is difficult to accurately determine the degree of adequacy of the process being modeled. Therefore, it is important to decide which model to create.

Another important aspect is the use of simulation models during the operation of automated control systems for decision making. These models are created during the design process so that they can be continuously upgraded and adjusted to meet changing user conditions.

The same models can be used to train personnel before putting the automated control system into operation and to conduct business games.

1. The concept of simulation

Simulation modeling is a research method that consists in simulating on a computer with the help of a set of programs the process of functioning of a system or its individual parts and elements. The essence of the simulation modeling method lies in the development of such algorithms and programs that imitate the behavior of the system, its properties and characteristics in the composition, volume and range of change of its parameters necessary for the study of the system.

The fundamental possibilities of the method are very great; it allows, if necessary, to investigate systems of any complexity and purpose with any degree of detail. The limitations are only the power of the computer used and the complexity of preparing a complex set of programs.

Unlike mathematical models, which are analytical dependencies that can be investigated using a fairly powerful mathematical apparatus, simulation models, as a rule, allow only single tests to be carried out on them, similar to a single experiment on a real object. Therefore, for a more complete study and obtaining the necessary dependencies between the parameters, multiple tests of the model are required, the number and duration of which are largely determined by the capabilities of the computer used, as well as the properties of the model itself.

The use of simulation models is justified in cases where the possibilities of methods for studying the system using analytical models are limited, and full-scale experiments are undesirable or impossible for one reason or another.

Even in those cases when the creation of an analytical model for the study of a particular system is in principle possible, simulation may be preferable in terms of the time spent by the computer and the researcher to conduct the study. For many tasks that arise during the creation and operation of automated control systems, simulation modeling sometimes turns out to be the only practical research method. This largely explains the continuously growing interest in simulation modeling and the expansion of the class of problems for which it is used.

Simulation modeling methods are developed and used mainly in three directions: development of standard methods and techniques for creating simulation models; study of the degree of similarity of simulation models to real systems; creation of programming automation tools focused on the creation of software complexes for simulation models.

There are two subclasses of systems focused on system and logical modeling. The subclass of system modeling includes systems with well-developed general algorithmic tools; with a wide range of tools for describing parallel actions, temporal sequences of process execution; with the ability to collect and process statistical material. In such systems, special programming and modeling languages ​​are used - SIMULA, SIMSCRIPT, GPSS, etc. The first two of these languages ​​are subsets of procedurally oriented programming languages ​​such as FORTRAN, PL / 1, advanced tools for dynamic data structures, operators for controlling quasi-parallel processes, special tools collecting statistics and processing lists. These additional features allow statistical studies of models, which is why such systems are sometimes called statistical modeling systems.

The subclass of logical modeling includes systems that allow in a convenient and concise form to reflect the logical and topological features of the simulated objects, which have the means to work with parts of words, format conversion, recording microprograms. This subclass of systems includes programming languages ​​AUTOCOD, LOTIS, etc.

In most cases, when simulating economic, production and other organizational management systems, the study of the model consists in conducting stochastic experiments. Reflecting the properties of the simulated objects, these models contain random variables that describe both the functioning of the systems themselves and the impact of the external environment. Therefore, the most widely used statistical modeling.

The simulation model is characterized by sets of input variables

observed or manipulated variables

control actions

disturbing influences

The state of the system at any given time

and the initial conditions Y(t0), R(t0), W(t0) can be random variables given by the corresponding probability distribution. The relations of the model determine the probability distribution of quantities at the moment t + ∆t:

There are two main ways of constructing a modeling algorithm - the principle of ∆t and the principle of singular states.

The ∆t principle. The time interval (t0, t) in which the behavior of the system is studied is divided into intervals of length ∆t. In accordance with the given probability distribution for the initial conditions, a priori considerations or randomly choose one of the possible states z0(t0) for the initial moment t0. For the moment t0 + ∆t, the conditional probability distribution of the states is calculated (under the condition of the state z0(t0)). Then, similarly to the previous one, one of the possible states z0(t0 ​​+ ∆t) is chosen, the procedures for calculating the conditional probability distribution of states for the moment t0 + 2∆t are performed, etc.

As a result of repeating this procedure until the moment t0 + n∆t = T, one of the possible realizations of the random process under study is obtained. A number of other process implementations are obtained in the same way. The described method of constructing a modeling algorithm takes a lot of computer time.

The principle of special states. All possible states of the system Z(t) = (zi(t)) are divided into two classes - ordinary and special. In normal states, the characteristics zi(t) change smoothly and continuously. Special states are determined by the presence of input signals or by the output of at least one of the characteristics zi(t) to the boundary of the existence area. In this case, the state of the system changes abruptly.

The modeling algorithm should include procedures for determining the moments of time corresponding to special states, and the values ​​of the system characteristics at these moments. With a known probability distribution for the initial conditions, one of the possible states is chosen and, according to the given patterns of changes in the characteristics zi(t), their values ​​are found before the first special state. In the same way, they pass to all subsequent special states. Having received one of the possible implementations of a random multidimensional process, other implementations are built using similar procedures. The cost of computer time when using a modeling algorithm according to the principle of special states is usually less than according to the principle ∆t.

Simulation modeling is mainly used for the following applications:

1) in the study of complex internal and external interactions of dynamic systems in order to optimize them. To do this, they study the patterns of the relationship of variables on the model, make changes to the model and observe their influence on the behavior of the system;

2) to predict the behavior of the system in the future based on modeling the development of the system itself and its external environment;

3) for the purpose of personnel training, which can be of two types: individual training of an operator who controls a certain technological process or device, and training of a group of people who collectively manage a complex production or economic facility.

In systems of both types, a set of programs sets a certain situation on the object, but there is a significant difference between them. In the first case, the software imitates the functioning of objects described by technological algorithms or transfer functions; the model is focused on training the psychophysiological characteristics of a person, therefore such models are called simulators. Models of the second type are much more complicated. They describe some aspects of the functioning of an enterprise or firm and are focused on issuing some technical and economic characteristics when exposed to inputs, most often not an individual, but a group of people performing various management functions;

4) for mock-up of the designed system and the corresponding part of the managed object for the purpose of rough check of the proposed design solutions. This allows the customer to demonstrate the operation of the future system in the most visual and understandable form, which contributes to mutual understanding and coordination of design solutions. In addition, such a model makes it possible to identify and eliminate possible inconsistencies and errors at an earlier design stage, which reduces the cost of correcting them by 2–3 orders of magnitude.

Model An object is any other object whose individual properties completely or partially coincide with the properties of the original one.

It should be clearly understood that an exhaustively complete model cannot be. She is always limited and should only correspond to the goals of modeling, reflecting exactly as many properties of the original object and in such completeness as is necessary for a particular study.

Source object can be either real, or imaginary. We deal with imaginary objects in engineering practice at the early stages of designing technical systems. Models of objects not yet embodied in real developments are called anticipatory.

Modeling Goals

The model is created for the sake of research, which is either impossible, or expensive, or simply inconvenient to carry out on a real object. There are several goals for which models and a number of main types of studies are created:

  1. Model as a means of understanding helps to identify:
  • interdependencies of variables;
  • the nature of their change over time;
  • existing patterns.

When compiling the model, the structure of the object under study becomes more understandable, important cause-and-effect relationships are revealed. In the process of modeling, the properties of the original object are gradually divided into essential and secondary from the point of view of the formulated requirements for the model. We are trying to find in the original object only those features that are directly related to the side of its functioning that interests us. In a certain sense, all scientific activity is reduced to the construction and study of models of natural phenomena.

  1. Model as a means of forecasting allows you to learn how to predict behavior and control an object by testing various control options on the model. Experimenting with a real object is often, at best, inconvenient, and sometimes simply dangerous or even impossible due to a number of reasons: the long duration of the experiment, the risk of damaging or destroying the object, the absence of a real object in the case when it is still being designed.
  2. The built models can be used to finding optimal ratios of parameters, studies of special (critical) modes of operation.
  3. The model may also in some cases replace the original object when training, for example, be used as a simulator in training personnel for subsequent work in a real environment, or act as an object of study in a virtual laboratory. Models implemented in the form of executable modules are also used as simulators of control objects in bench tests of control systems, and, at the early stages of design, replace future hardware-based control systems themselves.

Simulation

In Russian, the adjective "imitation" is often used as a synonym for the adjectives "similar", "similar". Among the phrases "mathematical model", "analog model", "statistical model", a pair - "simulation model", which appeared in the Russian language, probably as a result of inaccurate translation, gradually acquired a new meaning different from its original one.

Indicating that this model is a simulation model, we usually emphasize that, unlike other types of abstract models, this model retains and easily recognizes such features of the modeled object as structure, connections between components way of transmitting information. Simulation models are also usually associated with the requirement illustrations of their behavior with the help of graphic images accepted in this application area. It is not without reason that imitative models are usually called enterprise models, environmental and social models.

Simulation = computer simulation (synonyms). Currently, for this type of modeling, the synonym "computer modeling" is used, thereby emphasizing that the tasks being solved cannot be solved using standard means of performing computational calculations (calculator, tables or computer programs that replace these tools).

A simulation model is a special software package that allows you to simulate the activity of any complex object, in which:

  • the structure of the object is reflected (and presented graphically) with links;
  • running parallel processes.

To describe the behavior, both global laws and local laws obtained on the basis of field experiments can be used.

Thus, simulation modeling involves the use of computer technology to simulate various processes or operations (i.e., their simulation) performed by real devices. Device or process commonly referred to system . To study a system scientifically, we make certain assumptions about how it works. These assumptions, usually in the form of mathematical or logical relationships, constitute a model from which one can get an idea of ​​the behavior of the corresponding system.

If the relationships that form the model are simple enough to obtain accurate information on the issues of interest to us, then mathematical methods can be used. This kind of solution is called analytical. However, most existing systems are very complex, and it is impossible to create a real model for them, described analytically. Such models should be studied by simulation. In modeling, a computer is used to numerically evaluate the model, and with the help of the obtained data, its real characteristics are calculated.

From the point of view of a specialist (informatics-economist, mathematician-programmer or economist-mathematician), simulation modeling of a controlled process or a controlled object is a high-level information technology that provides two types of actions performed using a computer:

  • work on the creation or modification of a simulation model;
  • operation of the simulation model and interpretation of the results.

Simulation (computer) modeling of economic processes is usually used in two cases:

  • to manage a complex business process, when the simulation model of a managed economic object is used as a tool in the contour of an adaptive control system created on the basis of information (computer) technologies;
  • when conducting experiments with discrete-continuous models of complex economic objects to obtain and track their dynamics in emergency situations associated with risks, the full-scale modeling of which is undesirable or impossible.

Typical simulation tasks

Simulation modeling can be applied in various fields of activity. Below is a list of tasks for which modeling is especially effective:

  • design and analysis of production systems;
  • determination of requirements for equipment and protocols of communication networks;
  • determination of requirements for hardware and software of various computer systems;
  • design and analysis of the operation of transport systems, such as airports, highways, ports and subways;
  • evaluation of projects for the creation of various queuing organizations, such as order processing centers, fast food establishments, hospitals, post offices;
  • modernization of various business processes;
  • defining policies in inventory management systems;
  • analysis of financial and economic systems;
  • assessment of various weapons systems and requirements for their logistics.

Model classification

The following were chosen as the basis for classification:

  • a functional feature that characterizes the purpose, purpose of building a model;
  • the way the model is presented;
  • time factor reflecting the dynamics of the model.

Function

Model class

Example

Descriptions

Explanations

Demo Models

Educational posters

Predictions

Scientific and technical

Economic

Mathematical models of processes

Models of developed technical devices

measurements

Processing of empirical data

Model ship in the pool

Aircraft model in a wind tunnel

Interpreting

Military, economic, sports, business games

criterial

Exemplary (reference)

shoe model

clothing model

In accordance with it, the models are divided into two large groups: material and abstract (non-material). Both material and abstract models contain information about the original object. Only for a material model, this information has a material embodiment, and in an intangible model, the same information is presented in an abstract form (thought, formula, drawing, diagram).

Material and abstract models can reflect the same prototype and complement each other.

Models can be roughly divided into two groups: material and ideal, and, accordingly, to distinguish between subject and abstract modeling. The main varieties of subject modeling are physical and analog modeling.

Physical it is customary to call such modeling (prototyping), in which a real object is associated with its enlarged or reduced copy. This copy is created on the basis of the theory of similarity, which allows us to assert that the required properties are preserved in the model.

In physical models, in addition to geometric proportions, for example, the material or color scheme of the original object, as well as other properties necessary for a particular study, can be saved.

analog modeling is based on replacing the original object with an object of a different physical nature, which has a similar behavior.

Both physical and analog modeling as the main method of research involves natural experiment with the model, but this experiment turns out to be in some sense more attractive than the experiment with the original object.

Ideal models are abstract images of real or imaginary objects. There are two types of ideal modeling: intuitive and iconic.

About intuitive modeling is said when they cannot even describe the model used, although it exists, but they are taken to predict or explain the world around us with its help. We know that living beings can explain and predict phenomena without the visible presence of a physical or abstract model. In this sense, for example, the life experience of each person can be considered his intuitive model of the world around him. When you are about to cross a street, you look to the right, to the left, and intuitively decide (usually correctly) whether you can go. How the brain copes with this task, we simply do not yet know.

Iconic called modeling, using signs or symbols as models: diagrams, graphs, drawings, texts in various languages, including formal, mathematical formulas and theories. An obligatory participant in sign modeling is an interpreter of a sign model, most often a person, but a computer can also cope with the interpretation. Drawings, texts, formulas in themselves have no meaning without someone who understands them and uses them in their daily activities.

The most important type of sign modeling is math modeling. Abstracting from the physical (economic) nature of objects, mathematics studies ideal objects. For example, with the help of the theory of differential equations, it is possible to study the already mentioned electrical and mechanical vibrations in the most general form, and then apply the acquired knowledge to study objects of a specific physical nature.

Types of mathematical models:

Computer model - this is a software implementation of a mathematical model, supplemented by various utility programs (for example, those that draw and change graphic images in time). The computer model has two components - software and hardware. The software component is also an abstract sign model. This is just another form of an abstract model, which, however, can be interpreted not only by mathematicians and programmers, but also by a technical device - a computer processor.

A computer model exhibits the properties of a physical model when it, or rather its abstract components - programs, are interpreted by a physical device, a computer. The combination of a computer and a simulation program is called " electronic equivalent of the object under study". A computer model as a physical device can be part of test benches, simulators and virtual laboratories.

Static model describes the immutable parameters of an object or a one-time slice of information on a given object. Dynamic Model describes and investigates time-varying parameters.

The simplest dynamic model can be described as a system of linear differential equations:

all modeled parameters are functions of time.

Deterministic Models

There is no place for chance.

All events in the system occur in a strict sequence, exactly in accordance with the mathematical formulas that describe the laws of behavior. Therefore, the result is precisely defined. And the same result will be obtained, no matter how many experiments we conduct.

Probabilistic models

Events in the system do not occur in an exact sequence, but randomly. But the probability of occurrence of this or that event is known. The result is not known in advance. When conducting an experiment, different results can be obtained. These models accumulate statistics over many experiments. Based on these statistics, conclusions are drawn about the functioning of the system.

Stochastic Models

When solving many problems of financial analysis, models are used that contain random variables whose behavior cannot be controlled by decision makers. Such models are called stochastic. The use of simulation allows you to draw conclusions about the possible results based on the probability distributions of random factors (values). Stochastic simulation often called the Monte Carlo method.

Stages of computer simulation
(computational experiment)

It can be represented as a sequence of the following basic steps:

1. STATEMENT OF THE PROBLEM.

  • Description of the task.
  • The purpose of the simulation.
  • Formalization of the task:
    • structural analysis of the system and processes occurring in the system;
    • building a structural and functional model of the system (graphic);
    • highlighting the properties of the original object that are essential for this study

2. DEVELOPMENT OF THE MODEL.

  • Construction of a mathematical model.
  • Choice of modeling software.
  • Design and debugging of a computer model (technological implementation of the model in the environment)

3. COMPUTER EXPERIMENT.

  • Assessment of the adequacy of the constructed computer model (satisfaction of the model with the goals of modeling).
  • Drawing up a plan of experiments.
  • Conducting experiments (studying the model).
  • Analysis of the results of the experiment.

4. ANALYSIS OF SIMULATION RESULTS.

  • Generalization of the results of experiments and conclusion about the further use of the model.

According to the nature of the formulation, all tasks can be divided into two main groups.

To first group include tasks that require explore how the characteristics of an object will change with some impact on it. This kind of problem statement is called "what if…?" For example, what happens if you double your utility bills?

Some tasks are formulated somewhat more broadly. What happens if you change the characteristics of an object in a given range with a certain step? Such a study helps to trace the dependence of the object parameters on the initial data. Very often it is required to trace the development of the process in time. This extended problem statement is called sensitivity analysis.

Second group tasks has the following generalized formulation: what effect should be made on the object so that its parameters satisfy some given condition? This problem statement is often referred to as "How do you make...?"

How to make sure that "both the wolves are fed and the sheep are safe."

The largest number of modeling tasks, as a rule, is complex. In such problems, a model is first built for one set of initial data. In other words, the problem “what happens if ...?” is solved first. Then the study of the object is carried out while changing the parameters in a certain range. And, finally, according to the results of the study, the parameters are selected so that the model satisfies some of the designed properties.

It follows from the above description that modeling is a cyclic process in which the same operations are repeated many times.

This cyclicity is due to two circumstances: technological, associated with "unfortunate" mistakes made at each of the considered stages of modeling, and "ideological", associated with the refinement of the model, and even with its rejection, and the transition to another model. Another additional "outer" loop can appear if we want to expand the scope of the model, and change the inputs that it must correctly account for, or the assumptions under which it must be fair.

Summing up the results of the simulation may lead to the conclusion that the planned experiments are not enough to complete the work, and possibly to the need to refine the mathematical model again.

Planning a computer experiment

In experiment design terminology, the input variables and structural assumptions that make up the model are called factors, and the output performance measures are called responses. The decision about which parameters and structural assumptions to consider as fixed indicators, and which as experimental factors, depends more on the purpose of the study, and not on the internal form of the model.

Read more about planning a computer experiment on your own (pp. 707–724; pp. 240–246).

Practical methods of planning and conducting a computer experiment are considered in practical classes.

Limits of possibilities of classical mathematical methods in economics

Ways to study the system

Experiment with a real system or with a model system? If it is possible to physically change the system (if it is cost-effective) and put it into operation in new conditions, it is best to do just that, since in this case the question of the adequacy of the result obtained disappears by itself. However, such an approach is often not feasible, either because it is too costly to implement or because it has a devastating effect on the system itself. For example, the bank is looking for ways to reduce costs, and for this purpose it is proposed to reduce the number of tellers. Trying out the new system with fewer cashiers could lead to long delays in customer service and abandonment of the bank. Moreover, the system may not actually exist, but we want to explore its various configurations in order to choose the most efficient way to execute. Communication networks or strategic nuclear weapons systems are examples of such systems. Therefore, it is necessary to create a model representing the system and examine it as a substitute for the real system. When using a model, the question always arises - whether it really accurately reflects the system itself to such an extent that it is possible to make a decision based on the results of the study.

Physical model or mathematical model? When we hear the word "model," most of us think of cockpits set up outside the planes on training grounds and used for pilot training, or miniature supertankers moving around in a pool. These are all examples of physical models (also called iconic or figurative). They are rarely used in operations research or systems analysis. But in some cases, the creation of physical models can be very effective in the study of technical systems or control systems. Examples include scale tabletop models of loading and unloading systems and at least one full-scale physical model of a fast food restaurant in a large store that involved real customers. However, the vast majority of created models are mathematical. They represent the system through logical and quantitative relationships, which are then processed and modified to determine how the system responds to change, more precisely, how it would respond if it actually existed. Probably the simplest example of a mathematical model is the well-known relation S=V/t, where S- distance; V– movement speed; t- travel time. Sometimes such a model may be adequate (for example, in the case of a space probe directed to another planet, when it reaches the speed of flight), but in other situations it may not correspond to reality (for example, traffic during rush hours on an urban congested freeway) .

Analytical solution or simulation? To answer questions about the system that a mathematical model represents, it is necessary to establish how this model can be built. When the model is simple enough, it is possible to calculate its relations and parameters and obtain an accurate analytical solution. However, some analytical solutions can be extremely complex and require huge computer resources. The inversion of a large nonsparse matrix is ​​a familiar example of a situation where there is a known analytical formula in principle, but in this case it is not so easy to obtain a numerical result. If, in the case of a mathematical model, an analytical solution is possible and its calculation seems to be effective, it is better to study the model in this way, without resorting to simulation. However, many systems are extremely complex; they almost completely exclude the possibility of an analytical solution. In this case, the model should be studied using simulation, i.e. repeated testing of the model with the desired input data to determine their impact on the output criteria for evaluating the performance of the system.

Simulation is perceived as a "method of last resort", and there is a grain of truth in this. However, in most situations, we quickly realize the need to resort to this particular tool, since the systems and models under study are quite complex and need to be represented in an accessible way.

Suppose we have a mathematical model that needs to be investigated using simulation (hereinafter referred to as the simulation model). First of all, we need to come to a conclusion about the means of its study. In this regard, simulation models should be classified according to three aspects.

Static or dynamic? A static simulation model is a system at a certain point in time, or a system in which time simply does not play any role. Examples of a static simulation model are Monte Carlo models. A dynamic simulation model represents a system that changes over time, such as a conveyor system in a factory. Having built a mathematical model, it is necessary to decide how it can be used to obtain data about the system it represents.

Deterministic or stochastic? If the simulation model does not contain probabilistic (random) components, it is called deterministic. In a deterministic model, the result can be obtained when all input quantities and dependencies are given for it, even if in this case a large amount of computer time is required. However, many systems are modeled with multiple random component inputs, resulting in a stochastic simulation model. Most queuing and inventory management systems are modeled this way. Stochastic simulation models produce a result that is random in itself and therefore can only be considered as an estimate of the true characteristics of the model. This is one of the main disadvantages of modeling.

Continuous or discrete? Generally speaking, we define discrete and continuous models in a similar way to the previously described discrete and continuous systems. It should be noted that a discrete model is not always used to model a discrete system, and vice versa. Whether it is necessary to use a discrete or continuous model for a particular system depends on the objectives of the study. Thus, a traffic flow model on a highway will be discrete if you need to take into account the characteristics and movement of individual cars. However, if the vehicles can be considered collectively, the traffic flow can be described using differential equations in a continuous model.

The simulation models that we will consider next will be discrete, dynamic, and stochastic. In what follows, we will refer to them as discrete-event simulation models. Since deterministic models are a special kind of stochastic models, the fact that we limit ourselves to such models does not introduce any generalization errors.

Existing approaches to visual modeling of complex dynamic systems.
Typical simulation systems

Simulation modeling on digital computers is one of the most powerful means of research, in particular, complex dynamic systems. Like any computer simulation, it makes it possible to carry out computational experiments with systems that are still being designed and to study systems with which full-scale experiments, due to safety or high cost reasons, are not appropriate. At the same time, due to its closeness in form to physical modeling, this research method is accessible to a wider range of users.

At present, when the computer industry offers a variety of modeling tools, any qualified engineer, technologist or manager should be able to not only model complex objects, but model them using modern technologies implemented in the form of graphic environments or visual modeling packages.

“The complexity of the systems being studied and designed leads to the need to create a special, qualitatively new research technique that uses the apparatus of imitation - reproduction on a computer by specially organized systems of mathematical models of the functioning of the designed or studied complex” (N.N. Moiseev. Mathematical problems of system analysis. M .: Nauka, 1981, p. 182).

Currently, there is a great variety of visual modeling tools. We will agree not to consider in this work packages oriented to narrow application areas (electronics, electromechanics, etc.), since, as noted above, the elements of complex systems, as a rule, belong to different application areas. Among the remaining universal packages (oriented to a certain mathematical model), we will not pay attention to packages oriented to mathematical models other than a simple dynamical system (partial differential equations, statistical models), as well as purely discrete and purely continuous. Thus, the subject of consideration will be universal packages that allow modeling structurally complex hybrid systems.

They can be roughly divided into three groups:

  • "block modeling" packages;
  • "physical modeling" packages;
  • packages focused on the scheme of a hybrid machine.

This division is conditional, primarily because all these packages have much in common: they allow you to build multi-level hierarchical functional diagrams, support OOM technology to one degree or another, and provide similar visualization and animation capabilities. The differences are due to which of the aspects of a complex dynamical system is considered the most important.

"block modeling" packages focused on the graphic language of hierarchical block diagrams. Elementary blocks are either predefined or can be constructed using some special lower level auxiliary language. A new block can be assembled from existing blocks using oriented links and parametric tuning. The predefined elementary blocks include purely continuous, purely discrete, and hybrid blocks.

The advantages of this approach include, first of all, the extreme simplicity of creating not very complex models, even by a not very trained user. Another advantage is the efficiency of the implementation of elementary blocks and the simplicity of constructing an equivalent system. At the same time, when creating complex models, one has to build rather cumbersome multilevel block diagrams that do not reflect the natural structure of the system being modeled. In other words, this approach works well when there are suitable building blocks.

The most famous representatives of the "block modeling" packages are:

  • SIMULINK subsystem of the MATLAB package (MathWorks, Inc.; http://www.mathworks.com);
  • EASY5 (Boeing)
  • SystemBuild subsystem of the MATRIXX package (Integrated Systems, Inc.);
  • VisSim (Visual Solution; http://www.vissim.com).

"Physical Simulation" packages allow the use of undirected and streaming relationships. The user can define new block classes himself. The continuous component of the behavior of an elementary block is given by a system of algebraic differential equations and formulas. The discrete component is specified by the description of discrete events (events are specified by a logical condition or are periodic), upon occurrence of which instantaneous assignments of new values ​​to variables can be performed. Discrete events can propagate through special links. Changing the structure of equations is possible only indirectly through the coefficients on the right-hand sides (this is due to the need for symbolic transformations when passing to an equivalent system).

The approach is very convenient and natural for describing typical blocks of physical systems. The disadvantages are the need for symbolic transformations, which sharply narrows the possibilities of describing hybrid behavior, as well as the need to numerically solve a large number of algebraic equations, which greatly complicates the task of automatically obtaining a reliable solution.

Physical modeling packages include:

  • 20 SIM(Controllab Products B.V; http://www.rt.el.utwente.nl/20sim/);
  • Dymola(Dymasim; http://www.dynasim.se);
  • Omola, OmSim(Lund University; http://www.control.lth.se/~case/omsim.html);

As a generalization of the experience of developing systems in this direction, an international group of scientists developed a language Modelica(The Modelica Design Group; http://www.dynasim.se/modelica) offered as a standard for exchanging model descriptions between different packages.

Packages based on the use of the hybrid machine scheme, make it possible to describe hybrid systems with complex switching logic very clearly and naturally. The need to determine an equivalent system at each switch makes it necessary to use only oriented connections. The user can define new block classes himself. The continuous component of the behavior of an elementary block is given by a system of algebraic differential equations and formulas. The redundancy of the description when modeling purely continuous systems should also be attributed to the disadvantages.

This package includes Shift(California PATH: http://www.path.berkeley.edu/shift) as well as the native package Model Vision Studio. The Shift package is more focused on describing complex dynamic structures, while the MVS package is more focused on describing complex behaviors.

Note that there is no insurmountable gap between the second and third directions. In the end, the impossibility of sharing them is due only to today's computing capabilities. At the same time, the general ideology of building models is practically the same. In principle, a combined approach is possible, when in the structure of the model the constituent blocks, the elements of which have a purely continuous behavior, should be singled out and transformed once to an equivalent elementary one. Further, the cumulative behavior of this equivalent block should be used in the analysis of the hybrid system.

Simulation

Modeling

Modeling is a generally recognized means of cognition of reality. This process consists of two large stages: model development and analysis of the developed model. Modeling allows you to explore the essence of complex processes and phenomena through experiments not with a real system, but with its model. It is known that in order to make a reasonable decision on the organization of the system operation, it is not necessary to know all the characteristics of the system, it is always sufficient to analyze its simplified, approximate representation.

In the field of creating new systems, modeling is a means of studying important characteristics of a future system at the earliest stages of its development. With the help of simulation, it is possible to explore the bottlenecks of a future system, evaluate performance, cost, throughput - all its main characteristics even before the system is created. With the help of models, optimal operational plans and schedules for the functioning of existing complex systems are developed. In organizational systems, simulation modeling becomes the main tool for comparing various options for management decisions and finding the most effective of them both for decisions within a workshop, organization, firm, and at the macroeconomic level.

Models of complex systems are built in the form of programs that run on a computer. Computer modeling has been around for almost 50 years, it has emerged with the advent of the first computers. Since then, two overlapping areas of computer modeling have developed, which can be characterized as mathematical modeling and simulation modeling.

Math modeling is connected mainly with the development of mathematical models of physical phenomena, with the creation and justification of numerical methods. There is an academic interpretation of modeling as a field of computational mathematics, which is traditional for the activity of applied mathematicians. In Russia, a strong school has developed in this area: the Research Institute of Mathematical Modeling of the Russian Academy of Sciences - the parent organization, the Scientific Council of the Russian Academy of Sciences on the problem of "Mathematical Modeling", the journal "Mathematical Modeling" is published ( www. imamod . en ).

Simulation - this is the development and execution on a computer of a software system that reflects the behavior and structure of the modeled object. A computer experiment with a model consists in running a given program on a computer with different values ​​of parameters (initial data) and analyzing the results of these runs.

Problems in the development of simulation models

Simulation modeling is a very broad field. It is possible to approach the classification of tasks solved in it in different ways. In accordance with one of the classifications, this area currently has four main areas:

    modeling dynamic systems,

    discrete-event modeling,

    system dynamics

    agent modeling.

Each of these areas develops its own tools that simplify the development of models and their analysis. These directions (except for agent-based modeling) are based on concepts and paradigms that appeared and were fixed in modeling tool packages several decades ago and have not changed since then.

Simulation of dynamic systems

Aimed at the study of complex objects, the behavior of which is described by systems of algebraic-differential equations. An engineering approach to modeling such objects 40 years ago was the assembly of block diagrams from the decisive blocks of analog computers: integrators, amplifiers and adders, in which currents and voltages represented the variables and parameters of the simulated system. This approach is still the main one in the modeling of dynamic systems, only the decisive blocks are not hardware, but software. It is implemented, for example, in the tool environment Simulink.

Discrete event modeling

In him systems with discrete events are considered. To create a simulation model of such a system, the simulated system is reduced to a flow of applications that are processed by active devices. For example, to model the process of servicing individuals in a bank, individuals are represented as a flow of applications, and bank employees serving them are represented as active devices. Ideology discrete-event simulation was formulated over 40 years ago and implemented in a simulation environment GPSS, which, with some modifications, is still used for training in simulation modeling.

System Dynamics.

System Dynamics- this is a direction in the study of complex systems that studies their behavior in time and depending on the structure of the elements of the system and the interaction between them. Including: cause-and-effect relationships, feedback loops, reaction delays, environmental influences and others. The founder of system dynamics is the American scientist Jay Forrester. J. Forrester applied the principles of feedback existing in automatic control systems to demonstrate that the dynamics of the functioning of complex systems, primarily industrial and social ones, significantly depends on the structure of connections and time delays in decision-making and actions that exist in the system. In 1958, he proposed using flow diagrams for computer simulation of complex systems, reflecting cause-and-effect relationships in a complex system,

At present, system dynamics has become a mature science. The System Dynamics Society (www.systemdynamics.org) is the official forum for systems analysts worldwide. The journal System Dynamics Review is published quarterly, and several international conferences on these issues are convened annually. System dynamics as a methodology and tool for the study of complex economic and social processes is studied in many business schools around the world.

Agent modeling

Agent-based modeling (ABM) is a simulation method that explores the behavior of decentralized agents and how this behavior determines the behavior of the entire system. In contrast to system dynamics, the analyst determines the behavior of agents at the individual level, and global behavior arises as a result of the activity of many agents (bottom-up modeling).

Agent-based modeling includes elements of game theory, complex systems, multi-agent systems and evolutionary programming, Monte Carlo methods, and uses random numbers.

There are many definitions of the concept of an agent. Common to all these definitions is that an agent is some entity that has activity, autonomous behavior, can make decisions in accordance with a certain set of rules, can interact with the environment and other agents, and can also change (evolve). Multi-agent (or simply agent-based) models are used to study decentralized systems, the dynamics of which are not determined by global rules and laws, but, on the contrary, these global rules and laws are the result of the individual activity of group members. The goal of agent-based models is to get an idea about these global rules, the general behavior of the system, based on assumptions about the individual, particular behavior of its individual active objects and the interaction of these objects in the system.

When creating an agent model, the logic of the behavior of agents and their interaction cannot always be expressed by purely graphical means; here it is often necessary to use program code. For agent-based modeling, the Swarm and RePast packages are used. An example of an agent-based model is a city development model.

In the modern world of information technology, a decade is comparable to a century of progress in traditional technologies. But in simulation modeling, the ideas and solutions of the 60s of the last century are applied almost without change. On the basis of these ideas, software tools were developed in the last century, which, with minor changes, are still used today. The development of simulation models using these programs is a very complex and time-consuming task, accessible only to highly qualified specialists and requiring a lot of time. One of the developers of simulation models Robert. Shannon wrote: "the development of even simple models requires 5-6 man-months and costs about 30,000 dollars, and complex ones - two orders of magnitude more." In other words, the complexity of building a complex simulation model using traditional methods is estimated at a hundred man-years.

Simulation modeling by traditional methods is actually used by a narrow circle of professionals who must have not only deep knowledge in the application area for which the model is being built, but also deep knowledge in programming, probability theory and statistics.

In addition, the problems of analyzing modern real systems often require the development of models that do not fit into the framework of a single modeling paradigm. For example, when modeling a system with a predominantly discrete type of events, it may be necessary to introduce variables that describe the continuous characteristics of the environment. Discrete-event systems do not fit into the paradigm of the block model of data flows at all. In a system-dynamic model, it often becomes necessary to take into account discrete events or to model the individual properties of objects from heterogeneous groups. Therefore, the use of the above software does not meet modern requirements.

AnyLogic- next generation simulation tool

AnyLogic is a next generation simulation software developed by the Russian company The AnyLogic Company (formerly XJ Technologies). This tool greatly simplifies the development of models and their analysis.

The AnyLogic package was created using the latest achievements of information technologies: object-oriented approach, elements of the UML standard, Java programming language, etc. The first version of the package (Anylogic 4.0) was released in 2000. Anylogic version 6.9 has now been released.

The package supports all known simulation methods:

    Simulation of dynamic systems

    system dynamics;

    discrete-event modeling;

    agent modeling.

The growth of computer performance and advances in information technology used in AnyLogic made it possible to implement agent-based models containing tens and even hundreds of thousands of active agents.

AnyLogic makes it possible to develop models in the following areas:

    production;

    logistics and supply chains;

    market and competition;

    business processes and service sector;

    healthcare and pharmaceuticals;

    asset and project management;

    telecommunications and information systems;

    social and ecological systems;

    pedestrian dynamics;


Introduction

One of the important features of the ACS is the fundamental impossibility of conducting real experiments before the completion of the project. A possible solution is to use simulation models. However, their development and use are extremely complex, and it is difficult to accurately determine the degree of adequacy of the process being modeled. Therefore, it is important to decide which model to create.

Another important aspect is the use of simulation models during the operation of automated control systems for decision making. These models are created during the design process so that they can be continuously upgraded and adjusted to meet changing user conditions.

The same models can be used to train personnel before putting the automated control system into operation and to conduct business games.

The type of production process model depends to a large extent on whether it is discrete or continuous. In discrete models, variables change discretely at certain moments of simulation time. Time can be taken as continuous or discrete, depending on whether discrete changes in variables can occur at any moment of simulation time or only at certain moments. In continuous models, process variables are continuous, and time can be either continuous or discrete, depending on whether the continuous variables are available at any point in the simulation time or only at certain points. In both cases, the model includes a time setting block that simulates the advancement of model time, usually accelerated relative to real time.

The development of a simulation model and the conduct of simulation experiments in the general case can be represented in the form of several main stages, shown in Fig. one.


A model component that displays a certain element of the system being modeled is described by a set of characteristics of a quantitative or logical type. Depending on the duration of existence, there are conditionally permanent and temporary components. Conditionally constant components exist during the entire time of the experiment with the model, and temporary ones are generated and destroyed during the experiment. The components of the simulation model are divided into classes, within which they have the same set of characteristics, but differ in their values.

The state of a component is determined by the values ​​of its characteristics at a given moment of model time, and the set of values ​​of the characteristics of all components determines the state of the model as a whole.

Changing the values ​​of characteristics, which is the result of displaying in the model the interaction between the elements of the simulated system, leads to a change in the state of the model. The characteristic, the value of which changes during the simulation experiment, is a variable, otherwise it is a parameter. The values ​​of discrete variables do not change during the time interval between two successive special states and change abruptly when passing from one state to another.

The modeling algorithm is a description of the functional interactions between the components of the model. To compile it, the process of functioning of the simulated system is divided into a number of successive events, each of which reflects a change in the state of the system as a result of the interaction of its elements or the impact on the system of the external environment in the form of input signals. Special states occur at certain points in time, which are planned in advance, or determined during the experiment with the model. The occurrence of events in the model is planned by scheduling events according to the times of their occurrence, or an analysis is carried out that reveals the achievement of the set values ​​by the variable characteristics.

For this purpose, it is most convenient to use SIVS. The material and information flows presented on them are easy to analyze to identify special states. Such states are the moments of the end of the processing of the product at each workplace or its transportation reflected on the SIWS; acceptance and issuance for permanent or temporary storage; assembling parts into units, units into a product, etc. For discrete manufacturing, the change in characteristics between special states can also be considered discrete, meaning the transition by a conditional jump from the source material to the workpiece, from the workpiece to the semi-finished product, from the semi-finished product to the part, etc.

Thus, each production operation is considered as an operator that changes the value of the characteristics of the product. For simple models, the sequence of states can be assumed to be deterministic. Better reflect the reality of random sequences that can be formalized as random increments of time with a given distribution, or a random stream of homogeneous events, similar to the flow of requests in the theory of mass service. In a similar way, it is possible to analyze and identify with the help of SIVS special states during the movement and processing of information.

On fig. 2 shows the structure of the generalized simulation model.

When modeling continuous production processes according to the ∆t principle, the time interval sensor provides clock pulses for the simulation algorithm to work. Blocks of random and control actions, as well as initial conditions, are used to manually enter the conditions for conducting the next model experiment.

The complex of simulation functional programs for each simulated object determines the conditional distribution of the probabilities of the object's states by the end of each moment of the DL If one of the possible states is randomly selected, this is done by a functional subroutine; when selected by the experimenter - by the program embedded in the block of control actions, or, if desired, to make this choice manually at each cycle, by entering new initial conditions based on the current state determined using the display block.

The functional program determines the parameters of the process unit at each cycle depending on the given initial conditions - the characteristics of the raw material, the given mode, the properties and operating conditions of the unit. From the model of the technological part, the weight and volume balance ratios can be added programmatically.

Coordination and interaction of all blocks and programs is carried out by the dispatcher program.

When modeling discrete processes, in which the principle of special states is usually used, the structure of the simulation model changes slightly. Instead of a time interval sensor, a block is introduced that determines the presence of a special state and issues a command to move to the next one. The functional program simulates at each transition one operation at each workplace. The characteristics of such operations can be deterministic in time, for example, during the operation of an automatic machine, or random with given distributions. In addition to time, other characteristics can also be imitated - the presence or absence of marriage, assignment to a certain variety or class, etc. Similarly, assembly operations are simulated, with the difference that at each operation it is not the characteristics of the material being processed that change, but instead of some names - parts, assemblies - others appear - assemblies, products - with new characteristics. However, in principle, assembly operations are simulated similarly to processing operations - random or deterministic time costs for the operation, values ​​of physical and production characteristics are determined.

To simulate complex production systems, it is required to create a logical-mathematical model of the system under study, which allows conducting experiments with it on a computer. The model is implemented as a set of programs written in one of the universal high-level programming languages ​​or in a special modeling language. With the development of simulation modeling, systems and languages ​​have appeared that combine the possibilities of simulating both continuous and discrete systems, which makes it possible to model complex systems such as enterprises and industrial associations.

When building a model, first of all, it is necessary to determine its purpose. The model should reflect all the functions of the object being modeled that are essential from the point of view of the purpose of its construction, and at the same time there should not be anything superfluous in it, otherwise it will be too cumbersome and ineffective.

The main purpose of models of enterprises and associations is their study in order to improve the management system or training and advanced training of managerial personnel. In this case, not the production itself is modeled, but the display of the production process in the control system.

An enlarged SIVS is used to build the model. The single thread method identifies those functions and tasks that can result in the desired result in accordance with the purpose of the model. Based on the logical-functional analysis, a block diagram of the model is built. The construction of a block diagram allows you to select a number of independent models that are included in the form of components in the enterprise model. On fig. 3 shows an example of constructing a block diagram for modeling the financial and economic indicators of an enterprise. The model takes into account both external factors - the demand for products, the supply plan, and internal ones - production costs, existing and planned production capabilities.


Some of the models are deterministic - the calculation of the planned total income for the nomenclature and quantities in accordance with the production plan at known prices and packaging costs. The production plan model is an optimization one, tuned to one of the possible criteria - maximizing income or using production capacities; the most complete satisfaction of demand; minimization of losses of supplied materials and components, etc. In turn, the models of demand for products, planned production capacities and the supply plan are probabilistic with different distribution laws.

The relationship between the models, coordination of their work and communication with users is carried out using a special program, which in Fig. 3 is not shown. Effective work of users with the model is achieved in the dialogue mode.

The construction of the block diagram of the model is not formalized and largely depends on the experience and intuition of its developer. It is important to follow the general rule here - it is better to include a larger number of elements in it at the first stages of drawing up a diagram, followed by their gradual reduction, than to start with some seemingly basic blocks, intending to supplement and detail them later.

After constructing the scheme, discussing it with the customer and adjusting it, they proceed to the construction of individual models. The information necessary for this is contained in the system specifications - a list and characteristics of tasks, the initial data and output results necessary for their solution, etc. If system specifications have not been compiled, this information is taken from survey materials, and sometimes additional surveys are resorted to.

The most important conditions for the effective use of models are the verification of their adequacy and the reliability of the initial data. If the verification of adequacy is carried out by known methods, then the reliability has some features. They lie in the fact that in many cases it is better to study the model and work with it not with real data, but with a specially prepared set of them. When preparing a data set, they are guided by the purpose of using the model, highlighting the situation that they want to model and explore.

This process consists of two large stages: model development and analysis of the developed model. Modeling allows you to explore the essence of complex processes and phenomena through experiments not with a real system, but with its model. In the field of creating new systems, modeling is a means of studying important characteristics of a future system at the earliest stages of its development.


Share work on social networks

If this work does not suit you, there is a list of similar works at the bottom of the page. You can also use the search button


Page 8

Simulation

Modeling

Modeling is a generally recognized means of cognition of reality. This process consists of two large stages: model development and analysis of the developed model. Modeling allows you to explore the essence of complex processes and phenomena through experiments not with a real system, but with its model. It is known that in order to make a reasonable decision on the organization of the system operation, it is not necessary to know all the characteristics of the system, it is always sufficient to analyze its simplified, approximate representation.

In the field of creating new systems, modeling is a means of studying important characteristics of a future system at the earliest stages of its development. With the help of simulation, it is possible to explore the bottlenecks of a future system, evaluate performance, cost, throughput all its main characteristics even before the system is created. With the help of models, optimal operational plans and schedules for the functioning of existing complex systems are developed. In organizational systems, simulation modeling becomes the main tool for comparing various options for management decisions and finding the most effective of them both for decisions within a workshop, organization, firm, and at the macroeconomic level.

Models of complex systems are built in the form of programs that run on a computer. Computer modeling has been around for almost 50 years, it has emerged with the advent of the first computers. Since then, two overlapping areas of computer modeling have developed, which can be characterized as mathematical modeling and simulation modeling.

Math modelingis connected mainly with the development of mathematical models of physical phenomena, with the creation and justification of numerical methods. There is an academic interpretation of modeling as a field of computational mathematics, which is traditional for the activity of applied mathematicians. In Russia, a strong school has developed in this area: the Research Institute of Mathematical Modeling of the Russian Academy of Sciences the parent organization, the Scientific Council of the Russian Academy of Sciences on the problem of "Mathematical Modeling", the journal "Mathematical Modeling" is published ( www.imamod.ru).

Simulationis the development and execution on a computer of a software system that reflects the behavior and structure of the modeled object. A computer experiment with a model consists in running a given program on a computer with different values ​​of parameters (initial data) and analyzing the results of these runs.

Problems in the development of simulation models

Simulation modeling is a very broad field. It is possible to approach the classification of tasks solved in it in different ways. In accordance with one of the classifications, this area currently has four main areas:

  1. modeling dynamic systems,
  2. discrete-event modeling,
  3. system dynamics
  4. agent modeling.

Each of these areas develops its own tools that simplify the development of models and their analysis. These directions (except for agent-based modeling) are based on concepts and paradigms that appeared and were fixed in modeling tool packages several decades ago and have not changed since then.

Aimed at the study of complex objects, the behavior of which is described by systems of algebraic-differential equations. An engineering approach to modeling such objects 40 years ago was the assembly of block diagrams from the decisive blocks of analog computers: integrators, amplifiers and adders, in which currents and voltages represented the variables and parameters of the simulated system. This approach is still the main one in the modeling of dynamic systems, only the decisive blocks are not hardware, but software. It is implemented, for example, in the tool environment Simulink.

Discrete event modeling

In him systems with discrete events are considered. To create a simulation model of such a system, the simulated system is reduced to a flow of applications that are processed by active devices. For example, to model the process of servicing individuals in a bank, individuals are represented as a flow of applications, and bank employees serving them are represented as active devices. Ideologydiscrete-eventsimulation was formulated over 40 years ago and implemented in a simulation environment GPSS , which, with some modifications, is still used for training in simulation modeling.

System Dynamics.

System Dynamicsthis is a direction in the study of complex systems that investigates their behavior in time and depending on the structure of the elements of the system and the interaction between them. Including: causal relationships, loops feedback , reaction delays, environmental influences and others. The founder of system dynamics is the American scientist Jay Forrester. J. Forrester applied the principles of feedback existing in automatic control systems to demonstrate that the dynamics of the functioning of complex systems, primarily industrial and social ones, significantly depends on the structure of connections and time delays in decision-making and actions that exist in the system. In 1958, he proposed using flow diagrams for computer simulation of complex systems, reflecting cause-and-effect relationships in a complex system,

At present, system dynamics has become a mature science. Society of System Dynamics (The-System Dynamics Society, www.systemdynamics.org ) is the official forum for systems analysts worldwide. The journal System Dynamics Review is published quarterly, and several international conferences on these issues are convened annually. System dynamics as a methodology and tool for the study of complex economic and social processes is studied in many business schools around the world.

Agent based modeling

Agent-based model (ABM) methodsimulation modeling, which studies the behavior of decentralized agents and how such behavior determines the behavior of the entire system. Unlikesystem dynamicsthe analyst determines the behavior of agents at the individual level, and the global behavior arises as a result of the activity of many agents (bottom-up modeling).

Agent-based modeling includes elements of game theory, complex systems, multi-agent systems and evolutionary programming, Monte Carlo methods, and uses random numbers.

There are many definitions of the concept of an agent. Common to all these definitions is that an agent is some entity that has activity, autonomous behavior, can make decisions in accordance with a certain set of rules, can interact with the environment and other agents, and can also change (evolve). Multi-agent (or simply agent-based) models are used to study decentralized systems, the dynamics of which are not determined by global rules and laws, but, on the contrary, these global rules and laws are the result of the individual activity of group members. The goal of agent models is to get an idea about these global rules, the general behavior of the system, based on assumptions about the individual, particular behavior of its individual active objects and the interaction of these objects in the system.

When creating an agent model, the logic of the behavior of agents and their interaction cannot always be expressed by purely graphical means; here it is often necessary to use program code. For agent-based modeling, the Swarm and RePast packages are used. An example of an agent-based model is a city development model.

In the modern world of information technology, a decade is comparable to a century of progress in traditional technologies. But in simulation modeling, the ideas and solutions of the 60s of the last century are applied almost without change. On the basis of these ideas, software tools were developed in the last century, which, with minor changes, are still used today. The development of simulation models using these programs is a very complex and time-consuming task, accessible only to highly qualified specialists and requiring a lot of time. One of the developers of simulation models Robert. Shannon wrote: "the development of even simple models requires 56 man-months and costs about 30,000 dollars, and complex ones are two orders of magnitude more." In other words, the complexity of building a complex simulation model using traditional methods is estimated at a hundred man-years.

Simulation modeling by traditional methods is actually used by a narrow circle of professionals who must have not only deep knowledge in the application area for which the model is being built, but also deep knowledge in programming, probability theory and statistics.

In addition, the problems of analyzing modern real systems often require the development of models that do not fit into the framework of a single modeling paradigm. For example, when modeling a system with a predominantly discrete type of events, it may be necessary to introduce variables that describe the continuous characteristics of the environment. Discrete-event systems do not fit into the paradigm of the block model of data flows at all. In a system-dynamic model, it often becomes necessary to take into account discrete events or to model the individual properties of objects from heterogeneous groups. Therefore, the use of the above software does not meet modern requirements.

AnyLogic next generation simulation tool

AnyLogic- software for simulation modelingnew generation developed Russian by The AnyLogic Company (formerly XJ Technologies, - English XJ Technologies). This tool greatly simplifies the development of models and their analysis.

The AnyLogic package was created using the latest achievements of information technologies: object-oriented approach, elements of the standard UML, Java programming language, etc. The first version of the package (Anylogic 4.0) was released in 2000. Anylogic version 6.9 has now been released.

The package supports all known simulation methods:

  • Simulation of dynamic systems
  • system dynamics;
  • discrete event simulation;
  • agent modeling.

The growth of computer performance and advances in information technology used in AnyLogic made it possible to implement agent-based models containing tens and even hundreds of thousands of active agents.

AnyLogic makes it possible to develop models in the following areas:

  • production;
  • logistics and supply chains;
  • market and competition;
  • business processes and service sector;
  • healthcare and pharmaceuticals;
  • asset and project management;
  • telecommunications and information systems;
  • social and ecological systems;
  • pedestrian dynamics;
  • defense.

Models. The science and art of modeling

Modeling consists of three stages:

  1. analysis of a real phenomenon and the construction of its simplified model,
  2. analysis of the constructed model by formal means (for example, using a computer),
  3. interpretation of the results obtained on the model in terms of a real phenomenon.

The first and third stages cannot be formalized, their implementation requires intuition, creative imagination and understanding of the essence of the phenomenon being studied, that is, the qualities inherent in artists.

1.1. Process and system models

The modern concept of scientific research is that real objects are replaced by their simplified representations, abstractions, chosen in such a way that they reflect the essence of the phenomenon, those properties of the original objects that are essential for solving the problem. The object constructed as a result of simplification is called a model.

Model is a simplified analogue of a real object or phenomenon, representing the laws of behavior of the parts included in the object and their connection. Building a model and analyzing it is called modeling. In scientific work, modeling is one of the main elements of scientific knowledge.

In practice, the goal of building a model is to solve some problem of the real world, which is expensive or impossible to solve by experimenting with a real object.

Typically, the initial problem is to analyze an existing or proposed facility in order to make a decision on its management. For example, such an object can be a geographically distributed system of suppliers of raw materials, factories, warehouses for finished products and their transport links. Another example is a port for unloading tankers with several terminals, oil loading tanks, a pool of oil tankers for oil export.

When building a model as a substitute for a real system, those aspects that are essential for solving the problem are singled out, and those aspects that complicate the problem, make the analysis very difficult or even impossible are ignored. The problem of analysis is always posed in the world of real objects. In the port example, this may be the problem of optimal use of existing resources (organization of the movement of tankers in the port waters and the use of railway oil tankers) to organize the pumping of oil from tankers and its shipment to consumers.

It is not economically feasible to make resource management decisions by rebuilding a real system. Another way to solve this problem is to formulate this problem for a model that will be composed of a port layout, oil tank volumes, unloading rates, average tanker arrival rate, average tanker turnaround time, etc.

Real objects and situations are usually complex, and models are needed in order to limit this complexity, make it possible to understand the situation, understand the trends in the situation change (predict the future behavior of the analyzed system), make a decision to change the future behavior of the system and check it. If the model reflects the properties of the system that are essential for solving a specific problem, then the analysis of the model allows one to derive characteristics that will explain the known and predict new properties of the real system under study without experimenting with the system itself. Simulation has produced many impressive results in science, technology, and manufacturing.

1.2. Modeling for management decision support

Making intelligent decisions on the rational organization and management of modern systems is becoming impossible on the basis of ordinary common sense or intuition due to the increasing complexity of systems. Back in 1969, the well-known scientist, the founder of system dynamics, Jay Forrester, noted that, based on intuition, wrong decisions are more often chosen to control complex systems than correct ones, and this happens because in a complex system, the cause-and-effect relationships of its parameters are not simple and clear. There are many examples in the literature showing that people are unable to predict the outcome of their actions in complex systems. An example is the cascading development of accidents in the power systems of the Northwest USA on August 16, 2003 and in the Moscow region on May 25, 2005, which led to billions in losses and affected millions of people.

Increasing productivity and reliability, reducing costs and risks, assessing the sensitivity of the system to changes in parameters, optimizing the structure all these problems arise both in the operation of existing and in the design of new technical and organizational systems. The difficulty of understanding cause-and-effect relationships in a complex system leads to inefficient organization of systems, errors in their design, and high costs for eliminating errors. Today, modeling is becoming the only practical effective means of finding ways of optimal (or acceptable) solutions to problems in complex systems, a means of supporting responsible decision-making.

Modeling is especially important precisely when the system consists of many parallel functioning in time and interacting subsystems. Such systems are most often encountered in life. Everyone thinks sequentially, even a very smart person can usually only think about one thing at a time. Therefore, understanding the simultaneous development in time of many processes influencing each other is a difficult task for a person. The simulation model helps to understand complex systems, predict their behavior and the development of processes in various situations, and, finally, makes it possible to change the parameters and even the structure of the model in order to direct these processes in the desired direction. Models make it possible to evaluate the effect of planned changes, to perform a comparative analysis of the quality of possible solutions. Such modeling can be carried out in real time, which makes it possible to use its results in various technologies (from operational management to staff training).

1.3. Abstraction levels and model adequacy

The main paradox of modeling is that a simplified model of the system is studied, and the findings are applied to the original real system with all its complexities. Is such a change legal?

When studying natural objects, the researcher abstracts from insignificant, random details, which not only complicate, but can also obscure the phenomenon itself. For example, when analyzing an oil port, it is convenient to speak of tankers as tanks from which a certain volume of oil is pumped at a certain speed, and not as ships with cabins, a certain crew size, etc. Since all abstractions are incomplete and inaccurate, we can speak only about the approximate correspondence of the reality of the results obtained by the study of models. The correspondence of a model to a modeled object or phenomenon when solving a specific problem is called adequacy. Adequacy determines the possibility of using approximate results obtained on the model to solve a practical problem in the real world. Often the adequacy of the model is determined by a number of conditions and restrictions on the entities of the real world, and in order to use the results of the analysis obtained on the model, it is necessary to carefully check (or even ensure) these restrictions and conditions during the functioning of the real system (for example, to make processes in society manageable). creates a vertical of power). Since the adequacy of a model is determined only by the possibility of using the model to solve a specific problem, an adequate model does not necessarily have to thoroughly reflect the processes occurring in the modeled system (or, what is the same, the model does not necessarily have to display a "physically correct" picture of the world).

On fig. Figure 1.3 provides a scale of levels of abstraction and examples of modeling problems in specific domains roughly placed on this scale. On the lower level Abstraction solves problems in which individual physical objects are important, their individual behavior and physical connections, exact dimensions, distances, times. Examples of models related to this level of abstraction are models of the movement of pedestrians, models of the movement of mechanical systems and their control systems. On the middle level problems of mass production and service are usually solved, here individual objects are presented, but their physical dimensions are neglected; the values ​​of velocities and times are averaged or their stochastic values ​​are used. Examples of models at this level of abstraction are queuing models, traffic flow models, resource management models. High level abstraction is used in the development of models of complex systems in which the researcher abstracts from individual objects and their behavior, considering only sets of objects and their integral, aggregated characteristics, trends in values, and the impact on the dynamics of the causal feedback system. Models of the market and population dynamics, ecological models and classical models of the spread of epidemics are built on this level of abstraction.

For each goal of research, even the same object of the real world, its own model must be built that corresponds to this goal. To solve a specific problem, a model that adequately reflects the structure of the object and the laws by which it functions at the chosen level of abstraction will be convenient. For example, it is obvious that the planets are not material points, but with such an abstraction, within the framework of the Newtonian theory of gravity, it is possible to accurately predict the characteristics of the motion of the planets. However, this model requires refinement to calculate the trajectories of satellites and missiles. Detailed maps, distances and times are needed to solve the problem of optimal use of transport. The fact that the Earth appears flat on the map is not essential to solving transportation problems.

Although there are well-established approaches to the choice of abstraction level and reasonable explanations for this choice for building sufficiently adequate models for solving many types of problems, there is still no general methodology for building a model with the required level of adequacy. As a recommendation for choosing the level of abstraction, we can only say the following. It is necessary to start with the simplest model, reflecting only the most significant (from the point of view of the researcher) aspects of the system being modeled. After revealing the inadequacy of the model, i.e., its inapplicability to solving the problem posed, individual substructures and processes of the model should be implemented in more detail, at a lower level of abstraction. One can be sure that the development of a sequence of more and more complex models can lead to an acceptable adequacy in solving any particular problem.

about the object being modeled. For example, no model can represent all the characteristics of the planet Earth. On the other hand, it is also obvious that any specific problem will not require knowledge of all these characteristics for its solution.

Of course, it is possible to construct models that abstract from essential aspects of reality. Such models will be inadequate and the conclusions drawn from these models will be incorrect.

Obviously, no model ever provides complete knowledge.

1.4. Modeling as a science and art

Modeling as a type of professional activity is associated with the analysis of real systems and processes of a very different nature. When developing a model in a particular area, a modeling specialist must link the vocabulary of this area with modeling terminology, identify subsystems and their relationships in a real system, determine the parameters of subsystems and their dependencies, and choose the appropriate level of abstraction when building a model of each subsystem. He must correctly select the appropriate mathematical apparatus and use it correctly, be able to implement the elements of the model, their connections and logical relationships by suitable means in the modeling environment, understand the limitations in interpreting the results of modeling, and master the methods of verification and calibration of models. All this makes modeling a serious scientific activity.

But modeling is also an art, and much more so than, for example, programming is. There is no universal general method for constructing adequate models. Although for many physical phenomena adequate models have long been developed that are sufficient to solve a wide class of problems in the analysis of dynamic systems (for example, the relationship of speed, distance and time in the analysis of the free movement of objects in space), however, for industrial, social, biological systems, as well as many technical systems, when constructing a model, you need to show ingenuity, knowledge of mathematics, understanding of the processes in the system, the essence of abstraction, etc. Model building creative creative activity is akin to art, it requires intuition, deep penetration into the nature of the phenomenon and the problem being solved.

Types of models

Models can be classified according to various criteria: static and dynamic, continuous and discrete, deterministic and stochastic, analytical and simulation, etc.

2.1. Static and dynamic models

Static models operate with characteristics and objects that do not change over time. AT dynamic models, which are usually more complex, the change in parameters over time is significant. The model of an oil loading port is dynamic: it simulates the behavior of individual objects of the system in time: the movement of tankers in the port water area, the movement of tanks on the berth, the level of oil in storage tanks.

Static models usually deal with steady processes, balance-type equations, with limiting stationary characteristics. Simulation of dynamic systems consists in simulating the rules for the transition of a system from one state to another over time. The state of the system is understood as a set of values ​​of essential parameters and variables of the system. A change in the state of a system over time in dynamic systems is a change in the values ​​of system variables in accordance with the laws that determine the relationships of variables and their dependence on each other over time.

AnyLogic package supports the development and analysis of dynamic models. This tool contains tools for the analytical setting of equations that describe the change in variables over time, makes it possible to take into account model time and contains tools for its advancement, it also has a language for expressing logic and describing the progress of systems under the influence of any type of event, in particular, the exhaustion of a timeout given time interval.

2.2. Continuous, discrete and hybrid models

Real physical objects operate in continuous time, and in order to study many problems of physical systems, their models must be continuous . The state of such models changes continuously in time. These are models of movement in real coordinates, models of chemical production, etc. The processes of movement of objects and the processes of pumping oil in the model of an oil loading port are continuous.

At a higher level of abstraction, for many systems, models are adequate in which the transitions of the system from one state to another can be considered instantaneous, occurring at discrete times. Such systems are called discrete . An example of an instant transition is a change in the number of bank customers or the number of shoppers in a store. Obviously, discrete systems are an abstraction; processes in nature do not occur instantly. In a real store, a real customer enters for some time, he can get stuck in the door, hesitating whether to enter or not, and there is always a continuous sequence of his position during the passage of the store doors. However, when building models In order to estimate, for example, the average length of the queue at the checkout for a given flow of customers and known characteristics of customer service by the cashier, one can abstract from these minor phenomena and consider the system to be discrete: the results of the analysis of the resulting discrete model are usually accurate enough to make sound management decisions for such systems. In the model of an oil loading port, for example, transitions of traffic lights at the entrance to the harbor from the state "prohibited" to the state "allowed" can be considered instantaneous. At an even higher level of abstraction, systems analysis also uses continuous models, which is typical of system dynamics. The flow of cars on the freeways, consumer demand, the spread of infection among the population is often conveniently described using interdependencies of continuous variables that describe quantities, the intensity of change in these quantities, the degree of influence of some quantities on others. The ratios of such variables are usually expressed by differential equations.

In many cases, both types of processes are present in real systems, and if both of them are essential for the analysis of the system, then in the model some processes should be represented as continuous, others as discrete. Such models with a mixed type of processes are called hybrid. For example, if when analyzing the functioning of a store, not only the number of customers is important, but also their spatial position and movement of customers, then the model in this case should represent a mixture of continuous and discrete processes, i.e., this is a hybrid model. Another example is the model of a large bank. The flow of investments, obtaining and issuing loans in the normal mode is described by a set of differential and algebraic equations, i.e. the model is continuous. However, there are situations, such as a default (discrete event), as a result of which a panic arises among the population, and from that moment on, the system is described by a completely different continuous model. The model of this process at the level of abstraction at which we want to adequately describe both modes of operation of the bank and the transition between modes should include both a description of continuous processes and discrete events, as well as their interdependencies.

AnyLogic package supports the description of both continuous and discrete processes, as well as build hybrid models. AnyLogic allows you to implement the model, in fact, at any level of abstraction (detail). Running hybrid models in AnyLogic based on modern results of the theory of hybrid dynamical systems.

2.3. Deterministic and stochastic models

When modeling complex real systems, a researcher often encounters situations in which random influences play a significant role. Stochastic models, as opposed todeterministictake into account the probabilistic nature of the parameters of the modeled object. For example, in the model of an oil loading port, the exact moments of arrival of tankers at the port cannot be determined. These moments are random variables, because this model is stochastic: the values ​​of the variables of the model, which depend on the realizations of random variables, become random variables themselves. The analysis of such models is performed on a computer based on the statistics collected in the course of simulation experiments during multiple runs of the model for various values ​​of initial random variables selected in accordance with their statistical characteristics.

AnyLogic contains tools for generating random variables and statistical processing of the results of computer experiments. AnyLogic includes random number generators for a variety of distributions. The model developer can also use his own random variable generator, built in accordance with the observational data on the real system.

2.4. Analytical and simulation models

The use of abstractions in solving problems with the help of models often consists in the application of one or another mathematical apparatus. The simplest mathematical models are algebraic relations, and the analysis of the model is often reduced to the analytical solution of these equations. Some dynamical systems can be described in a closed form, for example, in the form of systems of linear differential and algebraic equations, and the solution can be obtained analytically. This kind of modeling is called analytical. In analytical modeling, the processes of functioning of the system under study are written in the form of algebraic, integral, differential equations and logical relationships, and in some cases, the analysis of these relationships can be performed using analytical transformations. A modern means of supporting analytical modeling are spreadsheets of the type MS Excel.

However, the use of purely analytical methods in modeling real systems faces serious difficulties: classical mathematical models that allow an analytical solution are in most cases inapplicable to real problems. For example, in the model of an oil loading port, it is impossible to build an analytical formula for estimating the utilization rate of equipment, if only because there are stochastic processes in the system, there are priorities for processing applications for the use of resources, internal parallelism in processing subsystems, work interruptions, etc. Even if the analytical the model can be constructed, for real systems they are often essentially nonlinear, and purely mathematical relationships in them are usually supplemented by logical-semantic operations, and there is no analytical solution for them. Therefore, when analyzing systems, there is often a choice between a model that is a realistic analogue of a real situation, but not analytically solvable, and a simpler, but inadequate model, the mathematical analysis of which is possible.

With imitation In modeling, the structure of the simulated system its subsystems and connections is directly represented by the structure of the model, and the process of functioning of the subsystems, expressed in the form of rules and equations relating variables, is simulated on a computer. AnyLogic is the environment simulation modeling. Various means of specification and analysis of results available in AnyLogic , allow you to build models that simulate the operation of the simulated system with virtually any desired degree of adequacy, and perform model analysis on a computer without analytical transformations.

Simulation

3.1. What is simulation modeling

Simulation — this is the development and execution on a computer of a software system that reflects the structure and functioning (behavior) of a simulated object or phenomenon in time. Such a software system is called a simulation model of this object or phenomenon. The objects and entities of the simulation model represent the objects and entities of the real world, and the links of the structural units of the modeling object are reflected in the interface links of the corresponding model objects. In this way,simulation model — it is a simplified version of a real system, either existing or one that is supposed to be created in the future. The simulation model is usually represented by a computer program, the execution of the program can be considered as an imitation of the behavior of the original system in time.

In Russian literature, the term"modeling" corresponds to the American"modeling" and making sense model and its analysis, and under the term"model" refers to an object of any nature that simply represents the system under study. The words"simulation modeling" and "computer (computer) experiment" withcorrespond to the English term" simulation ". These terms imply the development of a model exactly as a computer program and the execution of this program on a computer.

So, simulation modelingis the activity of developing software models of real or hypothetical systems, executing these programs on a computer and analyzing the results of computer experiments to study the behavior of models. Simulation modeling has significant advantages over analytical modeling when:

  • the relationships between the variables in the model are non-linear and therefore analytical models are difficult or impossible to construct;
  • the model contains stochastic components;
  • to understand the behavior of the system, visualization of the dynamics of the processes occurring in it is required;
  • the model contains many parallel functioning interacting components.

In many cases, simulation is the only way to understand and analyze the behavior of a complex system.

Other related works that may interest you.vshm>

9700. Simulation 228.71KB
Simulation modeling is a research method in which the system under study is replaced by a model and experiments are carried out with it in order to obtain information about this system. A simulation model is a logical and mathematical description of an object that can be used for experimentation on a computer in order to design, analyze and evaluate the functioning of an object.
2726. Simulation modeling of pedestrian flows based on the model of social forces 249.75KB
It is impossible to effectively plan a transport hub or mass event without knowledge of pedestrian behavior. Pedestrian behavior is a complex phenomenon, so simulations are needed when planning high-density pedestrian sites with limited space to optimize the flow of pedestrians and ensure that panic avoids crowding. Over the past forty years, several models have been proposed to model pedestrian flows.
8080. Ternary modeling 18.3KB
Ternary Simulation Ternary simulation is widely used to detect signal races that may occur in a circuit. Modeling of the input set occurs in 2 stages. Example: to carry out ternary logical modeling by the E method. Ternary modeling with increasing uncertainty In this algorithm, for each lta, the maximum and minimum delay values ​​t are indicated.
1927. Systems Modeling 21.47KB
In the student computer room there are two minicomputers and one data preparation device (PDD). Students come with an interval of 8 ± 2 minutes and a third of them want to use the UPD and a computer, and the rest only a computer. The allowable queue in the engine room is four people, including the one working at the UPD.
1974. SURFACE MODELING 233.46KB
Surface and digital model The basis for the representation of data on the earth's surface are digital elevation models. Surfaces are objects that are most often represented by Z height values ​​distributed over an area defined by X and Y coordinates. DEM is a means of digitally representing the earth's surface topography. collection of images by stereopairs is laborious and requires specific software, but at the same time it allows to provide the desired degree of detail in the representation of the earth's surface.
2156. lighting modeling 125.57KB
For an observer located at any point, the brightness of the point that he sees will be expressed as follows. where V is the brightness for h w; E albedo reflectance of the surface. Compared to the Lambert method, this model reduces the brightness of the points we look at at an angle of 90 and increases the brightness of those points that we look at casually. Applying lighting laws when synthesizing an image object. 7 The brightness is calculated at one point, for example, at the center of gravity for convex polygons of the Lambert face and ...
6206. Modeling in scientific research 15.78KB
Great success and recognition in almost all branches of modern science brought the modeling method of the twentieth century. However, modeling methodology has been developed independently by individual sciences for a long time. Only gradually the role of modeling as a universal method of scientific knowledge began to be realized.
16646. Modeling addictive behavior 164KB
Modeling addictive behavior. As a result of the analysis of modern literature on this issue, a model of rational addictive behavior of individuals was created, taking into account the hyperbolic discounting of future instant utilities, which most adequately reflects the psychological aspects of the behavior of individuals. Characteristic properties of the utility function The main properties of addictive behavior are considered to be: gradual adaptation tolerance the impossibility of canceling leaving the positive effect of habit strengthening which ...
4640. SIMULATION OF DIGITAL ASSEMBLY 568.49KB
On the crystals of modern LSI, you can put a lot of functional blocks of old computers, along with chains of interconnections. The development and testing of such crystals is possible only by mathematical modeling methods using powerful computers.
3708. Modeling with Splines 465.08KB
They also determine the degree of curvature of the spline segments adjacent to these vertices. Segment is the part of the spline line between two adjacent vertices. Four types of vertices are used in 3ds Mx: Corner Corner vertex adjacent segments to which have no curvature; Smooth Smoothed vertex through which the spline curve is drawn with a bend and has the same curvature of the segments on both sides of it; Bezier A bezier vertex similar to a smooth one, but allowing you to control the curvature of the spline segments on either side of the vertex....