Harvester open publications of NAS Ukraine
Not a member yet
58 research outputs found
Sort by
Automated generation of programs for a class of parametric neuroevolution algorithms
The facilities of algebra of hyperschemes are applied for automated generation of neuroevolution algorithms on an example of a binary multiplexer evaluation problem, which is a part of the SharpNEAT system. SharpNEAT is an open-source framework developed in C# programming language, which implements a genetic neuroevolution algorithm for the .NET platform. Neuroevolution is a form of artificial intelligence, which uses evolution algorithms for creating neural networks, parameters, topology, and rules. Evolution algorithms apply mutation, recombination, and selection mechanisms for finding neural networks with behavior that satisfies to conditions of some formally defined problem. In this paper, we demonstrate the use of algebra of algorithms and hyperschemes for the automated generation of evaluation programs for neuroevolution problems. Hyperscheme is a high-level parameterized specification of an algorithm for solving some class of problems. Setting the values of the hyperscheme parameters and further interpretation of a hyperscheme allows obtaining algorithms adapted to specific conditions of their use. Automated construction of hyperschemes and generation of algorithms based on them is implemented in the developed integrated toolkit for design and synthesis of programs. The design of algorithms is based on Glushkov systems of algorithmic algebra. The schemes are built using a dialogue constructor of syntactically correct programs, which consists in descending design of algorithms by detailing the constructions of algorithmic language. The design is represented as an algorithm tree. Based on algorithm schemes, programs in a target programming language are generated. The results of the experiment consisting in executing the generated binary multiplexer evaluating program on a cloud platform are given.Prombles in programming 2022; 3-4: 301-31
Simulation of optimal pursuit strategies with simple motion
Strategies for pursuit of a target by one pursuer with simple movement are considered. The criterion is the time to capture the target. The proof of the optimality of the parallel approach strategy and the chas- ing strategy is presented. The strategy of parallel approach consists in the fact that the pursuer, knowing the velocity vector of the target at current moment, considers this vector to be constant and calculates a point on the target’s line of motion at which capture can occur if the pursuer moves at a constant maxi- mum speed. At each instant of time, the pursuer’s velocity vector is directed to the capture point, and the magnitude of the velocity is maximal. If the pursuer moves at maximum speed in the direction of the target, the pursuit strategy is called a chasing strategy. A number of examples of pursuit using the strate- gies of parallel approach and chasing strategy, calculated by the numerical method, are given. The main parameters of the movement of the agents affecting the time of capture are determined: the speed of the target and the pursuer, the coordinates of the target and the pursuer at the time of the beginning of the pursuit, the type and parameters of the target’s movement line; the pursuit task is determined by these para-meters. On the basis of numerical modeling, a sets of problems is outlined for which the parallel approach strategy is better then the chasing strategy or vice versa. The selected movement parameters roughly correspond to the movement parameters of modern combat aircraft and air defense equipment; in numerical experiments, the absolute value of the acceleration of the target does not exceed 10g, where g is the accele-ration of free fall. Since the pursuer’s motion is considered simple, any absolute value of its acceleration is allowed. In the case of applying the parallel approach strategy, this value slightly differs from the absolute value of the target’s acceleration; if a chasing strategy is used, the absolute magnitude of the pursuer’s acceleration can be much larger.Prombles in programming 2022; 3-4: 478-48
Image compression module based neural network autoencoders
A new approach is proposed to data compression in the form of a neural network module based on the structure of autoencoders, which has the most optimal learning time, compression level and obtains sufficiently clear image reconstruction. The main mechanisms for building the structure of encoder and decoder neural networks, which are used as a module, have been developed. The main data for the reconstruction were selected from the open data set Fashion-MNIST, which allows simplified testing of neural network structures, the process of their training and obtaining results. Approaches to image reproduction using neural network layers of convolution and inverse convolution are analyzed. An analysis of the impact on the quality of the resulting image reconstruction of the structure of the output module, which is used to compress the input image, was carried out. Atypical behavior was found during the increase of layers in the structure of the autoencoder, which did not lead to an increase in the quality of image reproduction. The basic necessity of changing the structural parts of the autoencoder and its application in combination with other technologies to obtain a better reproduction result and the elimination of distortions is highlighted.Prombles in programming 2023; 1: 48-5
Friend-or-Foe Recognition Algorithm Development for the Corresponding Software Building
The year 2022 showed an urgent need to improve the existing systems for recognizing objects in the aerial space, which is caused by the significant increase in the number of technical means (especially unmanned aerial vehicles) on the battlefield. Such a sharp increase in the number of objects that simultaneously take part in combat operations in the air requires the improvement of military object recognition systems, both qualitatively and quantitatively. This requires the development of appropriate new generation Friend-or-Foe algorithms for the objects’ recognition.The main requirements for recognition systems of aerial objects of civil application were determined. They includes: maximum com- patibility; support for a large number of objects; outdated recognition complexes support; support for alternative ways of recognition; support for alternative data entry methods; determining the coordinates of aerial objects in an emergency situation.Friend-or-foe recognition systems for military applications are also considered. In contrast to civilian systems, the following basic requirements have been identified for them: 1) Maximum speed of the recognition process. 2) Protection against false positives. 3) Protection against legitimate aerial object imitation. 4) Support for a large number of objects. 5) Protection against cases of loss of a legitimate aerial object. 6) Rotation of the secret part. 7) Protection against false-negative results to prevent friendly fire. 8) Protection against man-in-the-middle attacks. 9) Flexible integration with the NATO block recognition system. 10) Availability of opportunities for purely domestic production and support of the object recognition system. 11) Protection against electronic warfare means. 12) Support for several recognition modes. 13) Automatic blocking of the launch of ground-to-air and air-to-air weapons against objects that confirm their legitimacy by a correct response to a request. 14) Determining the coordinates of aerial objects in an emergency.Based on the formulated requirements, a new friend-or-foe algorithm for the state identification system for military use is proposed, built based on the state standards, and taking into account the features of its software implementation in order to increase speed. Its implementation will ensure sufficient scalability, stability, reliability, and multi-level recognition.Prombles in programming 2022; 3-4: 387-39
Toward software engineering ecosystems definition
Nowadays, the fundamental science of software engineering is being formed. It should represent knowledge that meets the requirements of the concept of sustainable development. This fundamental science could be named as the Software Engineering Ecology. Along with others, it should include a section containing knowledge about software engineering ecosystems. This section of the future science has been intensively developing for more than fifteen years. However, today, there is no consen- sus among researchers regarding the definitions of the software ecosystem. Naturally, it does not contribute to the creation of an appropriate section of emerging science. All authors offer only a software ecosystem, considering it in different contexts and defining it in different ways. The term “software ecosystem” is now used to refer to a wide range of ecosystems that are actually software engineering ecosystems. The purpose of this paper is to propose a basis for defining software engineering ecosystems. By analogy with the concepts of the landscape and the trophic chain of biological ecosystems, the concepts of software landscape and software engineering value chain are proposed. Based on these concepts, the diversity of software engineering ecosystems is shown. A model of the software engineering ecosystems and a classification of the software engineering ecosystems are proposed.Prombles in programming 2022; 3-4: 92-9
Process automatisation of Xcode new target creation
We live in the era of the Internet and technology. Now it is important for a person to be able to do their routine, uninteresting things quickly, and to be able to focus on more professional things. Everyone wants to minimize the time spent searching for information and have all services in one place.Due to these desires, significant progress is being made in the development of mobile applications. A number of factors also contribute to this. First, the development of the hardware of pocket-sized devices reaches a level sufficient for complex computing tasks. Secondly, the speed of Internet communication has increased. Third, almost everyone in the world now has a smartphone, so it is much more profitable for businesses to develop mobile applications to reach a wider audience. The development of applications for mobile devices is becoming more and more popular, but at the same time more expensive. In some cases, a business needs to have a number of similar applications for one reason or another. There are several approaches to code reuse in the context of iOS development. One is to use a common codebase and separate Xcode targets for each product. The process of creating a new target requires a number of routine operations, which require the programmer’s time, and writing code is potentially error-prone. This research proposes to improve this approach by using scripts to generate a project file based on given configurations. A console script for generating a project file and a project to illustrate the approach have been developed.Prombles in programming 2023; 1: 11-18
Development of decision support system using OLAP-technologies for information security monitoring systems
The article highlighted the need for continuous monitoring of the computer networks (CN) for information security and analyzed the sources of data for information security monitoring (ISM). Methods of data collection from various sources have been investigated, and categories of ISM systems have been studied. The architectural-technological model of the system supporting decision-making based on OLAP (Online Analytical Processing) and data warehouse has been proposed for quick response to security-related incidents and detected incidents in ISM systems.Prombles in programming 2022; 3-4: 403-40
Table interpretation of the temporal description logic LTLALC
Description logics are widely used to describe and represent knowledge in the Semantic Web. This is a modern and powerful mechanism that provides the possibility of extracting knowledge from already existing ones. Thanks to this, conceptual of subject areas modeling has become one of the fields of application of descriptive logics, taking into account the use of inference mechanisms. Conceptual modeling is used to create databases and knowledge bases. A key issue of the subject area modeling is the ability to monitor the dynamics of changes in the state of the subject area over time. It is necessary to describe not only the current actual state of the database (knowledge bases), but also the background. Temporal descriptive logics are used to solve this problem. They have the same set of algorithmic problems that are presented in conventional descriptive logics, but to them are added questions related to the description of knowledge in time. This refers to the form of time (continuous or discrete), time structure (moments of time, intervals, chains of intervals), time linearity (linear or branched), domain (present, past, future), the concept of “now”, the method of measurement, etc. An urgent task today is to create an algorithm for the temporal interpretation of conventional descriptive logics. That is, to show a way in which temporal descriptive logic can be applied to ordinary descriptive logic. The paper presents an algorithm for temporal interpretation of LTL into ALC. Linear, unbranched time is chosen for the description goal. It is presented in the form of a whole temporal axis with a given linear order on it. Only the future tense is considered. The algorithm contains graphic notations of LTL application in ALC: concepts, concept constructors, roles, role constructors, TBox and ABox. Numerous examples are used to illustrate the application of the algorithm.Prombles in programming 2022; 3-4: 216-23
Improving methods for generating encryption keys using strange attractors
The urgency of the work is determined by the need to transfer confidential information through open communication channels. Such information can be of two types: symmetric encryption keys and directly informational messages that are encrypted with encryption keys. The article deals with the problem of improving the transmission of closed information over open channels using the Diffie- Hellman algorithm. The improvement is due to the introduction of a new type of one-sided function based on the numerical solution of the system of ordinary differential equations describing the dynamics of the phase coordinate movement of the strange attractor. For this purpose, the classic Diffie-Hellman algorithm based on the one-sided function of the discrete logarithm was considered. The required properties of one-sided functions in the general case were considered. Next, the peculiarities of algorithm modification in the case of transition to a one-sided function based on the use of a strange attractor were considered. It is assumed that at the beginning of the operation of the modified algorithm, through a secret channel, the exchange parties (agents) exchange information regarding the properties of the strange attractor to be used, namely, the definition of the differential equations describing the dynamics of a strange attractor, the values of the parameters of the equations, the initial integration conditions and the integration step (for methods with a constant step of integration). After that, all exchanges are conducted exclusively through open channels. The paper also considers the case of information exchange between more than two agents, in particular, the approach of hiding the number of agents participating in the exchange. Approbation of the method is carried out and intermediate and final results of the one-sided function based on strange attractors are given. Possibilities regarding partial disclosure by agents of certain parameters of the use of one-way functions are discussed. But at the same time, the safety of revealing such information is justified in the general case (both in the classical and in the modified Diffie-Hellman method). It was determined that depending on the needs of users, the complexity of the encryption keys can be increased by changing the initial parameters of the attractor, which will also allow controlling speed of key generation and encryption in general. The software that implements the proposed modified algorithm is implemented in three programming languages, C#, Python, and MatLab. This made it possible to perform a comparative analysis of the results and consciously choose the programming language of individual parts of the software to optimize the encryption key generation process for specific conditions.Prombles in programming 2022; 3-4: 417-42
Information resources distribution between automated workstations in local corporative networks
This article focuses on the problem of optimal distribution of related information resources between automated workstations in local corporate networks. In this work we present a mathematical description of the algorithm for quasi-optimal distribution of related information resources at designing automated workstations in a local corporate network. The undirected graph describing the task of information resources optimal distribution is presented. The method of quasi-optimal distribution of related resources at designing automated workstations in the local corporative network is proposed based on the developed algorithm. Using conditional organization as an example the modeling of optimal distribution of related information resources has been considered in local corporative network. The described algorithm provides an opportunity to optimally distribute the information resource in the local corporate network, as well as solve the task of building reliable and efficient local networks. The proposed method of quasi-optimal distribution of related information resources can be used in corporation of any type.Problems in programming 2022; 2: 23-3