PROBLEMS IN PROGRAMMING
Not a member yet
761 research outputs found
Sort by
Розподілене семантичне моделювання: переглянута техніка для навчання моделей простору термінів / слів із застосуванням онтологічного підходу
We design a new technique for the distributional semantic modeling with a neural network-based approach to learn distributed term representations (or term embeddings) – term vector space models as a result, inspired by the recent ontology-related approach (using different types of contextual knowledge such as syntactic knowledge, terminological knowledge, semantic knowledge, etc.) to the identification of terms (term extraction) and relations between them (relation extraction) called semantic pre-processing technology – SPT. Our method relies on automatic term extraction from the natural language texts and subsequent formation of the problem-oriented or application-oriented (also deeply annotated) text corpora where the fundamental entity is the term (includes non-compositional and compositional terms). This gives us an opportunity to changeover from distributed word representations (or word embeddings) to distributed term representations (or term embeddings). The main practical result of our work is the development kit (set of toolkits represented as web service APIs and web application), which provides all necessary routines for the basic linguistic pre-processing and the semantic pre-processing of the natural language texts in Ukrainian for future training of term vector space models.Problems in programming 2020; 2-3: 341-351 В работе предложен новый метод дистрибутивно-семантического моделирования с элементами онтологического инжиниринга (а именно, автоматическое извлечение терминов) для обучения предсказательных моделей дистрибутивной семантики с использованием векторного представления терминов – term embeddings. В основе предложенного метода лежит новая технология вычислительной/математической лингвистики для обработки естественно-языковых текстов, получившая название – технология семантического пре-процессинга текстов. Технология семантического пре-процессинга текстов основана на автоматическом синтактико-семантическом анализе естественно-языковых текстов, в частности, автоматическом извлечении терминов (их идентификация, валидация и разметка) с последующим формированием проблемно-ориентированных, глубоко аннотированных текстовых корпусов, в которых фундаментальной сущностью является термин (включая композиционные термины). Это даёт возможность перейти от распределенного/векторного представления слов к распределенному/векторному представлению терминов. Практическим результатом работы является разработанный набор инструментальных/программных средств (в виде веб-сервисов и веб-приложения), который обеспечивает выполнение всех необходимых процедур и функций для реализации технологий базовой лингвистической предобработки и семантического пре-процессинга естественно-языковых текстов на украинском языке с последующим обучением дистрибутивно-семантических моделей векторного представления терминов.Problems in programming 2020; 2-3: 341-351В роботі запропоновано новий метод дистрибутивно-семантичного моделювання з елементами онтологічного інжинірингу (а саме, автоматичне добування термінів) для навчання передбачуваних моделей дистрибутивної семантики з використанням векторного представлення термінів – term embeddings. В основі запропонованого методу лежить нова технологія обчислювальної/математичної лінгвістики для обробки природномовних текстів, що отримала назву – технологія семантичного пре-процесингу текстів. Технологія семантичного пре-процесингу текстів базується на автоматичному синтактико-семантичному аналізі природномовних текстів, зокрема, автоматичному добуванні/виокремленні (їх ідентифікація, валідація та розмітка) термінів з подальшим формуванням проблемно-орієнтованих, глибоко анотованих текстових корпусів, в яких фундаментальною сутністю є термін (включаючи композиційні терміни). Це дає можливість перейти від розподіленого/векторного представлення слів до розподіленого/векторного представлення термінів. Практичним результатом роботи є розроблений набір інструментальних/програмних засобів (у вигляді веб-сервісів і веб-застосунку), який забезпечує виконання всіх необхідних процедур і функцій для реалізації технологій базової лінгвістичної попередньої обробки та семантичного пре-процесингу природномовних текстів українською мовою з подальшим навчанням дистрибутивно-семантичних моделей векторного представлення термінів.Problems in programming 2020; 2-3: 341-35
Практичний аспект використання штучної інтелектуальної технології для побудови багатовимірної функції CFAR для радіолокатора LPI з розумною обробкою
The problem of the development of modern mobile smart-handled LPI radars using artificial intelligence technologies, the main difference of which is the construction of the CFAR function, which takes into account the influence of external and internal factors and requirements for the purpose, also distinguishes the developed radar among others in its class. The analysis of the publications was showed a great interest in modern radar systems and the lack of a unified approach to solving this problem. The purpose of the article is to reduce this gap, from collecting information from radar sensors and internal sensors to construct a generic multidimensional CFAR function and for organize its effect on the receiving and transmitting part of the radar. The application of artificial intelligence technologies in the construction of a modeling complex of LPI radars with CFAR function and their debugging in real time is covered.Problems in programming 2020; 2-3: 304-312 Рассмотрена проблема разработки современных мобильных интеллектуальных LPI радаров, используя технологии искусственного интеллекта, основное отличие которых заключается в построении функции CFAR, учитывающий влияние внешних и внутренних факторов и требования по назначению, также она отличает разрабатываемый радар среди других в своём классе. Проведённый анализ публикаций показал большую заинтересованность современными радарными системами и отсутствие единого подхода к разрешению этой проблемы. Цель статьи - уменьшить этот пробел, начиная по сбору информации от радарных сенсоров и внутренних датчиков для построения обобщающей многомерной функции CFAR и организации её влияния на приёмную и передающую часть радара. Освещены применения технологий искусственного интеллекта при построении моделирующего комплекса LPI радаров с функцией CFAR и их отладки в реальном масштабе времени.Problems in programming 2020; 2-3: 304-312Розглянуто проблему розробки сучасних мобільних інтелектуальних LPI радарів використовуючи технології штучного інтелекту, основна відмінність яких полягає в побудові функції CFAR, що враховує вплив зовнішніх та внутрішніх факторів і вимоги по призначенню, також вона вирізняє розроблюваний радар серед інших у своєму класі. Проведений аналіз публікацій показав велику зацікавленість сучасними радарними системами і відсутність єдиного підходу до розв’язання цієї проблеми. Мета статті – зменшити цю прогалину, починаючи зі збору інформації від радарних сенсорів та внутрішніх датчиків для побудови узагальнюючої багатовимірної функції CFAR та організації її впливу на приймальну і передавальну частину радару. Висвітлено застосування технологій штучного інтелекту при побудові моделюючого комплексу LPI радарів з функцією CFAR та їх відлагодження в реальному масштабі часу. Problems in programming 2020; 2-3: 304-31
Опис списків і множин в метамові нормальних форм знань
Lists use for representation of various knowledge. As lists it comfortably to present formulas, functions, trees, columns, great numbers and many other difficult objects. Great number - one of the most essential structures of data, used both in mathematics, and in programming. The formalization of lists, list-based predicates and set-based predicates in the meta-language of normal forms of knowledge is presented, based on the known Prolog-formalizations of these concepts, which use a list-domain. Among the described list-based predicates are the following: adding an element to the list, removing an element, finding the last element of a list, finding adjacent elements in a list, concatenation of lists, reversing a list, palindrome, etc. Using the list-domain, the set-based predicates are described as follows: converting a list into a set, checking if an element is in a set, concatenation, intersection, difference, symmetrical difference, identity, complement of sets, relation of subset, proper subset. Problems in programming 2020; 1: 03-16Предложена формализация списков, предикатов на списках и множествах в метаязыке нормальных форм знаний, базируясь на известных Пролог-формализациях этих понятий, использующих списковый домен. Среди предикатов на списках описаны: добавление элемента, удаление элемента, поиск последнего элемента, поиск соседних элементов, конкатенация списков, реверс и др. Используя списковый домен описаны предикаты на множествах: превращения списка в множество, принадлежности элемента множеству, объединения, пересечения, разности, симметрической разности, совпадения, дополнения множеств.Problems in programming 2020; 1: 03-16Списки використовують для подання всіляких знань. У вигляді списків зручно представляти формули, функції, дерева, графи, множини й багато інших складних об'єктів. Множина – одна з найбільш важливих структур даних, використовуваних як у математиці, так і в програмуванні. Запропоновано формалізацію у метамові нормальних форм знань списків, предикатів на списках і множинах, базуючись на відомих Пролог-формалізаціях цих понять, що використовують списковий домен. Серед предикатів на списках описано: додавання елемента, видалення елемента, пошук останнього елемента, пошук сусідніх елементів, конкатенація списків, реверс, паліндром, видалення всіх входжень елемента і ін. Використовуючи списковий домен описано предикати на множинах: перетворення списку в множину, приналежність елемента множині, об'єднання, перетин, різниця, симетрична різниця, збіг, доповнення множин, відношення підмножини, власної підмножини.Problems in programming 2020; 1: 03-1
Секвенційні числення першопорядкових логік часткових предикатів з розширеними реномінаціями та композицією предикатного доповнення
We study new classes of program-oriented logical formalisms – pure first-order logics of quasiary predicates with extended renominations and a composition of predicate complement. For these logics, various logical consequence relations are specified and corresponding calculi of sequent type are constructed. We define basic sequent forms for the specified calculi and closeness conditions. The soundness, completeness, and counter-model existence theorems are proved for the introduced calculi.Problems in programming 2020; 2-3: 182-197Исследованы новые классы программно-ориентированных логик – чистые первопорядковые логики частичных квазиарных предикатов с расширенными реноминациями и композицией предикатного дополнения. Описаны отношення логического следствия в таких логиках, для этих отношений построены исчисления секвенциального типа. Приведены базовые секвенциальные формы этих исчислений и условия замкнутости секвенций. Для предложенных исчислений доказаны теоремы корректности, теоремы о существовании контрмоделей и теоремы полноты.Problems in programming 2020; 2-3: 182-197Досліджено нові класи програмно-орієнтованих логік – чисті першопорядкові логіки часткових квазіарних предикатів з розширеними реномінаціями та композицією предикатного доповнення. Описано відношення логічного наслідку в таких логіках, для цих відношень побудовано числення секвенційного типу. Наведено базові секвенційні форми цих числень та умови замкненості секвенцій. Для пропонованих числень доведено теореми коректності, теореми про існування контрмоделей та теореми повноти.Problems in programming 2020; 2-3: 182-19
Застосування технології глибинного навчання для побудови інтелектуальних автономних машин
One of the most common tasks that arise in building intelligent machine vision systems for intellectually autonomous machines is the problems of classification and regression. Classification problems are used for the reflexive action of autonomous machines. Prediction tasks can be used to build machine vision systems to provide intelligent autonomous machines with environmental knowledge, which in turn is important for planned predictable movements. Defining a class of task instances is an important procedure for the effective design of deep learning systems. In this context, the possibility of using a multilayered neural network as a regressor to construct elementary functional mappings is explored for further prediction. The study outlines the peculiarities of functioning and configuration of a specialized robotics system, considered in this paper as an intelligent autonomous machine or physical agent, generates a set of data points for elementary functions, analytical modeling and modeling of training systems. Input graph was constructed, neural network architecture was defined, gradient descent algorithm was implemented, and output schedules were finally constructed: learning process, results prediction and comparative graph of predicted results superimposed on the input graph. As a result of the study, an assessment of the machine's intellectual ability to predict was made.Problems in programming 2020; 2-3: 407-418Одними из наиболее частыми задачами, которые встречаются в построении интеллектуальных систем машинного зрения для построения автономных машин являются задачи классификации и регрессии. Решение задач классификации используются для рефлекторных действий автономных машин. А решения задач прогнозирования можно применять для построения систем машинного зрения для наделения интеллектуальных автономных машин знаниями из окружающей среды, которые в свою очередь, важны для запланированных прогнозируемых движений. Определение класса экземпляров задач является важной процедурой для эффективного проектирования систем глубоко обучения. В этих рамках в работе исследована возможность применения многослойной нейроной сети, в качестве регрессора для построения элементарных функциональных отображений для дальнейшего прогнозирования. В исследовании обозначены особенности функционирования и комплектации специализированной робототехнической системы, которая рассматривается в данной работе, как интеллектуальная автономная машина или физический агент, сгенерированный набор данных точек по элементарным функциям, выполняются аналитическое моделирование и обучающее моделирование. Построен график входных данных, определена архитектура нейронной сети, реализован алгоритм метода градиентного спуска и напоследок построены выходные графики: процесса обучения, прогнозирования результатов и сравнительный график прогнозируемых результатов наложенного на график входных данных. В результате исследования проведена оценка интеллектуальных возможностей машины в прогнозируемых движений.Problems in programming 2020; 2-3: 407-418Одними з найбільш частими задачами, що зустрічаються у побудові інтелектуальних систем машинного зору для побудови інтелектуальних автономних машин є задачі класифікації та регресії. Розв'язання задач класифікації використовуються для рефлекторних дій автономних машин. А розв'язання задач прогнозування можна застосовувати для побудови систем машинного зору для наділення інтелектуальних автономних машин знаннями з довкілля, які своєю чергою, важливі для запланованих прогнозованих рухів. Визначення класу екземплярів задач є важливою процедурою для ефективного проектування систем глибинного навчання. В цих рамках у роботі досліджено можливість застосування багатошарової нейронної мережі, в якості регресора для побудови елементарних функціональних відображень для подальшого прогнозування. У дослідженні окреслено особливості функціонування та комплектації спеціалізованої робототехнічної системи, яка розглядається у даній роботі, як інтелектуальна автономна машина або фізичний агент, згенерований набір даних точок за елементарними функціями, виконуються аналітичне моделювання та моделювання систем що навчаються. Побудовано графік вхідних даних, визначено архітектуру нейронної мережі, реалізовано алгоритм метода градієнтного спуску і на останок побудовані вихідні графіки: процесу навчання, прогнозування результатів та порівняльний графік прогнозованих результатів накладений на графік вхідних даних. У результаті дослідження проведено оцінку інтелектуальних можливостей машини до запланованих рухів.Problems in programming 2020; 2-3: 407-418
Метод отримання інформації з онтології на основі аналізу фрази природною мовою
A method for phrases analyzing in natural languages of inflective type (Ukrainian and Russian) has been developed. The method allows one to outline main expressed ideas and groups of words in the text by which they are stated. The semantic trees of propositions formed in this way, each of which expresses one specific idea, are a convenient source material for constructing queries to the ontology in the SPARQL language. The analysis algorithm is based on the following sequence of basic steps: word tokenize, determining of marker words and phrases, identifying available type of proposition, identifying nouns groups, building a syntactic graph of a sentence, building semantic trees of propositions based on existing types of propositions, substituting parameters from semantic trees of propositions in the corresponding SPARQL query templates. The choice of an appropriate template depends on the type of proposition expressed by a given semantic tree of a proposition. The sets of concepts received as an answer are tied as corresponding answers to the previously defined semantic tree of proposition. In case of non-receipt of information from the ontology, the reduction of noun groups is carried out to express more general concepts and the building queries using them. This allows us to get some answer, although not as accurate as when we use the full noun group. The use of SPARQL query templates requires an a priori known ontology structure, which is also proposed in this paper. Such a system is applicable for dialogue using chat-bots or for automatically receiving answers to questions from the text.Problems in programming 2020; 2-3: 322-330Разработан метод анализа фраз на естественных языках флективного типа (украинский и русский), позволяющий выделить в предложениях основные идеи и группы слов, при помощи которых они излагаются. Сформированные таким образом семантические деревья высказываний, каждое из которых выражает одну конкретную идею, являются удобным исходным материалом для построения запросов к онтологии на языке SPARQL. Метод анализа предложений включает следующую последовательность основных этапов: разбиение на слова, выделение маркерных слов и словосочетаний, определение типа высказывания, выделение именных групп, составление синтаксического графа предложения, построение семантических деревьев высказываний, основанных на имеющихся типах высказываний, подстановка параметров из семантических деревьев высказываний в соответствующие шаблоны SPARQL запросов. Выбор соответствующего шаблона запроса зависит от типа высказывания, выраженного данным семантическим деревом высказывания. Понятия, полученные в качестве ответа на запрос, связываются с соответствующим семантическим деревом высказывания. В случае неполучения информации из онтологии, производится редукция именных групп для выражения более общих понятий и построение запросов с их использованием. Это позволяет всегда получить некоторый ответ, хотя и не столь точный, как при использовании полной именной группы. Использование шаблонов SPARQL запросов требует априорно заданной структуры онтологии, которая также предлагается в данной работе. Такая система применима для ведения диалога с помощью чат-бота, для автоматического получения ответов на вопросы к тексту.Problems in programming 2020; 2-3: 322-330Розроблено метод аналізу природно-мовних речень для мов флективного типу (українська та російська), який дозволяє виділити в реченні основні висловлені ідеї та групи слів, за допомогою яких вони викладаються. Сформовані таким чином семантичні дерева висловлювань, кожне з яких виражає одну конкретну ідею, є зручним вихідним матеріалом для побудови запитів до онтології мовою SPARQL. Метод аналізу речень включає наступну послідовність основних етапів: розбиття на слова, виділення маркерних слів і словосполучень, визначення типу висловлювання, виділення іменних груп, побудова синтаксичного графа речення, побудова семантичних дерев висловлювань, заснованих на наявних типах висловлювань, підстановка параметрів з семантичних дерев висловлювань до відповідних шаблонів SPARQL запитів. Вибір відповідного шаблону запиту залежить від типу висловлювання, яке виражено семантичним деревом висловлення. Отримані в якості відповіді на запит набори понять зв’язуються з відповідним семантичним деревом висловлювання. У разі неотримання інформації з онтології, проводиться редукція іменних груп для вираження більш загальних понять і побудови запитів з їх використанням. Це дозволяє завжди отримати деяку відповідь, хоч і не настільки точну, як при використанні повної іменної групи. Використання шаблонів SPARQL запитів вимагає апріорно заданої структури онтології, яка також пропонується в даній роботі. Така система може бути застосована для організації діалогу з чат-ботом або для автоматичного отримання відповідей на питання до тексту.Problems in programming 2020; 2-3: 322-33
Про один метод витягу даних з слабоструктурованих документів
Linguistic method to solve the problem of data extraction from weakly structured documents is developed, approved, and described in detail in the paper. Sample data were taken from thesis catalogue of Vernadsky National Library of Ukraine. The sequence of all stages is described: document collection choice; document preparation; writing grammar rules for data extraction from text; writing rules for morphology verification; creation of interpretations or bindings rules to data; analysis of parsing results. Linguistic method of data extraction showed many advantages in comparison to the method of data extraction with regular expressions described earlier.Problems in programming 2020; 1: 25-32В работе разработан, подробно описан и практически опробован лингвистический метод решения задачи извлечения данных на примере извлечения данных о персоналиях из слабоструктурированных документов, представленных в общедоступном каталоге авторефератов диссертаций Национальной библиотеки Украины им. В.И. Вернадского. Описана вся последовательность шагов: выбор коллекции документов; подготовка документов; написание правил грамматики для извлечения данных из текста; написание правил проверки морфологии; создание интерпретаций или привязок правил к данным; анализ результатов разбора. Лингвистический метод извлечения выявил ряд преимуществ по сравнению с описанным ранее методом извлечения данных с помощью регулярных выражений.Problems in programming 2020; 1: 25-32В роботі розроблений, докладно описаний і практично випробуваний лінгвістичний метод вирішення задачі витягу даних на прикладі витягу даних про персоналії з слабоструктурованих документів, представлених в загальнодоступному каталозі авторефератів дисертацій Національної бібліотеки України ім. В.І. Вернадського. Описана вся послідовність кроків: вибір колекції документів; підготовка документів; написання правил граматики для отримання даних з тексту; написання правил перевірки морфології; створення інтерпретацій або прив'язок правил до даних; аналіз результатів розбору. Лінгвістичний метод витягу даних виявив ряд переваг в порівнянні з описаним раніше методом отримання даних за допомогою регулярних виразів.Problems in programming 2020; 1: 25-3
Гібридний алгоритм методу Ньютона для розв’язування систем нелінійних рівнянь з блочними матрицями Якобі
Systems of nonlinear equations often arise when modeling processes of different nature. These can be both independent problems describing physical processes and also problems arising at the intermediate stage of solving more complex mathematical problems. Usually, these are high-order tasks with the big count of un-knows, that better take into account the local features of the process or the things that are modeled. In addition, more accurate discrete models allow for more accurate solutions. Usually, the matrices of such problems have a sparse structure. Often the structure of sparse matrices is one of next: band, profile, block-diagonal with bordering, etc. In many cases, the matrices of the discrete problems are symmetric and positively defined or half-defined. The solution of systems of nonlinear equations is performed mainly by iterative methods based on the Newton method, which has a high convergence rate (quadratic) near the solution, provided that the initial approximation lies in the area of gravity of the solution. In this case, the method requires, at each iteration, to calculates the Jacobi matrix and to further solving systems of linear algebraic equations. As a consequence, the complexity of one iteration is. Using the parallel computations in the step of the solving of systems of linear algebraic equations greatly accelerates the process of finding the solution of systems of nonlinear equations. In the paper, a new method for solving systems of nonlinear high-order equations with the Jacobi block matrix is proposed. The basis of the new method is to combine the classical algorithm of the Newton method with an efficient small-tile algorithm for solving systems of linear equations with sparse matrices. The times of solving the systems of nonlinear equations of different orders on the nodes of the SKIT supercomputer are given.Problems in programming 2020; 2-3: 208-217 Системы нелинейных уравнений часто возникают при моделировании процессов различной природы. Это могут быть как самостоятельные задачи, описывающие физические процессы, так и задачи, возникающие на промежуточном этапе решения более сложных математических задач. Обычно это задачи высокого порядка с большим количеством неизвестных, которые лучше учитывают локальные особенности процесса или моделируемого явления. Кроме того, более точные дискретные модели позволяют получить более точные решения. Обычно матрицы таких задач имеют разреженную структуру. Часто структура разреженных матриц является одной из следующих: ленточная, профильная, блочно-диагональная с обрамлением и т. д. Во многих случаях матрицы дискретных задач являются симметричными и положительно определеными или полуопределеными. Решение систем нелинейных уравнений осуществляется в основном итерационными методами на основе метода Ньютона, который имеет высокую скорость сходимости (квадратичную) вблизи решения при условии, что начальное приближение лежит в области гравитации решения. В этом случае метод требует на каждой итерации вычисления матрицы Якоби и дальнейшего решения систем линейных алгебраических уравнений. Как следствие, сложность одной итерации равна . Использование параллельных вычислений на этапе решения систем линейных алгебраических уравнений значительно ускоряет процесс нахождения решения систем нелинейных уравнений. В работе предложен новый метод решения систем нелинейных уравнений высокого порядка с блочной матрицей Якоби. Основой нового метода является объединение классического алгоритма метода Ньютона с эффективным мелко плиточным алгоритмом для решения систем линейных уравнений с разреженными матрицами. Приведены времена решения систем нелинейных уравнений разных порядков на узлах суперкомпьютера СКИТ.Problems in programming 2020; 2-3: 208-217Системи нелінійних рівнянь часто виникають при моделюванні процесів різної природи. Це можуть бути як самостійні задачі, що описують фізичні процеси, так і задачі, що виникають на проміжному етапі вирішення складніших математичних задач. Зазвичай це задачі великих порядків з великою кількістю невідомих, які краще враховують локальні особливості процесу або явища, що моделюється. Крім того, більш точні дискретні моделі дозволяють отримати більш точні розв’язки. Зазвичай матриці таких задач мають розріджену структуру. Часто структура розріджених матриць є однією з наступних: стрічкова, профільна, блочно-діагональна з обрамленням і т. д. У багатьох випадках матриці дискретних задач є симетричними і додатно визначеними або напіввизначеною. Розв’язання систем нелінійних рівнянь здійснюється в основному ітераційними методами на основі методу Ньютона, який має високу швидкість збіжності (квадратичну) поблизу розв’язку за умови, що початкове наближення лежить в області гравітації розв’язку. В цьому випадку метод вимагає на кожній ітерації обчислення матриці Якобі і подальшого розв’язання систем лінійних алгебраїчних рівнянь. Як наслідок, складність однієї ітерації дорівнює . Використання паралельних обчислень на етапі розв’язання систем лінійних алгебраїчних рівнянь значно прискорює процес знаходження розв’язку систем нелінійних рівнянь. У роботі запропоновано новий метод розв’язання систем нелінійних рівнянь високого порядку з блочною матрицею Якобі. Основою нового методу є об'єднання класичного алгоритму методу Ньютона з ефективним дрібно-плитковим алгоритмом для розв’язання систем лінійних рівнянь з розрідженими матрицями. Наведено часи розв’язання систем нелінійних рівнянь різних порядків на вузлах суперкомп'ютера СКІТ. Problems in programming 2020; 2-3: 208-21
Доменний інженерний підхід до аналізу вимог до програмного забезпечення
Requirement analysis is one of the important processes in software development lifecycle management. In Agile approach requirements software models are the basic of generating other software development artifacts. Improving requirements approaches and techniques allows avoiding mistakes in other software development artifacts. Domain engineering fundamentals is the basic for “template oriented” approaches of software development artifacts designing. Reusing domain models and knowledge allows adding details in vertical “model to model” transformation operations, refine generated software development artifacts, organize systematic software reuse and perform many other activities. Paper proposes an approach of requirement analysis based on UML Use Case diagrams transformations into communication ones and the next refinements of them by means of information from domain models. The advantages of the proposed approach is the next: proposed transformation method involves ”many to many” transformation in order to save the semantic of initial model. Domain knowledge are used to complete communication diagram by means of adding details after transformation to them. In order to perform Use case to communication transformation graph representation of software models is chosen.Problems in programming 2020; 2-3: 164-172Анализ требований является важным процессом жизненного цикла разработки программного обеспечения. В гибких методологиях разработки программного обеспечения модели требований являются артефактами разработки программного обеспечения, которые содержат исходную информацию для осуществления дальнейших задач разработки. Совершенствование методик анализа требований позволяет избежать ситуации, когда ошибки артефактов, которые проектируются при анализе требований, переносятся на другие артефакты разработки программного обеспечения. Доменная инженерия обеспечивает фундаментальные основы для внедрения «шаблонно-ориентированных» методик проектирования артефактов разработки программного обеспечения. Повторное использование доменных моделей и знаний позволяет дополнить информацию о структуре модели, имеющей более подробную нотацию после выполнения вертикальной трансформации «из модели в модель», уточнить спроектированный артефакт разработки программного обеспечения, организовать систематическое повторное использование программных модулей и выполнить много других задач. В работе представлена методика анализа требований к программному обеспечению, основанная на трансформации диаграмм прецедентов в диаграммы коммуникаций с их последующим уточнением с помощью информации, содержащейся в доменных моделях. Преимуществом представленной методики по сравнению с существующими является то, что для трансформации используются все составляющие исходной модели с целью перенести ее семантику на результирующую модель. После трансформации выполняется уточнение диаграмм коммуникаций с использованием накопленных знаний про домен. Исходной информацией для трансформации моделей программного обеспечения является их аналитическое представление в графовой форме. Problems in programming 2020; 2-3: 164-172Аналіз вимог є важливим процесом життєвого циклу розробки програмного забезпечення. У гнучких методологіях розробки програмного забезпечення моделі вимог є такими артефактами розробки програмного забезпечення, що містять вихідну інформацію для здійснення подальших завдань розробки. Удосконалення методик аналізу вимог дозволяє уникнути ситуації, коли помилки артефактів, що проектуються при аналізі вимог, переносяться на інші артефакти розробки програмного забезпечення. Доменна інженерія забезпечує фундаментальні основи для впровадження «шаблонно-орієнтованих» методик проектування артефактів розробки програмного забезпечення. Повторне використання доменних моделей та знань дозволяє доповнити інформацію про структуру моделі, що має більш детальну нотацію після виконання вертикальної трансформації «з моделі у модель», уточнити спроектований артефакт розробки програмного забезпечення, організувати систематичне повторне використання програмних модулів та виконати багато інших завдань. У роботі представлено методику аналізу вимог до програмного забезпечення, що базується на трансформації діаграм прецедентів у діаграми комунікацій з їх подальшим уточненням за допомогою інформації, що міститься у доменних моделях. Перевагою представленої методики по зрівнянню з існуючими є те, що для трансформації використовуються всі складові вихідної моделі з метою перенести її семантику на результуючу модель. Після трансформації виконується уточнення діаграм комунікацій із використанням накопичених знань про домен. Вихідною інформацією для трансформації моделей програмного забезпечення їх аналітичне представлення у графовій формі.Problems in programming 2020; 2-3: 164-17
Побудова діагностичної експертно-медичної системи з використанням нейронних мереж
In the article was discussed the methods (decision trees, deep learning algorithms, k-nearest neighbors, neural networks) to create diagnostic expert medical systems. For practice part were developed diagnostic API based on chosen classifiers that implement the algorithms and a study of their work was conducted. Namely, classifiers based on neural networks, decision trees and k-nearest neighbors method were compared. The parameters for the selected classifier were optimized. As a result, were selected parameters on which the data were researched. In addition, the dataset of information of patients who had heart attack was researched to develop a diagnostic system for revealing heart diseases. The diagnostic API for revealing patients’ heart diseases is described. Keywords: diagnostic systems, medical systems, neural networks, decision trees, diagnostic API.Problems in programming 2020; 2-3: 384-391В статье рассмотрено методы (деревья принятия решений, глубинное обучение, метод k-ближайших соседей, нейронные сети) создания диагностических экспертно-медицинские систем. Для практической части создания API были выбраны классификаторы и проведено исследование их работы. А именно были сравнены классификаторы, базирующиеся на нейронных сетях, деревьях принятия решений и методе k-ближайших соседей. Были оптимизированы параметры для этих классификаторов. В результате были отобраны параметры на которых исследовались данные. Также был исследован датасет информации о пациентах, у которых был сердечный приступ, для разработки программной системы диагностирования сердечных болезней. Описано диагностическое API определения сердечных болезней пациентов.Problems in programming 2020; 2-3: 384-391 У статті розглянуто основні методи (дерева прийняття рішень, глибинне навчання, метод k-найближчих сусідів, нейронні мережі) створення діагностичних експертно-медичних систем. Для практичної частини створення API було відібрано декілька класифікаторів та проведено дослідження їх роботи. А саме було порівняно класифікатори засновані на нейронних мережах, деревах прийняття рішень та методі k-найближчих сусідів. Були оптимізовані параметри для обраних класифікаторів. В результаті були відібрані параметри на яких досліджувались дані. Також досліджено збірку даних пацієнтів, які мали серцевий напад, для розробки діагностичної системи визначення наявності хвороб серця. Описано діагностичний API для виявлення хвороб серця у пацієнта.Problems in programming 2020; 2-3: 384-39