{'fraction_non_alphanumeric': 0.02305123401482447, 'fraction_numerical': 0.003095218701637208, 'mean_word_length': 4.827848101265823, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
CONSTRUCTION OF THE EXPERT SYSTEM OF GEO-SPATIAL ANALYSIS THAT EMPLOYS SCENARIOS FOR THE AUTOMATED DATA GENERATION FOR A DIGITAL MAP

Modern approaches that are used for the automated construction of vector layers at digital maps are inextricably linked to geoinformation technologies. Specifically, many current geoinformation systems (GIS) contain the sets of tools, procedures, and libraries of standard algorithms. That makes it possible to perform a geospatial analysis of data, to construct SQL queries and spatial samplings based on the values for attributes, to edit data under automated or interactive modes [1]. There has been an unresolved issue on training such specialist who, in addition to a thorough knowledge in the subject area of modeling, must possess basic skills of using GIS, have the skills to work with high-level programming languages and build appropriate algorithms. In addition, a solution constructed in the form of a software tool for certain input data and initial conditions, may prove unsuitable for another type of terrain, different imaging equipment, and for constraints that arise when a model changes. The way to resolve this situation would be to construct typical scenarios for model execution. Such scripts must be edited easily and adapted to the use of an alternative electronic terrain map. The result of scenario execution is a set of data ‒ layers on a digital map that are derived based on certain input attributes and problem-solving algorithms drawn up by an expert. CONSTRUCTION OF THE EXPERT SYSTEM OF GEO-SPATIAL ANALYSIS THAT EMPLOYS SCENARIOS FOR THE AUTOMATED DATA GENERATION FOR A DIGITAL MAP


Introduction
Modern approaches that are used for the automated construction of vector layers at digital maps are inextricably linked to geoinformation technologies. Specifically, many current geoinformation systems (GIS) contain the sets of tools, procedures, and libraries of standard algorithms. That makes it possible to perform a geospatial analysis of data, to construct SQL queries and spatial samplings based on the values for attributes, to edit data under automated or interactive modes [1].
There has been an unresolved issue on training such specialist who, in addition to a thorough knowledge in the subject area of modeling, must possess basic skills of using GIS, have the skills to work with high-level programming languages and build appropriate algorithms. In addition, a solution constructed in the form of a software tool for certain input data and initial conditions, may prove unsuitable for another type of terrain, different imaging equipment, and for constraints that arise when a model changes.
The way to resolve this situation would be to construct typical scenarios for model execution. Such scripts must be edited easily and adapted to the use of an alternative electronic terrain map. The result of scenario execution is a set of datalayers on a digital map that are derived based on certain input attributes and problem-solving algorithms drawn up by an expert.
When performing aerial photography of an urban area, that would make it possible to simulate at a digital map the decoding tasks, the processes for constructing urban infrastructure and compiling a land cadaster, to design routes to fly over land plots, etc. [2]. Building such scenarios should be closely linked to geoinformation technologies in order to be implemented as one of the GIS modules.

Literature review and problem statement
Paper [3] outlines approaches to building, as well as describes the implementation, of an information system based on ontological principles. A set of tools underlying such a system enables the work with layers of an electronic map and contains a query building component. In addition, the authors propose a script builder, components of logical inference that use the principles of description logic and a spatial aspect of the digital map data.
By using an example of typical tasks at a land surveying office, the authors describe the principles of script construction. The thematic aspect of a map is set by the user in the form of a set of semantics in describing the objects. For example: "greening", "meadow", "public park", "lake". The spatial aspect contains the spatial attributes of the map's objects (the area of the park or lake, the type of concrete pavement). In addition, the authors introduce spatial relations among the maps' objects, which are expressed by qualitative (contains, partially overlaps) and quantitative attributes (length, area). Then, for example, a script fragment that implements the description "public park containing a lake" could be recorded to the information system as a predicate: public_ park_containing _a_lake≡ ≡park_ public_∃contains.lake.
The downside of this approach is the complexity and low readability of the scenario, even when describing very simple relationships among objects.
Study [4] proposed a simulation model for changing the boundaries of urban areas based on the theory of cellular automata and fuzzy sets. The model is integrated into the geoinformation system and was tested on comparative data for 2003 and 2013 at the Yemeni city of Ibb. The validation involved a pixel-to-pixel comparison of modelling results and actual data in the map. The research procedure included three phases: -preparation of information based on land-use data; -construction of map layers using a simulation model; -representation of simulation results on a digital map. Changing the boundaries for four types of territory was modeled: -land with urban facilities; -land with no urban facilities (agricultural and park areas); -land with large indicators of slope in the terrain, at which construction is not possible; -reserved land (used for special purpose). Additionally, the model takes into consideration the socio-economic factors affecting the changing boundaries of the urban area. These include the presence of primary and secondary roads, population density for different areas of the city, its distance from the central part, existence of commercial centers, etc. The preparation of such data on the map was performed using the tools for building buffer zones. It should be noted that the range of tasks that could be solved by modelling the processes of changes to the boundaries of urban territories testifies to a rather narrow specialization of the model, as well as the difficulties to extend it.
Paper [5] considers a system based on GIS technology and designed to support decision making when modernizing apartment buildings. The decision taken is aimed at saving energy and reducing CO 2 emissions. Work on modernization may involve replacement of windows in residential buildings, covering the walls of buildings, replacement of heating systems, etc. A model is built that makes it possible to select, when specifying a building on the map of a city, the optimal scenario for modernization. The model employs WEB technologies and the client-server technology, making it possible for the user to obtain information on a particular building from the database on urban facilities. In addition, they use maps of temperature fields in the specified region acquired from a global meteorological database. The decision support system possesses the important propertyit has an organized distributed WEB access to the model's data.
Scenario-based approaches are applied in many known software suites. For example, the functions and algorithms for GIS analysis are performed by using a visual Model Maker. Another example is the Spatial Modeler Scripting Language (SML) in the system of image processing and remote sensing data ERDAS Imagine ® [6].
A scenario in these systems refers not only to the verbal description of a certain sequence of actions, aimed at solving a task. A scenario implies the formalization of a problem-solving algorithm and its implementation through a set of simple user-friendly operations. The result of the implementation of a SML-script is that the user can, without writing a programming code, process aerial photographs and images, perform a geospatial analysis of terrain. In addition, there is a possibility to choose, based on such an analysis, the optimal routes of movement and the location of objects, to construct new layers on a digital map in an automated mode.
Here is an example of the model constructed using Model Maker. By using visual programming techniques, the original bitmap image was treated with a filter to select the edges with a dimensionality of the kernel of 3×3 [7]. The result is the binary (black and white) outline raster (Fig. 1).
Note that the Model Maker focuses on processing raster images and remote sensing data.
A similar approach to scripting is offered by the company ESRI, a leading global provider of geo-information technologies and software products, grouped under the heading ArcGIS ® . Since the early versions of this system, the toolsets of geoprocessing work together with the vi-sual editor ModelBuilder. The constructed model could be exported to a script [8]. The format of the script may correspond to one of the three programming languages -Python, Jscript, or VBScript. It is possible to publish a script constructed using ModelBuilder by sending to the ArcGIS Server ® . Following the publication, any user with appropriate access rights to the server could connect to the constructed service and use it. The basic features from ModelBuilder are used to develop the specialized software. As an example, we consider the system for mapping the inundation zones FloodTools, constructed for the United States air force base at Langley [9]. This base is located at the territory constantly exposed to hurricanes. Prediction and analysis of the effects of these natural phenomena is an important element in the combat readiness of the air fleet.
The FloodTools system was designed in the form of a WEB application and makes it possible for the user to choose scenarios when modeling floodplains. Based on the results from running a script, one could plan the activities of rescue teams, flight and command staff at the base. Ten scenarios were constructed for different options of hurricane propagation within the model. The system proved its effectiveness when analyzing and preventing the consequences of Hurricane Ophelia.
Specialized scripts and simulation principles are widely used in the military sphere. Another example is a tool constructed by using ArcGIS ® at the National Defence University War Game & Simulation Center in Poland [9]. Employing it helps train officers at the tactical and operational level, construct the scenarios, simulate a tactical situation at a battlefield.
The review of the examined solutions allows us to identify a series of issues related to geoprocessing, automated generation of data for a digital map, and their application in simulation systems.
The first issue is the extensibility of a simulation model constructed using the selected system. Often, labor costs are associated with building a model in the assigned subject area. As a result, the user is provided with a set of strictly-defined activities and functions that simulate the aspects of a certain specialized task [4,5,9]. Changes in the input parameters for the model require modification of the user interface. A set of criteria to compare systems based on this point could include: -a possibility of scalability of generated models (calculations for an urban district, city, region); -possibilities to change the set of procedures used in geoprocessing, when it is necessary to carry out additional analysis of the model's data; -a possibility to construct additional map layers when one changes the initial conditions of the model (for example, simulation of urban traffic in the summer and winter seasons).
The second issue is the complexity of representation of scripts for processing and construction of geographic data to the end user [3,6,8]. Comparison criteria may be: the presence or absence of the feasibility of scripts construction in the system; the presence in a scenario text of predicates and operators, requiring specialized expertise in the fields of mathematical logic and Boolean algebra. Many functions that are embedded into a script are grouped and are polymorphic [6,8]. That is, while bearing the same name, such functions are redefined and implemented differently depending on the type and amount of input arguments. Based on this fact, one more comparison criterion is suggested -the intuitive ease of reading a script, expressed by the absence or minimal number of such functions.
The most appropriate solution would be to construct a system where the user is isolated from the process of manually editing the script. Such a concept implies extensive use of visual editing tools, as well as scripting.
There is an issue related to the representation of simulation results in the examined systems. When using GIS technologies, the output data formats are standardized and well documented. However, the use of modularity when building scenarios raises a series of issues. How, for example, should one submit the data that are generated in the same module to the input of another if the structure of attributes for these data is determined only during the execution of the model. An important criterion for comparing systems is a built-in code tracer (debugger). That makes it possible to monitor the process of compiling and modifying data in the process of design and implementation of the model.

The aim and objectives of the study
The aim of this study is to devise principles for the simplified work with geospatial data, for the user-friendly construction of layers for a digital map, to flexibly build the scripts for model execution at a user level.
To accomplish the aim, the following tasks have been set: -to propose principles for building a toolset that would solve the tasks of intuitively-simple processing and construction of geographic data; -to extend the capabilities for simulation modeling at a digital map for tasks in various subject areas, not just for a single, highly specialized solution; -to propose a universal technique to exchange the constructed models and geographical data using the mechanism of scenarios; -to implement a flexible mechanism to edit scenarios when changing input data and initial conditions for the model.

Construction principles and features of work of an expert system
The most important stages for modeling at a digital map are the preparation of source data for a model and the management of geographic data. Each stage may include an initial analysis of attributive information on a map's layers, measuring distances, estimating the mutual arrangement n4_result n1_m n3_Edge_Detect CONVOLVE of objects, their shapes, sizes. In addition, in the course of the execution and visualization of the model one may have to construct additional map layers, or remove temporary information.
We propose an approach that could significantly simplify stages in the preparation and management of geographical data. To solve the set task, we built a module of an expert system of geospatial analysis for GIS. Let us briefly consider the ideas that underlie such an expert system.
The expert system's main window contains several panels. The upper panel includes all data sources that are constructed during model execution.
The decision tree's nodes could be of one of the predefined types: -a group of operations, which is a container for multiple nested operations or other groups; -an operation that performs a fragment of the algorithm; -sources of data that represent the original data acquired from a digital map or intermediate data obtained from the algorithm execution; -the nodes of results that are stored as permanent or temporary layers of a digital map.
Data sources could be added as arguments for unary, binary, or special operations, which are the elements of a decision tree. The decision tree itself is built, element by element, in a separate panel in the form of a hierarchical structure whose nodes are represented by conditional symbols (Fig. 2).

Fig. 2. Fragment of a decision tree compiled in an expert system
Model execution is carried out with the help of a software expert system shell, which finds in the decision tree a node of the topmost (first) level. Then one sequentially selects, analyzes, and executed each child activity nested in this node of the group. Upon performing all operations in the first group, the interpreter finds the next node in a group, which is a child node of the first-level group. For the found second-level group, the process of finding child nodes of operations, their analysis and execution, is repeated. This is repeated until the interpreter performs the last (terminal) node of operations in the decision tree (Fig. 3).
Conditionally, the operations described by using a decision tree could be divided into three groups. The first group is the unary operations, which contain a single data source as an input argument. The second group is the binary operations that require two input arguments in the form of data sources. The third group is other operations that contain three or more input arguments. The specified groups of operations form in the decision tree a corresponding child node of results, build a certain buffer zone on the map, and construct a new layer (temporarily or permanently). For example, consider the following sequence of actions: 1. Select point objects of a certain layer on a map using an SQL-query.
2. Construct buffer zones of the predefined depth around the selected points.
3. Construct an integrated buffer zone by merging the buffer zones built at the previous step using a Boolean operation "OR".
4. Build a node of results from a sequence of operations that would define the new data source and a polygonal layer with the assigned structure of attributes based on the integrated buffer zone.
5. Add this layer to the map. The decision tree that corresponds to the specified sequence of operations is shown in Fig. 2.
Three sets of operations, grouped by type, have been implemented in the system: 1. Operations relating to the selected objects on the map. Sampling, in accordance with the parameters for a SQL query or a mutual arrangement of objects in the plane of the map (spatial queries), removal of selected objects, changing their attributes' values or exporting the selected objects to other layers of the map (Fig. 4). Buffer or overlay operations. In this set, the following has been implemented: construction of buffer zones of a certain depth around the objects selected on the map. There is a possibility to export buffer zones to the new layer on the map, as well as there are possibilities to perform rudimentary overlay operations based on Boolean logic, that is, merging buffer zones that exist on the map, their overlapping and subtraction.
3. The nodes that implement specific types of operations. They represent ready snippets of code with an ex-tended set of attributes and complex relationships among elements.
Preparation and processing of geographic data in such a system does not require the user to have skills in the programming languages of high level. New layers on the map are based on the properties of operations for user-selected nodes in the decision tree. The model execution algorithm is designed and edited by the user in the visual environment of a decision tree.

Capabilities of modeling on a digital map using an expert system
The expert system's capabilities are not limited to the processes of preparing, managing, and generating data for an electronic map. The tools for a visual construction of a decision tree make it possible to implement the algorithm for building many models in a convenient and visible manner. A set of buffer and overlay operations is a cornerstone of modeling in a given expert system. Actually, work at it started with an idea to automate the functions for a geospatial analysis, relating to the construction on the digital map of zones where moving objects could be reached. Look at these operations in detail.
Buffer zones on a map are built around point, linear, or polygonal objects (Fig. 5).

Fig. 5. Construction of buffer zones on GIS digital map
Depth of the buffer zones could be set as a constant or a value from the table of attributes of the objects selected on the map (Fig. 6). -selection of public utilities within the specified radius of availability for each user; -time-dependent change in the initial boundaries of the zone where objects moving with the predefined speed are located; -time-dependent change in the habitats of natural phenomena (epidemics, floods caused by spring melting of snow, etc.).
As could be seen from the above examples, the range of modeling areas is quite wide and is not limited to a single specific task. The structure of attributes for geographic data and their content define the initial conditions and data for the model under construction. Then, how does the expert system determine the structure of attributes for objects that were constructed when building the buffer zones? For this purpose, the decision tree's nodes that generate new data sources (layers of the map) during model execution have three options.
-Constructing a data source with a simplified, standardized structure of attributes. The minimal set includes the required attribute ID, for the map's objects indexing, and one of the attributes of a specified type -the integer, string, and double precision. Using a standard structure of attributes is appropriate for modeling simple properties and relationships among objects on the map. For example, to calculate the area of the region covered by the buffer zones built around certain objects.
-The structure of attributes for the constructed data source is copied from the already existing map's layer. Such an approach is rational to use for cases when existing layers overlap, when automatically selecting and transferring the fragments of geographical data to the specified regions of the map.
-A new data source attributes' structure is formed based on one of the templates, recorded in a GIS database. One could construct the necessary templates and add the attributes of the selected type to them. Such an approach makes it possible to design new structures of input data and change the initial conditions for modeling.
Thus, using the simplest operations for building buffer zones one could describe rather complex relationships among objects on the map. However, greater possibilities of the expert system manifest themselves when using buffer and overlay analysis in combination.
Here is a simple example. At the electronic city map, one selects the polygonal objectsparks and gardens. Buffer zones are built around them with a depth of 300 m, thereby setting region Z1 on the map. Some spatial function F1 is then introduced. The value for this function is equal to 1 if an arbitrary point P(x, y), belonging to the analyzed area M on the city map is also inside one of these buffer zones. Otherwise, the function is equal to 0.
Next, one selects on the city map the polygonal objectsbuildings that house supermarkets. Around them, one constructs buffer zones with a depth of 500 m, thereby setting region Z2 within a walking distance to a respective supermarket. The spatial function F2 is introduced whose value is 1 if an arbitrary point P(x, y) that is inside the region M on the city map is also inside one of the areas within a walking distance to the supermarkets. Otherwise, the function F2 is equal to 0.
One must select all residential buildings (a layer of polygonal objects on the city map) that: -are located in a zone within walking distance to at least one supermarket; -are inside at least one of the buffer zones built around parks and gardens.
In accordance with the search conditions, we introduce a spatial function F3 assigned in a tabular form (Table 1). Table 1 The city territory's points that belong to the buffer zones built under the terms of the problem Proceed from a tabular description to a formula and define a solution to the problem as a Boolean function of two arguments [10].
Thus, in a given example, the solution is represented as overlay operation (3) and is formed as a conjunction of two regions Z1 and Z2. For the buffer zones that form in accordance with (1) and (2) the arbitrary regions Z1 and Z2, we defined in the expert system a set of three Boolean operations, conjunction, disjunction, and negation of implication.
There is an issue on the possibility of using the data obtained as a result of a certain sequence of operations (4) as an input argument for another operation in the decision tree. When using the concept of data sources, such an approach is possible. In the expert system we implemented a kind of a conveyor when a data source, obtained while performing a buffer or overlay operations, is sent to the input of the next operation (Fig. 7).
Thus, instead of a complex, difficult-to-read chain of predicates [10], we propose a simple and visual sequence of elementary operations. In addition, in the expert system, one could construct breakpoints at the inputs of conveyor operations and to monitor the state of model execution.

Scenarios as a universal technique to exchange data among models
The visual expert system builder, described above, makes it possible to construct and edit the required model. A software interpreter starts its execution and adjusts it stepwise over a working cycle of the model. However, modern methods of simulation modeling imply splitting a complex model into several stand-alone modules, each of which performs a specific set of tasks and share fulfillment results with other modules.
Under such a multi-module organization, a series of issues arise related to the overall structure of the model. First, each module must be saved as a standalone file. The following must be implemented: download this module to the expert system, build a decision tree for it, and adjust its performance. Second, the expert system must run the required modules in a user-specified sequence. The results of each module's execution, in the form of layers and data created for the map should be stored and, if necessary, be submitted to the input of other modules.
Thus, we are talking about choosing a format for storing and exchanging data from modeling. By advancing the concept of model's universality, built in the expert system, we introduce an additional requirement. Storage and exchange format must be known, well described, and documented. In addition, it could be used in other GIS and expert systems as a standard.
Hereafter, the file that contains the structure and data for a decision tree constructed in an expert system is referred to as a script file. A script for model execution could be saved as a data exchange file in XML format to be available to another digital map or at a different computer.
When expanded, the script file looks quite difficult. However, a user does not need to understand all the subtleties of working with XML-format. The only important thing is to understand the hierarchical structure of the data contained in that file. At the top level of the hierarchy is the first node, which unfolds revealing child nodes of the second level. Each of these child nodes could be expended thereby representing the child levels of subsequent nodes. Any node could contain any number of child nodes or not have them at all. In the latter case, the node becomes terminal. Building and editing a script is performed in the main window of an expert system by using visual programming tools.
The constructed model or its fragments could be saved as a script file. It is advisable to organize storing such scenarios in the form of a library, constructed in the shared directory for users. Using pre-existing and well-established modules would make it possible to avoid the repeatability of the code, and would also ensure the scalability of new simulation models constructed for GIS.

Testing the possibilities of simulation modeling in an expert system
The first two types of operations within an expert system are of low level. Using them makes it Fig. 7. Conveyor of operations implemented in an expert system possible to construct more flexible and complex models for geographic information systems. The third type is the special operations that implement the high-level fragments of the model. At this stage, the system employs two special operations. The first operation implies building, based on data on topography, the zones of visibility for the objects selected on the map or the center of a cluster of such objects (Fig. 8). The second specialized operation implies designing a route for an unmanned aerial vehicle (UAV) taking into consideration the altitudes and speeds of flight, the parameters of imaging equipment. A zone of the photographed territory, formed along the route of the flight, is a polygonal object on a digital map. By adjusting the altitude of the flight along a UAV route, or by applying a different type of the camera, one could minimize the flight time. This is subject to continuous coverage of the territory to be photographed and requires the coefficients for longitudinal and transverse overlapping of imaged zones between the individual frames of the camera [11]. Using a module for the preliminary planning of a UAV route significantly simplifies the photogrammetric problem on compiling the mosaic of aerial photographs [12]. An example of designing an UAV route using the expert system of geospatial analysis is shown in Fig. 9.
Using the script snippets for specialized operations implements the required concept of the automated generation of data for a digital map without programming.

Discussion of results from the automated generation
of data for a digital map using the expert system of geospatial analysis The expert system is operated by a code interpreter. Such an approach has some drawbacks. Despite the presence of a unit for checking the source data, the user may encounter the run-time errors of the script. For example, when one applies a Boolean operation AND there is a probability of receiving an empty area for an integrated buffer zone (analyzed objects do not intersect). If such an empty area is sent to the input of the subsequent operation, an error may occur and the execution of the script would be suspended.
Thus, there is a significant limitation in the scope of application of this study results. Like most such solutions, managed by threads of input data, a geospatial analysis expert system cannot be applied in real-time control systems. To identify problematic situations, in the process of adjusting the model, we implemented a stepwise tracer that makes it possible to locate a point of the emergence of error within a script.
The results obtained make it possible to consider the constructed system as a convenient tool for building data and for GIS operation without a need for special training of the user.
By combining operations on objects identified on the map with the capabilities of buffer and overlay analysis, one can build complex models of the following phenomena on the map: -calculation and representation of reachability zones when moving objects at the predefined speed over a specified time; -construction of zones of flooding; -the areas of a phenomenon propagation within certain time intervals (fire spots, disease spread zones, social issues).
The expert system of geospatial analysis has been implemented as one of the modules in the GIS "Instrument" [1]. Thus, by having a source code of the system, developers are provided with a possibility to extend its functionality and to add new types of operations. If required, the modules that implement specialized operations could be used in other geographic information systems.
To assess the completeness of solutions to the problematic part, we shall compare the constructed system with the solutions (Table 2) given in the chapter reporting our analysis of the scientific literature. The comparison was based on the following criteria: -the presence of a visual model builder (1); -a possibility to construct scripts to execute models (2); -an intuitively-simple interface for operating the functions and procedures on geoprocessing (3); -extensibility and scalability of the constructed models (4); -possibilities to exchange data with other simulation models and script modules (5); -a capability to work with rasters (6); -possibilities for using WEB services (7). Another limitation of the expert system follows from Table 2. The software did not implement a WEB-technology for multiuser queries of the client-server type. However, the organization of an effective distributed network access to script libraries partially neutralizes this issue. Application of the mechanism of scripts will make it possible for other Fig. 9. Results of designing an UAV route in the expert system of geospatial analysis users to employ the devised practices and models. For example, when planning, preparing, conducting and reviewing military activities, it is advisable to have a library of common scenarios that make it possible to analyze the terrain, to acquire data on the terrain from a digital map and to generate data for the simulation combat models. Table 2 Comparison between the capabilities of the expert system of geospatial analysis and available solutions 1 2 3 4 5 6 7 Expert system of geospatial analysis + + + + + -- Arguing about the assessment of the completeness of the solution to the set task, it should be noted that, owing to the modifications of scripts, the designed system can be extended. The work is under way to expand the functionality of the expert system through capabilities to build scripts for decoding objects on aerial photographs. Such operations include the use of various filters, building contour (binary) image based on images and implementing the signatures for descriptions of template images. The GIS "Instrument" has a module of cluster analysis based on attribute values for layers of a digital map [13]. Transferring the functionality of a given module to the expert system would significantly simplify the processing of large amounts of data in GIS related to a digital map and construct custom scenarios for such fields of human knowledge as sociology and statistics [14].

Conclusions
1. We have developed principles for constructing a geospatial analysis expert system, which greatly simplifies work with spatial geographical data for the user. The scientific result of such a solution underlies the proposed method for building buffer zones in GIS and for using methods of overlay analysis for the automation of processes to generate data for digital maps. A data analysis or task modeling on a map are reduced to a set of simple, intuitively-clear actions in the visual environment of a model builder. This is achieved by ensuring that all the complex and polymorphic functions of geoprocessing are hidden from the user. As an alternative, the user is provided with a visual and easy-to-build decision tree.
2. An important aspect of our study's results is the versatility of the model builder when using an expert system. The scientific result from solving the set problem is the technique to ensure the standardization of modeling tools on a map. Now one could choose different, even the most unexpected, areas of work with geographic data and build the required models on a map. Such capabilities were demonstrated in the expert system by the implementation of two models in the form of a set of specialized operations. We are talking about building the zones of visibility on a digital map and designing a UAV route.
3. We have proposed and implemented a procedure for ensuring a unified approach to storing and sharing of geographical data, which implies the construction of script libraries. The description of these scenarios in the expert system is based on the XML language standards. Using the expert system presents a possibility to download several common scenarios to the model and to obtain the new set of layers on a digital map.
4. In the expert system we have implemented a procedure for making simple and easy changes to the input data when one changes the initial conditions for modeling. This results in the unification of the constructed models. Under such an approach, there is no need to delve into the intricacies of the XML data description language. The user no more needs to directly edit the model's source code. All the changes to the algorithm and to the initial conditions for modeling are performed in the visual environment of the expert system.