PROBLEMS IN PROGRAMMING
Not a member yet
    761 research outputs found

    Про формальний опис типів і структур даних різнорідних програм

    Get PDF
    Examines examines the approaches to the formal submission types and data structures of programming language, subject-oriented languages such as DSL, which are used to describe the diverse programs at Applied-domains. The analysis software specifications ready program with fundamental, general and specific data types for specification some of the concepts and tasks of subject areas.Problems in programming 2011; 2: 50-61Розглядаються підходи щодо формального подання типів і структур даних мов програмування, предметно-орієнтованих мов типу DSL, що використовуються при опису різнорідних програм прикладних доменів. Дається аналіз специфікації готових програм за фундаментальними, загальними та специфічними типами даних при специфікації понять і завдань деяких предметних областей.Problems in programming 2011; 2: 50-6

    Застосування глибокого навчання з підкріпленням для довгострокової динамічної композиції веб-сервісів

    Get PDF
    In the service oriented architecture, software and systems are abstracted as web services to be invoked by other systems. Service composition is a technology, which builds a complex system by combining existing simple services. With the development of service oriented architecture and web service technology, massive web ser vices with the same function begin to spring up. These services are maintained by different organizations and have different quality of service. Thus, how to choose the appropriate service to make the whole system to deliver the best overall quality of service has become a key problem in service composition research. Furthermore, because of the complexity and dynamics of the network environment, quality of service may change over time. Therefore, how to dynamically configure the composition system to adapt to the changing environment and ensure the quality of the composed web service is another problem. To address the above challenges, we propose a service composition approach based on quality of web service rediction and reinforcement learning. Specifi cally, we use long short-term memory neural network to predict the quality of web service hrough reinforcement learning. This approach can be well adapted to a dynamic network environment.Prombles in programming 2025; 2: 40-53У сервісно-орієнтованій архітектурі програмне забезпечення та системи абстрагуються як вебсервіси, які можуть викликатися іншими системами. Композиція сервісу – це технологія, яка будує складну систему шляхом поєднання існуючих простих вебсервісів. Із розвитком сервісно-орієнтованих архітектур та тех нології вебсервісів починають з’являтися масові вебсервіси з однаковими функціями. Вони обслугову ються різними організаціями та мають різну якість обслуговування. Отож, як вибрати відповідні вебсер віси, щоб уся система забезпечувала найкращу загальну якість обслуговування, стало ключовою пробле мою в дослідженні композиції вебсервісів. Крім того, через складність і динаміку мережевого середо вища якість обслуговування з часом може змінюватися. Отже, як динамічно налаштувати систему компо зиції, щоб адаптуватися до мінливого середовища та забезпечити якість складеного вебсервісу є ще од нією проблемою. Для вирішення вищезазначених проблем, пропонується підхід до композиції вебсерві сів, заснований на прогнозуванні якості вебсервісів та навчанні з підкріпленням. Зокрема, ми використо вуємо нейронну мережу довгої короткотривалої пам’яті для прогнозування якості обслуговування, а по тім робимо динамічний вибір вебсервісів за допомогою навчання з підкріпленням. Цей підхід можна до бре адаптувати до динамічного мережевого середовища.Prombles in programming 2025; 2: 40-5

    Розробка методології імплементації транзакцій в розподілених системах з мікросервісною архітектурою

    Get PDF
    The paper describes the analysis of the problems of using microservice architecture in distributed systems. Emphasis is placed on flexibility in the choice of technologies, scalability and organization of teams working on given microservices, technical and domain problems of transaction implementation in comparison with a monolithic system. The main focus is on transactions, as they ensure atomicity, consistency, isolation, and persistence across multiple services. In the process of analyzing modern approaches and solutions for working with transactions in distributed systems, it was found that one of the effective solutions is the use of the Transactional Outbox pattern. Its implementation in the form of Spring starter is presented. The latter is added to the system, configured and facilitates the use of transactions and the publication of events that are part of a transaction in a microservice architecture. The developed methodology for implementing distributed transactions based on message queues, using the above-mentioned starter, is described in detail. The basic configurations and settings of message queues for the correct operation of transactions in distributed systems are definedProblems in programming 2024; 1: 64-76У роботі описано аналіз проблематики використання мікросервісної архітектури в розподілених системах. Наголос зроблено на гнучкості у виборі технологій, масштабованості та організації команд, які працюють над заданими мікросервісами, технічних і доменних проблемах реалізації транзакцій у порівнянні з монолітною системою. Основну увагу приділено транзакціям, оскільки вони забезпечують дотримання атомарності, консистентності, ізольованості та стійкості над декількома сервісами.У процесі аналізу сучасних підходів та рішень для роботи з транзакціями в розподілених системах було виявлено, що одним з ефективних рішень є використання патерну Transactional Outbox. Представлено його реалізацію у вигляді Spring starter. Останній додається до системи, конфігурується та полегшує використання транзакцій і публікацію подій, які є частинами транзакції у мікросервісній ­ архі­тек­турі.Problems in programming 2024; 1: 64-7

    Ідентифікація рівня спорідненості наукових спеціальностей на основі даних системи Dimensions

    Get PDF
    Knowledge about research specialties’ kinship level is needed for solving such problems as: improving current research classification system; detecting similar scientific and educational institutions to set up cooperative relations or perform their reorganization; automatic reviewer assignment for peer reviewing PhD-thesis, papers, grant proposals etc. In this paper research specialties’ kinship level is identified according to Australian and New Zealand standard research classification ANZC-RC-2020. The identification is done using information system Dimensions by analyzing 33.8 million publications for 2019-2023. The level of kinship is assessed by Jaccard index as the ratio of two specialties common publications’ number to the total number of publications in these specialties. It is found, that from 14535 possible pairs of specialties only 131 pairs have significant kinship with Jaccard index greater than 0.05. For 20 pairs among them the kinship level is high, and for 61 pairs – average.Prombles in programming 2024; 1: 77-85Ідентифіковано рівні спорідненості наукових спеціальностей у межах Австралійсько–Новозеландської стандартної класифікації наук ANZCRC-2020. Ідентифікація здійснена з використанням інформаційної системи Dimensions шляхом аналізу 33.8 млн публікацій за 2019–2023 рр. Рівень спорідненості оцінено за індексом Жаккара. Встановлено, що із 14535 можливих пар спеціальностей, лише 131 пара має значиму спорідненість з індексом Жаккара, що перевищує 0.05. З них для 20 пар спеціальностей рівень спорідненості є високим, а для 61 пари – середнім.Prombles in programming 2024; 1: 77-8

    Формальна верифікація властивостей моделі пошуку кореферентних об’єктів на основі дерев рішень

    Get PDF
    The paper examines the problem of coreference resolution, which involves identifying objects - words or phrases in a text, that refer to the same real or imaginary entity. The solution of this task is explored for Ukrainianlanguage texts using decision trees, which autonomously structure themselves based on training data. Unlike other machine learning algorithms such as neural networks, decision trees allow for analysis of their internal structure through graphical representation. This feature facilitates explaining individual results produced by the tree, significantly easing formal verification of their properties. To create decision trees, vector representations of words (such as Elmo) and other linguistic features are used. After formation, decision trees are employed for binary classification of input pairs potentially referring to the same coreferent objects. Based on the obtained binary classifier, coreferent objects are grouped into clusters, followed by an evaluation of the clustering accuracy using specialized metrics. The paper provides a detailed description of the implemented application and the structure of the formed decision tree, which serves as the basis for further analysis. Additionally, the use of transition systems is proposed to construct a high-level specification model for coreference resolution. The transition system-based model enables analysis of application behavior on infinite state sequences, ensuring errorfree execution. Formalization is carried out, and automata models along with linear-temporal logic are used to verify a set of properties of the obtained specification. Büchi automata are created to accept words confirming the properties, and examples as well as counterexamples of the analyzed properties are found. The method defined in the paper serves as the foundation for creating automated analyzers for coreference resolution applications based on decision trees.Prombles in programming 2024; 2-3: 319-325В роботі розглядається проблема пошуку кореферентних об’єктів, яка полягає в знаходженні об'єктів - слів або словосполучень в тексті, які посилаються на один і той же реальний чи уявний об'єкт. Розв'язання цієї задачі розглядається для україномовних текстів, використовуючи дерева рішень, які самостійно формують свою структуру на основі навчальної вибірки. Завдяки можливості графічного представлення дерева рішень, на відмінну від інших алгоритмів машинного навчання, таких як нейронні мережі, стає можливим здійснення аналізу внутрішньої структури. ЇЇ можна використовувати для пояснення окремих результатів роботи дерева, що значно полегшує проведення формальної верифікації їх властивостей. Для створення дерева рішень використовуються векторні представлення слів Elmo та інші лінгвістичні характеристики. Після формування дерева рішень використовуються для бінарної класифікації вхідної пари потенційно кореферентних об'єктів. На основі отриманого бінарного класифікатора здійснюється об'єднання кореферентних об'єктів в кластери та подальша оцінка правильності кластеризації за допомогою спеціальних метрик. В роботі проведено детальний опис реалізованого застосунку та структури сформованого дерева рішень, що є основою для подальшого аналізу. Запропоновано застосування апарату транзиційних систем для побудови високорівневої специфікації моделі пошуку кореферентних об’єктів. Модель на основі транзиційних систем дозволяє виконувати аналіз застосунку на нескінченній послідовності станів, забезпечуючи відсутність помилок в процесі виконання. Проведено формалізацію та використано автоматні моделі та лінійно-темпоральну логіку для верифікації набору властивостей отриманої специфікації. Створено автомати Бюхі, що акцептують слова, які підтверджують властивості, та знайдено приклади та контрприклади властивостей, що аналізуються. Визначений в роботі метод є основою для створення автоматизованих аналізаторів застосунків пошуку кореферентних об’єктів на основі дерев рішень.Prombles in programming 2024; 2-3: 319-32

    Структура алгоритму моделювання оптимального руху складеної динамічної системи

    Get PDF
    The work is devoted to the development of the structure of the algorithm for modeling the optimal movement of complex dynamic systems (SDS) along a branched trajectory. Complex systems are called systems consisting of separate subsystems, the flight trajectories of which differ and are called branched. Branched trajectories should consist of trajectory segments, the first of which will be common to the entire SDS, and the other trajectory branches will be different, as each subsystem moves to its goal along its own trajectory segment. The proposed algorithm makes it possible to optimize such trajectories in real time and to carry out operational correction of SDS trajectories in the event of the occurrence of unpredictable influencing factors. It is known that the effectiveness of the SDS functioning between structural transformations depends on the coordinates of the mutual location and speed of each subsystem and the choice of optimal moments of time for structural transformations. The efficiency of determining these parameters during the flight is fundamentally important. The necessary conditions for the optimality of the trajectory of the SDS movement are found, which are universal for problems with any finite number of trajectory branches. The implementation of the proposed conditions will allow to reduce the number of computational procedures in the control calculations in conditions of uncertainty of the initial conditions. These conditions are the methodological basis for the development of computational algorithms for modeling the optimal trajectories of the SDS movement. The necessary optimality conditions have a clear physical meaning and are technological and user-friendly. The results of the research presented in the article are important and relevant for the construction of the laws of trajectory control of existing and prospective SDS.Prombles in programming 2024; 2-3: 69-77Робота присвячена розробці структури алгоритму моделювання оптимального руху складеної динамічної систем (СДС) по розгалуженій траєкторії. Складеними називають системи, що складаються з окремих підсистем, траєкторії польоту яких відрізняються та отримали назву розгалужених. Розгалужені траєкторії мають складаються із ділянок траєкторії, перші з яких будуть спільними для всієї СДС, а інші гілки траєкторії будуть відрізнятись, оскільки кожна підсистема рухається до своєї цілі по своїй ділянці траєкторії. Запропонований алгоритм дозволяє в реальному часі оптимізувати такі траєкторії та здійснювати оперативну корекцію траєкторій СДС при виникненні непередбачуваних факторів впливу. Відомо, що ефективність функціонування СДС між структурними перетвореннями залежить від координат взаємного розташування і швидкості кожної підсистеми та вибору оптимальних моментів часу для структурних перетворень. Принципово важливим є оперативність визначення цих параметрів в процесі польоту. Знайдено необхідні умови оптимальності траєкторії руху СДС, які є універсальними для задач з будь-яким кінцевим числом гілок траєкторії. Реалізація запропонованих умов дозволить зменшити кількість обчислювальних процедур при розрахунках керування в умовах невизначеності початкових умов. Ці умови є методологічною основою для розроблення обчислювальних алгоритмів моделювання оптимальних траєкторій руху СДС. Необхідні умови оптимальності мають чіткий фізичний зміст і є технологічними та зручними для використання. Результати досліджень, що представлені в статті, є важливими і актуальними для побудови законів траєкторного керування існуючими і перспективними СДС.Prombles in programming 2024; 2-3: 69-7

    Інструментальні засоби конструктивно-продукційного моделювання

    Get PDF
    The concept of constructive-synthesizing modelling is presented. The basic principles are outlined. The classification of constructors by the purpose of constructing and external relations is presented. The types of constructors are defined: generating, transforming, analyzing, optimizing/adapting, algorithmic; standalone, parametric, interactive, multi-designer. Achievements in the application of the constructive-synthesizing approach to solving a number of problems are presented. The tool software environment «Constructor 1.0» has been developed for the formation of constructors by means of the Python language using Qt technology to ensure cross-platform compatibility. for the formation of constructors. On the example of the geometric fractal formation , its functionality is demonstrated. First of all, it concerns the formation of such constructors as a standalone generating, parametric transforming, and unifying multiconstructor. The features of expending transformations in the formation of constructors are shown: specification, interpretation and concretization. The specialization of constructors determines the subject area of constuctiong, the necessary data and operations. To ensure the functioning of the constructing processes, all constructor operations must be interpreted by the corresponding procedures of the algorithmic constructor. The combination of the constructor (model of elements and possible operations) with the algorithmic constructor (model of the executor) forms a constructive system capable of autonomously performing constructing by an internal executor. In concretization, substitution rules and initial conditions are specified. The developed software environment provides a certain flexibility in terms of possible modifications of constructors and constructing processes. The developed tools can be the basis for modelling various structures and constructing processes, especially in the tasks of their optimization and structural adaptation.Problems in programming 2024; 2-3: 107-115Представлена концепція конструктивно-продукційного моделювання. Викладені основні принципи. Представлена класифікація конструкторів за метою конструювання та зовнішніми зв’язками. Визначені типи конструкторів: породжуючий, трансформуючий, аналізуючий, оптимізуючий/адаптуючий, алгоритмічний; автономний, параметричний, інтерактивний, мультиконструктор. Представлені досягнення із застосування конструктивно-продукційного підходу у рішенні низки задач. Для формування конструкторів розроблено інструментальне програмне середовище «Конструктор 1.0» засобами мови Python із використанням технології Qt для забезпечення кросплатформеності для формування конструкторів. На прикладі формування геометричних фракталів продемонстровані його функціональні можливості. Насамперед це стосується формування таких конструкторів як автономний породжуючий, параметричний трансфомуючий, та об’єднуючий їх мультиконструктор. Показані особливості уточнюючих перетворень при формуванні конструкторів: спеціалізації, інтерпретації та конкретизації. Спеціалізація конструкторів визначає предметну область конструювання, необхідні дані і операції. Для забезпечення функціонування процесів конструювання всі операції конструкторів повинні інтерпретуватись відповідними процедурами алгоритмічного конструктору. Поєднанням конструктора (моделі елементів і можливих операцій) з алгоритмічним (моделі виконавця) формується конструктивна система, здатна автономно виконувати конструювання внутрішнім виконавцем. У проуесі конкретизації задаються правила підстановки та початкові умови. Розроблене програмне середовище забезпечує певну гнучкість щодо можливих модифікацій конструкторів і процесів конструювання. Розроблений інструментарій може бути основою для моделювання різних конструкцій і конструктивних процесів, особливо у задачах їх оптимізації та структурної адаптації.Problems in programming 2024; 2-3: 107-11

    Програмна система розрахунку калорій

    Get PDF
    This article describes the concept and essence of healthy nutrition, approaches to data analysis and reporting of food intake taking into account personal data, the role and features of creating software systems for calculating calories using various architectural solutions. As a result of the comparative analysis of the specified systems, a monolithic architecture was chosen, on the basis of which a software system for counting calories was designed, implemented, and tested using the Microsoft Visual Studio 2022 development environment; .Net Framework version 7.0.0; ADO.NET technologies; Windows Presentation Foundation (WPF); C# programming language; XAML markup languages; Microsoft SQL Server 2019 database in order to improve the quality of user experience.Prombles in programming 2024; 2-3: 199-206У роботі описано поняття і суть здорового харчування, підходи щодо аналізу даних і звітності харчового раціону з урахуванням персональних даних, роль та особливості створення програмних систем розрахунку калорій із використанням різних архітектурних рішень. У результаті порівняльного аналізу вказаних систем було обрано монолітну архітектуру, на базі якої було спроєктовано, реалізовано, протестовано програмну систему підрахунку калорій із використанням середовища розроблення Microsoft Visual Studio 2022; .Net Framework версії 7.0.0; технології ADO.NET; Windows Presentation Foundation (WPF); мови програмування C#; мови розмітки XAML; бази даних Microsoft SQL Server 2019 з метою покращення якості харчування користувачів.Prombles in programming 2024; 2-3: 199-20

    Модальні логіки часткових квазіарних предикатів з рівністю та cеквенційні числення цих логік

    Get PDF
    The aim of the work is to study new classes of program-oriented logical formalisms of the modal type – pure first-order modal logics of partial quasiary predicates without monotonicity condition and enriched with equality predicates. Modal logics can be used to describe and model various subject areas, artificial intelligence systems, information and software systems. The limitations of the classical predicate logic on which traditional modal logics are based determine the relevance of the problem of introducing new program-oriented logical formalisms. Such are composition-nominative modal logics, which synthesize facilities of traditional modal logics and logics of partial quasiary predicates. One of their important classes are transitional modal logics (TML), they reflect the aspect of change and evolution of subject areas. We denote pure first-order TML by TMLQ. In this paper two types of TMLQ with equality are considered: TMLQ (with strong equality predicates xy), and TMLQ= (with weak equality predicates =xy). For quantifier elimination in logics of non-monotonic predicates special predicates which indicate whether a component with a corresponding name has a value in the input data are required. The use of these predicates is a characteristic feature of both TMLQ and TMLQ=. Total indicator predicates determine the presence or absence of a component with a certain name, while partial indicator predicates signalize only the presence of such a component. Thus, total indicator predicates are introduced as special parametric 0-ary compositions Ez in TMLQ, and partial indicator predicates are represented in TMLQ= as predicates =xx. Another feature of TMLQ and TMLQ= is the use of the extended renomination compositions. In this paper we describe semantic models and languages of TMLQ and TMLQ=. Particular attention is paid to the properties related to equality predicates, substitution of equals in TMLQ and TMLQ= is described. A number of logical consequence relations for these logics are defined on sets of formulas specified with states. On this semantic basis, the corresponding sequent type calculi are proposed for the investigated logics.Prombles in programming 2024; 2-3: 19-27Робота присвячена дослідженню нових класів програмно-орієнтованих логічних формалізмів модального типу – чистих першопорядкових модальних логік часткових квазіарних предикатів зі знятою умовою монотонності та збагачених предикатами рівності. Апарат модальних логік використовується для опису й моделювання різноманітних предметних областей, cистем штучного інтелекту, інформаційних та програмних систем. Обмеження класичної логіки предикатів, на якій базуються традиційні модальні логіки, зумовлюють актуальність проблеми побудови нових, програмно-орієнтованих логічних формалізмів. Такими є композиційно-номінативні модальні логіки, які синтезують можливості традиційних модальних логік і логік часткових квазіарних предикатів. Важливим їх класом є транзиційні модальні логіки (TMЛ), які відбивають аспект зміни й розвитку предметних областей. Чисті першопорядкові ТМЛ названо TMLQ. В роботі запропоновано два різновиди TMLQ з рівністю: з предикатами строгої рівності xy, їх названо TMLQ, та слабкої рівності =xy, їх названо TMLQ=. Для елімінації кванторів в логіках немонотонних предикатів потрібні спеціальні предикати-індикатори наявності у вхідних даних компоненти з відповідним предметним іменем. Використання цих предикатів є характерною особливістю TMLQ та TMLQ=. Тотальні предикати-індикатори визначають наявність чи відсутність компоненти з певним іменем, а часткові предикати-індикатори визначають лише наявність такої компоненти. Тотальні предикати-індикатори Ez фігурують в TMLQ як спеціальні 0- арні композиції, часткові предикати-індикатори вже присутні в TMLQ= як предикати =xx. Ще одна особливість TMLQ та TMLQ= – використання композицій розширеної реномінації. В роботі описано семантичні моделі та мови TMLQ та TMLQ=. Увагу акцентовано на властивостях, пов’язаних з предикатами рівності, описано особливості заміни рівних в TMLQ та в TMLQ=. Для цих логік визначено низку відношень логічного наслідку для множин специфікованих станами формул. На цій семантичній основі для досліджених логік запропоновано відповідні числення секвенційного типу.  Prombles in programming 2024; 2-3: 19-2

    AGILE підхід аналізу вимог із використанням технологій штучного інтелекту

    Get PDF
    An approach to requirements analysis using artificial intelligence technologies, taking into account the specifics of the AGILE methodology is proposed in this paper. The approach corresponds to the Model-Driven Methodology, in which the main artifacts of software development are software models represented by UML diagrams. The proposed approach corresponds to the key ideas of the AGILE manifesto, and is oriented towards the fact that AGILE has a priority to satisfy a customer when he changes requirements. Artificial intelligence technologies serve to prepare initial information for the “Text to Model Transformation” of the requirements specification into those types of UML diagrams (Use Case and Sequence), which are used for requirements analysis. The choice of the UML diagram visualization environment is substantiated.Problems in programming 2024; 2-3: 140-146У роботі пропонується підхід до аналізу вимог за допомогою технологій штучного інтелекту, враховуючи особливості методології AGILE. Підхід відповідає модельно-оріентованій методології розробки програмного забезпечення, у якому основними артефактами розробки програмного забезпечення є моделі програмного забезпечення, що представляються UML діаграмами. Запропонований підхід відповідає ключовим ідеям AGILE manifesto і орієнтований на те, що вимоги замовника можуть часто змінюватися. Технології штучного інтелекту служать для підготовки початкової інформації для "перетворення з тексту у модель" специфікації вимог у ті види діаграм UML (Use Case та Sequence), які використовуються для аналізу вимог. Обґрунтовано вибір середовища візуалізації UML діаграм.Problems in programming 2024; 2-3: 140-14

    537

    full texts

    761

    metadata records
    Updated in last 30 days.
    PROBLEMS IN PROGRAMMING
    Access Repository Dashboard
    Do you manage Open Research Online? Become a CORE Member to access insider analytics, issue reports and manage access to outputs from your repository in the CORE Repository Dashboard! 👇