Наукові записки НаУКМА. Комп'ютерні наукиПеріодичне фахове видання "Наукові записки НаУКМА. Комп’ютерні науки" є друкованим засобом масової інформації, журналом відкритого доступу, в основу діяльності якого покладено публікацію наукових статей в галузі сучасної кiбернетики, інформатики та програмування. Засноване в 1996 році видання публікує статті українською та англійською мовами (за вибором автора) теоретичної та практичної спрямованості. До 2018 року журнал був складовою багатосерійного видання "Наукові записки НаУКМА" та мав назву "Наукові записки НаУКМА. Комп’ютерні науки".https://ekmair.ukma.edu.ua/handle/123456789/146132024-03-29T12:20:07Z2024-03-29T12:20:07Z881ПередмоваГлибовець, Миколаhttps://ekmair.ukma.edu.ua/handle/123456789/248762023-09-23T13:34:55Z2022-01-01T00:00:00Zdc.title: Передмова
dc.contributor.author: Глибовець, Микола
dc.description.abstract: Передмова до видання Наукові записки НаУКМА. Комп'ютерні науки. Т. 5. (2022).
2022-01-01T00:00:00ZСпецифікація процедурної мови програмуванняПроценко, Володимирhttps://ekmair.ukma.edu.ua/handle/123456789/248752023-09-23T13:34:50Z2022-01-01T00:00:00Zdc.title: Специфікація процедурної мови програмування
dc.contributor.author: Проценко, Володимир
dc.description.abstract: Розглянуто процедурну мову програмування, об’єкти якої – цілі змінні й процедури. Оператори мови – присвоєння, введення, виведення, умовний, циклу і блок. Головне призначення блоку – введення локальних цілих змінних і процедур. Процедура має параметри і тіло – оператор. Обчислює процедуру оператор виклику, аргументи якого цілі змінні. Наведено повну формальну специфікацію мови. На основі специфікації побудовано інтерпретатор мови програмування.
dc.description: A simple procedural programming language is considered, each program of which can input integer
values, process them and output new integer values as result. A program is a block with description of local
integer variables and procedures and a list of statements. The language has data processing statements:
assignment, input, output, conditional, loop, procedure call and block. Main purpose of the block is to enter
local data (integer variables and procedures) that are used in the body of the block – a list of operators. The
scope of the name of the local data described in the block is the text of the block except for nested blocks,
where this name is redefined. A mechanism of automatic memory allocation for variables entered in the
block is also associated with the block. Memory for local variables is allocated when entering a block, and
freed when exiting a block. A block containing only a list of statements is valid. The procedure has a name,
list of formal parameters, and a body – a statement (most often a block). Formal parameters are applied only in its body. A procedure is calculated by the procedure call statement, whose actual parameters are
only variables. Parameters are passed by reference (pass-by-reference).
A formal specification of a programming language is a description of its syntax and semantics. A concrete
syntax, finite set of rules, singles out syntactically correct sequences of symbols of the alphabet of
language. To describe the semantics of a language, as a rule, abstract syntax is used, adding contextual
conditions to it. The task of semantics is to introduce the denotations (“meanings”) of the basic constructions
of language and semantic functions that build the denotations of complex syntactic constructions
based on the denotations of their components, including the program.
The article provides a specification of a procedural programming language that uses the extended
Backus-Naur form to describe a concrete syntax, and the tools of the functional language Haskell to describe
other parts. Abstract syntax is defined by the types Program, Proc, Stmt, Expr and Op. Additional
contextual conditions are predicates that use information about program data. Most of the context conditions
are related to the correct use of data in the program. The leading predicate that checks the context
conditions of the program pr is iswfProgram pr.
The language denotations are based on the Work type. The value of this type – a tuple (inp, stg, out)
models the environment in which the language program is executed: inp - input data, stg – memory containing
variable values, out – resulting data. The semantics of main constructions procedure, statement and
expression are functions of the type Work -> Work or Work -> Integer. The semantics of the program is a
function of the type [Integer] -> [Integer]. Semantic functions build these denotations according to syntactic
constructions, which are described by abstract syntax – Proc, Stmt, Expr, Program types. The semantics
of the program (Program) pr is built by function iProgram pr.
All functions: contextual conditions, denotations and semantic functions are pure functions. Using
Haskell tools, a function called parsePLL is built, which connects concrete and abstract syntax. It is shown
how by combining the functions parsePLL, iswfProgram and iProgram you can get a procedural language
– a pure function with the name interpret.
2022-01-01T00:00:00ZАвтоматична генерація онтологій на основі статей українською мовоюЖежерун, ОлександрРєпкін, Максимhttps://ekmair.ukma.edu.ua/handle/123456789/248742023-09-23T13:34:37Z2022-01-01T00:00:00Zdc.title: Автоматична генерація онтологій на основі статей українською мовою
dc.contributor.author: Жежерун, Олександр; Рєпкін, Максим
dc.description.abstract: У статті представлено систему, яка здатна генерувати нові онтології або доповнювати наявні на основі статей українською мовою. Описано онтології та алгоритм, який доречний для використання у автоматизованому виокремленні концептів із текстів природною мовою.
dc.description: The article presents a system capable of generating new ontologies or supplementing existing ones
based on articles in Ukrainian. Ontologies are described and an algorithm suitable for automated concept
extraction from natural language texts is presented.
Ontology as a technology has become an increasingly important topic in contemporary research. Since
the creation of the Semantic Web, ontology has become a solution to many problems of understanding natural
language by computers. If an ontology existed and was used to analyze documents, then we would have
systems that could answer very complex queries in natural language. Google’s success showed that loading
HTML pages is much easier than marking everything with semantic markup, wasting human intellectual
resources. To find a solution to this problem, a new direction in the ontological field, called ontological
engineering, has appeared. This direction began to study ways of automating the generation of knowledge,
which would be consolidated by an ontology from the text.
Humanity generates more data every day than yesterday. One of the main levers today in the choice of
technologies for the implementation of new projects is whether it can cope with this flow of data, which will
increase every day. Because of this, some technologies come to the fore, such as machine learning, while
others recede to the periphery, due to the impossibility or lack of time to adapt to modern needs, as happened
with ontologies. The main reason for the decrease in the popularity of ontologies was the need to hire
experts for its construction and the lack of methods for automated construction of ontologies.
This article considers the problem of automated ontology generation using articles from the Ukrainian
Wikipedia, and geometry was taken as an example of the subject area. A system was built that collects data,
analyzes it, and forms an ontology from it.
2022-01-01T00:00:00ZПрограмна система перевірки на плагіат українських текстівГлибовець, АндрійБікчентаєв, Миколаhttps://ekmair.ukma.edu.ua/handle/123456789/248732023-09-23T13:34:54Z2022-01-01T00:00:00Zdc.title: Програмна система перевірки на плагіат українських текстів
dc.contributor.author: Глибовець, Андрій; Бікчентаєв, Микола
dc.description.abstract: Метою цієї роботи є опис методології побудови програмної системи (застосунку) перевірки на плагіат наукових публікацій українською мовою з використанням двох моделей машинного навчання – Word2Vec і BERT. Ми розглядаємо виявлення зовнішнього плагіату в українських текстах, що передбачає порівняння вхідного документа з документами в колекції. Вбудовування слів використовували для порівняння документів, оскільки тексти зі схожим значенням або контекстом створюють подібні вбудовування слів. За допомогою Word2Vec і BERT ми перетворюємо кожен документ на ряд убудовувань слів. Розрахунок міри подібності для цих убудовувань допомагає визначити схожість документів. Інтерфейс програми розроблено з використанням бібліотеки React. Вебзастосунок використовує бібліотеку компонентів Material UI і базу даних MongoDB. Бекенд написано з використанням мов програмування Python і Flask.
dc.description: The purpose of this work is to describe the methodology of building a software system (application) for
plagiarism checking of scientific publications in the Ukrainian language using two machine learning models,
Word2Vec and BERT. We consider the detection of external plagiarism in Ukrainian texts. Plagiarism is usually defined as the passing off someone else’s ideas as your own. As the Internet becomes
more and more accessible every day, a huge amount of data becomes available to people. Nowadays,
it is quite easy to find a suitable study and plagiarize it instead of developing one’s own from scratch.
Plagiarism undermines the efforts of the researcher whose work has been plagiarized and gives the
plagiarist the opportunity to over-praise himself; such a person can be detrimental when appointed to an
important position.
Many fields of life are susceptible to plagiarism, including research and education. Plagiarism can also
take many forms: from straight up copy-paste to paraphrasing and sentence restructuring. This makes
plagiarism a rather complex problem, where methods, such as longest common subsequence or n-grams,
based on finding shared words between documents, might not work. Therefore, we might consider applying
deep learning to the problem of plagiarism detection.
In this article we discussed the concept of plagiarism and listed its types. Two machine learning models
have been proposed for plagiarism detection: Word2Vec and BERT. We also provided an overview of both
models and described how they could be used in the problem of plagiarism detection.
A web application for plagiarism detection in the Ukrainian language has been developed. This application
features React, a JavaScript framework, on the frontend and Python on the backend. To store application
data, MongoDB is used.
This application allows a user to input a text that will be compared with the texts from the application
database using cosine similarity or Euclidean distance as metrics. Comparison is performed using word
embeddings, calculated by pre-trained BERT or Word2Vec model. A user can choose the model and similarity
metrics using the application’s UI.
The application can be further improved to not only output similarity metric but also highlight the similar
sentences in the texts.
2022-01-01T00:00:00ZВикористання доповненої реальності для візуалізації архітектур програмних модулівФранків, Олександрhttps://ekmair.ukma.edu.ua/handle/123456789/248722023-09-23T13:34:47Z2022-01-01T00:00:00Zdc.title: Використання доповненої реальності для візуалізації архітектур програмних модулів
dc.contributor.author: Франків, Олександр
dc.description.abstract: У статті описано створений програмний комплекс ADAR для статичного аналізу програмного коду з подальшим створенням тривимірної моделі для візуалізації засобами доповненої реальності. Комплекс має природне для людини подання, що дає змогу на інтуїтивному рівні ефективно аналізувати складність зв’язків між різними частинами програмного коду, які виступають критерієм визначення зв’язності, зв’язаності або крихкості компонента.
dc.description: Nowadays the technology of augmented reality has become available for a wide audience of users because
of a big number of software and hardware enhancements and optimizations done in the last years. The
fact that the smartphone is a suitable and relatively cheap device having all the hardware required makes
the technology even more accessible and thus widespread. Furthermore, the interaction with three-dimensional
objects in space may have positive impact on user’s perception of information. These both facts make
the technology of augmented reality a good choice for displaying complex data. The analysis of software plays a significant role in development as it is vital to keep the code clean and
sustained all the time. Poor quality code may be unsustainable to the extent it must be fully replaced which
results in big losses of resources. In terms of quality checks the analysis must be informative and consume
as few resources as possible to be executed so that it is appropriate to perform it regularly. That is the
reason for this process to be automated and made convenient to execute and percept.
The new system for automatic software analysis is described in this article. ADAR (Architecture Displayer
in Augmented Reality) software is best suitable for code coupling and cohesion analysis as it uses
three-dimensional graph to display connectivity between parts of software module. High coupling and low
cohesion might inform the developers of severe architectural mistakes that may lead to high code fragility.
With the use of AR technology the result of high coupling detection analysis in the form of graph is presented
in augmented reality to provide user the information in a highly intuitive way.
This article also covers different approaches to graph visualization in three-dimensional space. The
criteria that allow to achieve high level of aesthetics relative to this problem are stated in paper. The problem
of using the force-directed algorithms in terms of high-aesthetic graph visualization is described in
details and some arguments pro their usage are given.
2022-01-01T00:00:00ZРеалізація чат-ботів із поведінкою, що керується скінченним автоматом, у графічному конструкторіГулаєва, НаталіяКобєлєв, Михайлоhttps://ekmair.ukma.edu.ua/handle/123456789/248712023-09-23T13:34:40Z2022-01-01T00:00:00Zdc.title: Реалізація чат-ботів із поведінкою, що керується скінченним автоматом, у графічному конструкторі
dc.contributor.author: Гулаєва, Наталія; Кобєлєв, Михайло
dc.description.abstract: Окреслено основні методи використання скінченних автоматів (СА) для моделювання й програмної реалізації поведінки об’єктів різної природи. Як приклад інтерактивної програми розглянуто чат-боти: основні поняття, методи класифікації, способи реалізації. Запропоновано розширення СА для моделювання поведінки текстового чат-бота, побудованого на правилах. Дано короткий огляд методів перетворення СА на програмний код у різних парадигмах програмування. Запропоновано динамічний підхід для виконання такого перетворення, зі збереженням специфікації СА в базі даних. Розроблено графічний конструктор, який дає змогу створювати модель чат-бота, базованого на правилах, у вигляді скінченного автомата та виконує трансформацію побудованої моделі для безпосереднього використання в месенджер-платформі Telegram.
dc.description: Finite state machine (FSM) is a powerful tool to model object behavior. Using FSM and its extensions
to model program behavior followed by the automatic generation of executable code is the approach encouraged
by the model-driven development (MDD) – a software development methodology based on the
concepts of model and model transformation.
In this paper, a brief overview of FSM-based common methods to model and develop software programs
of any nature is given. These methods include David Harel’s statecharts, UML State Machines, Virtual Finite
State Machine, etc. Examples of all types of software systems (transformational, interactive, reactive)
implemented using FSM are cited.
Chat-bots as an example of an interactive software system are considered: concept, classification methods,
implementation techniques. A graphical designer of rule-based chat-bots to be integrated in the messenger
Telegram is developed and implemented. In this designer, chat-bot behavior is modeled using FSM.
Formal method to model a rule-based chat-bot using FSM is provided. The FSM concept is extended by
disabled transitions to save history of transition changes made during the FSM design process. A brief
overview of code generation methods from FSM specification is done; advantages and disadvantages of the
most popular approaches are considered. Dynamic approach to generate code by FSM specification saved
in DB is proposed. To implement this approach, document MongoDB and in-memory key-value Redis DB
are used; FSM is kept as a JSON-document. This approach is efficient in flexibility, speed and memory
needs.
Architecture diagram of developed chat-bot graphical designer is given. It has the microservice architecture.
The FSM model-to-code transformation is carried out by the bot-execution service written using
compiled language Go. Other services include the front-end (UI for end-user, CRUD API for chat-bot) and
the bot-management (synchronization of document and key-value databases) services.
2022-01-01T00:00:00ZСистема захисту рухомих об'єктів із використанням GPS/GSM-модулів та радіопротоколуГороховський, СеменАлєксєєв, Антонhttps://ekmair.ukma.edu.ua/handle/123456789/248702023-09-23T13:34:48Z2022-01-01T00:00:00Zdc.title: Система захисту рухомих об'єктів із використанням GPS/GSM-модулів та радіопротоколу
dc.contributor.author: Гороховський, Семен; Алєксєєв, Антон
dc.description.abstract: Розглянуто проблему захисту та охорони на прикладі рухомого об’єкта – велосипеда, з використанням GSM- і GPS-модулів. Показано основні особливості наявних систем у цій сфері, їхні переваги й недоліки. Наведено переваги використання радіопротоколу для захисту велосипедів. Розроблено модель системи, що відповідає потребам користувача.
dc.description: Bicycle security systems have not developed as much as home security, and it is difficult to find competitive
examples when researching the market. Many security systems on the market have weaknesses that can
be bypassed or are not convenient to use. The technologies used to protect bicycles are rather uniform,
predictable and not reliable. Most of such systems do not have convenient means of monitoring, such as, for
example, a mobile application. Improvement of these systems, introduction of new technologies is very relevant
in the field of bicycle protection. This is due to the unpopularity of these systems, their unreliability
and lack of control over the phone. The majority of bicycle users are inclined to use proven methods – bicycle
locks. But this decision is wrong.
The system with GPS is so easy not to be deceived – it has more than one level of protection, and quickly
warns the user about a threat. It has deterrents and means of attracting the attention of others.
In addition, the use of GSM technology facilitates the possibility of control through a mobile application,
which simplifies work with the system.
Using GPS is the best way to monitor the position of the bicycle in space, and to track movement in
unpredictable circumstances. GPS opens a number of possibilities and increases the functionality of the
system. From monitoring the situation of the protection object to collecting statistics].
The GSM module is almost never used in bicycle security systems. This is due to the concept of bike
guarding, which says why use the ability to transmit data to any corner of the world if the user does not
move more than 100 meters from the guarded object. But this concept is wrong. GSM is one of the fastest
solutions among analogs. But transmission speed is not the only criterion for information transmission in
wireless systems.Since the bicycle is a moving object, and the security system must be wireless, an important
criterion for the functioning of such a system is the operating time.
This article deals with the problem of protecting a moving object, using GSM and GPS modules. The
main features of existing systems in this area, their advantages and disadvantages are shown. The advantages
of using a radio protocol for bicycle protection are given. A model of the system that meets the needs
of the user has been developed.
2022-01-01T00:00:00ZInformation system assessment of the creditworthiness of an individualNahirna, AllaChumachenko, OleksandraPyechkurova, Olenahttps://ekmair.ukma.edu.ua/handle/123456789/248692023-09-23T13:34:43Z2022-01-01T00:00:00Zdc.title: Information system assessment of the creditworthiness of an individual
dc.contributor.author: Nahirna, Alla; Chumachenko, Oleksandra; Pyechkurova, Olena
dc.description.abstract: Nowadays enterprise information systems of banks provide modules for calculating creditworthiness of the
business. Such systems are complex and it is difficult to maintain and develop them. Moreover, it requires the
involvement of large teams. In addition, systems are complicated to change and update in accordance with
changes in current legislation. From another point of view, demand for consumer loans is high, and creating
a separate module for calculating the creditworthiness of an individual is appropriate in case of increasing the
adaptability to changes and updates of the system. Calculating the creditworthiness of an individual is relevant
not only for the banking system, but also for other spheres such as logistics and marketing.
The work describes the created information system for calculating the creditworthiness of an individual,
which calculates the class of the borrower based on data from credit history, credit rating, quality characteristics,
financial indicators of the person and characteristics of the credit transaction.
The use of the Asp.Net Core platform and the Vue.js framework to build a software module that can be
used both independently and easily integrated into other corporate systems is demonstrated.
In this work the major steps of designing and developing the system are described.
dc.description: У роботі описано створену інформаційну систему розрахунку кредитоспроможності фізичної особи, яка на основі даних із кредитних історій, кредитного рейтингу, якісних характеристик, фінансових показників особи та характеристик кредитної операції обчислює клас позичальника. Продемонстровано використання платформи Asp.Net Core та фреймворку Vue.js для побудови програмного модуля, що може як застосовуватися самостійно, так і просто інтегруватись в інші корпоративні системи.
2022-01-01T00:00:00ZАналіз і синтез технологій класифікації текстової інформаціїКузнєцов, ВладиславКрак, ЮрійЛяшко, ВолодимирКасянюк, Ведаhttps://ekmair.ukma.edu.ua/handle/123456789/248682023-09-23T13:34:46Z2022-01-01T00:00:00Zdc.title: Аналіз і синтез технологій класифікації текстової інформації
dc.contributor.author: Кузнєцов, Владислав; Крак, Юрій; Ляшко, Володимир; Касянюк, Веда
dc.description.abstract: Розглянуто задачу якісного аналізу процесу перетворення текстової інформації на набір ознак і відповідно перетворення цих ознак на набір, зручний для візуального аналізу. Розглянуто структуру типової технології з аналізу текстової інформації та визначено її основні елементи. Детально наведено опис кожного елементу технології аналізу та класифікації текстової інформації із залученням методів класифікації та групування ознак. Проведено експериментальні випробування окремих компонентів цієї технології.
dc.description: The task of developing effective text information classification systems requires the thoughtful analysis
and synthesis of variable components of technology. These components strongly affect the practical efficiency
and the requirements to the data. For this purpose, a typical technology was discussed, comparing
the regular "learning from features" approach versus the more advanced "deep learning" approach, that
studies from data. In order to implement the technology, the first approach was tested, which included the
means (methods, algorithms) for analysis of the features of the source text, by applying the dimensionality
transformation, and building model solutions that allow the correct classification of data by a set of features.
As a result, all the steps of the technology are described, which allowed to determine the way of presenting
data in terms of hidden features in data, their presentation in a standard visual form and evaluate
the solution, as well as its practical efficiency, based on this set of features. In a depth study, the informational
core of the document was studied, using the regression and T-stochastic grouping of features for dimensionality
reduction.
The separate results contain estimation of practical efficiency of the algorithms in terms of time and relative
performance for each step of the proposed technology. This estimation gives a possibility to obtain the
best algorithm of intelligent data processing that is useful for a given dataset and application. In order to
estimate the best suited algorithm for separation in reduced dimension an experiment was carried out which
allowed the selection of the best range of data classification algorithms, in particular boosting methods. As
a result of the analysis of the technology, the necessary steps of this technology were discussed and the
classification on real text data was conducted, which allowed to identify the most important stages of the
technology for text classification.
2022-01-01T00:00:00ZЗастосування методу виявлення елементів дисфлюентності мовлення для машинного перекладу транскрибцій усної мовиКрамов, АртемПогорілий, Сергійhttps://ekmair.ukma.edu.ua/handle/123456789/248672023-09-23T13:34:52Z2022-01-01T00:00:00Zdc.title: Застосування методу виявлення елементів дисфлюентності мовлення для машинного перекладу транскрибцій усної мови
dc.contributor.author: Крамов, Артем; Погорілий, Сергій
dc.description.abstract: У роботі розглянуто проблему здійснення нейронного машинного перекладу результатів транскрибування усної мови, які містять елементи дисфлюентності мовлення, з англійської мови на українську. Проаналізовано наявні методи та програмні засоби виявлення елементів дисфлюентності мовлення в англомовних текстах. Створено синтетичний розмічений корпус, що містить оригінальні версії документів та їхні модифіковані версії відповідно до визначених типів дисфлюентності мовлення. Здійснено експериментальну перевірку ефективності застосування методу виявлення елементів дисфлюентності мовлення для вдосконалення перекладу усної мови на основі застосування моделей нейронного машинного перекладу для пари англійської та української мов. Отримані результати свідчать про доцільність використання зазначеного методу для попереднього оброблення результатів транскрибування діалогів для створення коректних когерентних перекладів за допомогою зазначених моделей машинного перекладу.
dc.description: Neural machine translation falls into the category of natural language processing tasks. Despite the availability
of a big number of research papers that are devoted to the improvement of the quality of the machine
translation of documents, the problem of the translation of the spoken language that contains the elements of the
disfluency speech is still an actual task, especially for low-resource languages like the Ukrainian language. In
this paper, the problem of the neural machine translation of the transcription results of the spoken language that
incorporate different elements of the disfluency speech has been considered in the case of the translation from the
English language to the Ukrainian language. Different methods and software libraries for the detection of the
elements of disfluency speech in English texts have been analyzed. Due to the lack of open-access corpora of the
speech disfluency samples, a new synthetic labeled corpus has been created. The created corpus contains both
the original version of a document and its modified version according to the different types of speech disfluency:
filler words (uh, ah, etc.) and phrases (you know, I mean), reparandum-repair pairs (cases when a speaker corrects
himself during the speech). The experimental verification of the effectiveness of the usage of the method of
disfluency speech detection for the improvement of the machine translation of the spoken language has been
performed for the pair of English and Ukrainian languages. It has been shown that the current state-of-the-art
neural translation models cannot produce the appropriate translation of the elements of speech disfluency, especially,
in the reparandum-repair cases. The results obtained may indicate that the mentioned method of disfluency
speech detection can be used for the previous processing of the transcriptions of spoken dialogues for the creation
of coherent translations by the usage of the different models of neural machine translation.
2022-01-01T00:00:00Z