Методи візуального програмування Петрі-об'єктних моделей
dc.contributor.advisor | Жаріков, Едуард В‘ячеславович | |
dc.contributor.author | Дифучин, Антон Юрійович | |
dc.date.accessioned | 2023-06-09T13:08:17Z | |
dc.date.available | 2023-06-09T13:08:17Z | |
dc.date.issued | 2022 | |
dc.description.abstract | Дисертаційна робота присвячена розробці методів та засобів візуального програмування моделей дискретно-подійних систем, формалізованих у вигляді Петрі-об‘єктної моделі. Візуальне програмування є способом розробки програм, що використовує візуальні об‘єкти для опису завдання на виконання обчислень. Для того, щоб візуальне представлення стало візуальним програмуванням необхідно гарантувати однозначне перетворення візуального представлення у обчислення. Таку однозначність перетворення гарантує розробка формальної мови програмування. На сьогоднішній день положення теорії формальних мов сформульовані в припущенні, що мова є текстовою, і адаптації цих положень до мови програмування, в якій символами є елементи візуального представлення, є невирішеним завданням. Особливе місце візуальні засоби представлення займають у програмних засобах з імітаційного моделювання, оскільки слугують не тільки для конструювання моделі, але й для її відлагодження та представлення кінцевого результату імітації. Існуючі програмні засоби з імітаційного моделювання широко застосовують графічні редактори для конструювання моделі з блоків або з більш низькорівневих елементів, наприклад, елементів мережі Петрі. Процес розробки моделі у графічному редакторі є трудомістким і довготривалим, а у випадку великої кількості елементів часто є неможливим, оскільки потребує великого обсягу рутинної роботи з елементами та налаштуванням їх параметрів. Імітаційні моделі є одним з потужних інструментів обробки даних з метою пошуку оптимальних умов або короткострокового прогнозування. У поєднанні з даними, що постачаються у реальному часі, вони можуть стати потужним компонентом сучасних систем прийняття рішень та управління. Тому розробка нових методів та програмних засобів, що спрямовані на підвищення ефективності процесу програмної реалізації моделі за рахунок автоматизації кодування, є актуальним науковим завданням. Метою наукового дослідження є підвищення ефективності програмних засобів представлення складних моделей систем для цілей імітаційного моделювання за рахунок зменшення складності конструювання моделі та збільшення швидкодії алгоритмів імітації, зручності сприйняття моделі, зменшення кількості помилок при створенні зв‘язків між елементами моделі та зменшення часу на модифікацію моделі. У першому розділі наведено огляд існуючих програмних засобів моделювання систем стохастичними мережа Петрі та обґрунтовано розробку мови візуального програмування. Виявлено, що графічні редактори не вирішують низку проблем: неможливість коригування параметрів моделі без коригування її візуального представлення, неможливість тиражування однотипних елементів у великій кількості (оскільки усі вони будуть займати візуальний простір), неможливість тиражування зв‘яків при повторному використанні фрагментів мережі Петрі, неможливість налаштування параметрів елементів без коригування кожного окремого параметра у спеціально відведеному для цього вікні. У другому розділі наведені відомості з теорії стохастичних мереж Петрі та основні теоретичні положення Петрі-об‘єктного моделювання. Формальний опис Петрі-об‘єктної моделі розвинутий за рахунок введення понять конектора Петрі-об‘єктів, групи Петрі-об‘єктів, колекції Петрі-об‘єктів. Введені поняття відкривають можливість тиражування зв‘язків при конструюванні Петріоб‘єктної моделі. Проте відсутність візуального представлення моделі робить процес розробки моделі складним через рутинні та схильні до помилок операції кодування зв‘язків між елементами. У третьому розділі представлена формальна граматика мови Петріоб‘єктного моделювання, яка розроблена. Алфавіт мови складається з графічних елементів візуального представлення, а дозволені мовою набори графічних елементів утворюють лексеми мови. Синтаксис мови визначений правилами виведення граматики, в основі яких правила утворення триплетів елементів. Для розробленої контекстно-вільної граматики встановлено, що вона є однозначною і приведеною. Наведений приклад розробки моделі інформаційної системи розробленою мовою. У четвертому розділі представлена розробка транслятора мови візуального програмування Петрі-об‘єктних моделей. На клієнтській частині веб застосування реалізована частина транслятора, що відповідає за лексичний та синтаксичний аналіз мовного виразу. На серверній частині веб застосування реалізована частина транслятора, що виконує семантичний аналіз мовного виразу. Для передачі даних між клієнтом та сервером використовується JSON формат. У розділі представлена інтерпретація символів алфавіту мови візуального програмування Петрі-об‘єктних моделей мовою TypeScript. Запуск на обчислення відбувається після перетворення отриманих у форматі JSON даних в об‘єкт PetriObjModel бібліотеки Петрі-об‘єктного моделювання PetriObjLIb. Обчислення Петрі-об‘єктної моделі – це відтворення подій в часі алгоритмом імітації. П’ятий розділ містить результати експериментального дослідження процесу розробки моделей, точності моделювання та швидкодії обчислення моделі. Результати, отримані у дисертаційному дослідженні, містять наукову новизну. Вперше розроблено візуальну мову програмування Петрі-об‘єктних моделей, яка дозволяє спростити процес побудови моделей, підвищити наочність сприйняття моделей та час виконання імітаційного моделювання шляхом організації дворівневого способу побудови моделей. На відміну від існуючих рішень в області імітаційного моделювання, візуальна мова програмування Петрі-об‘єктних моделей надає універсальний та гнучкий інструмент для побудови моделей дискретно-подійних систем, а процес виконання імітаційного моделювання не залежить від обчислювальних ресурсів користувача. Удосконалено Петрі-об‘єктну модель за рахунок введення поняття групи Петрі-об‘єктів, колекції Петрі-об‘єктів та групи колекцій Петрі-об‘єктів, що, на відміну від існуючих засобів представлення імітаційної моделі, надають можливість тиражувати Петрі-об‘єкти з заданими наборами параметрів, тиражувати колекції взаємопов‘язаних Петрі-об‘єктів та тиражувати зв‘язки між Петрі-об‘єктом та групою Петрі-об‘єктів, між Петрі-об‘єктом та групою колекцій Петрі-об‘єктів. За рахунок тиражування однотипних фрагментів моделі та тиражування зв‘язків створюються умови для швидкого конструювання моделей з великою кількістю елементів та значно скорочується обсяг їх візуального представлення. Вперше запропоновано клієнт-серверну архітектуру серед програмного забезпечення з імітаційного моделювання на основі Петрі-об‘єктного підходу, використання якої дозволяє задіяти ресурси віддаленого серверу для проведення імітаційного моделювання для забезпечення стабільного часу виконання, зменшення витрат на інфраструктуру обчислювальних ресурсів серед користувачів та організації спільного доступу до розробки моделей. Результати дисертаційної роботи опубліковано у 7 наукових публікаціях, серед яких 1 стаття у періодичному науковому виданні, проіндексованому у Web of Science Core Collection та Scopus базах даних, 2 статті у фаховому науковому журналі категорії «Б», 1 стаття у фаховому науковому журналі категорії «В», 1 стаття у науковому журналі, проіндексованому GoogleScholar, 2 публікації у матеріалах міжнародних наукових конференцій, проіндексованих у Scopus. | uk |
dc.description.abstractother | Ph.D. thesis is devoted to the development of methods and tools for visual programming of models of discrete-event systems, formalized in the form of a Petriobject model. Visual programming is a way of developing programs that uses visual objects to describe a computational task. In order for the visual representation to become visual programming, it is necessary to guarantee an unambiguous transformation of the visual representation into computations. The development of a formal programming language guarantees such unambiguity of the transformation. Nowadays, the conditions of the theory of formal languages are formulated under the assumption that the language is textual. The adaptation of these conditions to the programming language, in which symbols are elements of visual representation, is an unsolved task. Visual representation tools occupy a special place in software tools for simulation, as they serve not only to construct the model but also to debug it and present the final result of the simulation. Existing software tools for simulation widely use graphic editors to construct a model from blocks or from lower-level elements, for example, Petri net elements. The process of developing a model in a graphic editor is time-consuming, and in the case of a large number of elements, it is often impossible, as it requires a large amount of routine work with the elements and setting their parameters. Simulation models are one of the powerful data processing tools for finding optimal conditions or short-term prediction. Combined with real-time data, they can become a powerful component of modern decision-making and management systems. Therefore, the development of new methods and software tools aimed at increasing the efficiency of the process of software implementation of the model due to the automation of coding is an urgent scientific task. The purpose of scientific research is to increase the effectiveness of software tools for presenting complex models of systems for the purposes of simulation by reducing the complexity of model construction and increasing the speed of simulation algorithms, ease of perception of the model, reducing the number of errors when creating connections between model elements and reducing the time for model modification. The first section provides an overview of existing software tools for systems modeling by stochastic Petri net and substantiates the development of a visual programming language. It was found that graphic editors do not solve a number of problems: the impossibility of adjusting the parameters of the model without adjusting its visual representation, the impossibility of replicating the same type of elements in a large number (since they will all occupy the visual space), the impossibility of replicating connections when reusing fragments of the Petri net, the impossibility setting the parameters of the elements without adjusting each individual parameter in a specially dedicated window. The second section provides information on the theory of stochastic Petri nets and the main theoretical principles of Petri-object modeling. The formal description of the Petri-object model is developed by introducing the concepts of a connector of Petri-objects, a group of Petri-objects, and a collection of Petri-objects. The introduced concepts open up the possibility of replicating connections when constructing a Petri object model. However, the lack of a visual representation of the model makes the process of model development difficult due to the routine and errorprone operations of coding the relationships between elements. The third section presents the formal grammar of the Petri-object modeling language, which has been developed. The alphabet of a language consists of graphic elements of visual representation, and language-allowed sets of graphic elements form lexemes of a language. The syntax of the language is determined by the rules of grammar derivation, which are based on the rules of formation of elements triplets For the developed context-free grammar, it was established that it is unambiguous and reduced. An example of developing an information system model in a developed language is given. The fourth section presents the development of a translator for the visual programming language of Petri-object models. The client side of the web application implements the part of the translator responsible for the lexical and syntactic analysis of the language expression. On the server side of the web application, a part of the translator, which performs semantic analysis of the language expression, is implemented. The JSON format is used for data transfer between the client and the server. The section presents the interpretation of the symbols of the alphabet of the visual programming language of Petri-object models in the TypeScript language. The computation is started after the data received in JSON format is converted into the PetriObjModel object of the Petri-object modeling library PetriObjLIb. Computing a Petri object model is the reproduction of events in time by a simulation algorithm. The fifth section contains the results of an experimental study of the model development process, modeling accuracy, and model computation speed. The results obtained in the research contain scientific novelty. For the first time, a visual programming language for Petri-object models was developed, which allows to simplify the process of building models, to increase the clarity of perception of models and the performance time of simulation by organizing a two-level method of constructing models. Unlike existing solutions in the field of simulation, the visual programming language of Petri-object models provides a universal and flexible tool for constructing models of discrete-event systems, and the process of performing simulation does not depend on the user's computing resources. The Petri-object model has been improved due to the introduction of the concept of a group of Petri-objects, a collection of Petri-objects, and a group of collections of Petri-objects, which, unlike the existing tools of presenting a simulation model, provide the opportunity to replicate Petri-objects with given parameter sets, to replicate collections of interconnected Petri-objects and to replicate relationships between a Petri-object and a group of Petri-objects, between a Petri-object and a group of collections of Petri-objects. Due to the replication of the same type of model fragments and the replication of connections, conditions for fast models construction with a large number of elements are created and the volume of their visual representation is significantly reduced. For the first time, a client-server architecture is proposed among simulation software based on the Petri-object approach, the use of which allows you to use the resources of a remote server to conduct simulation to ensure stable execution time, reduce the cost of the infrastructure of computing resources among users and to organize shared access to the development of models. The results of the dissertation were published in 7 scientific publications, including 1 paper in a periodical scientific publication indexed in the Web of Science Core Collection and Scopus databases, 2 papers in a professional scientific journal of category "B", 1 paper in a professional scientific journal of category "B ", 1 paper in a scientific journal indexed by GoogleScholar, 2 publications in the materials of international scientific conferences indexed in Scopus. | uk |
dc.format.extent | 110 с. | uk |
dc.identifier.citation | Дифучин, А. Ю. Методи візуального програмування Петрі-об'єктних моделей : дис. … д-ра філософії : 121 Інженерія програмного забезпечення / Дифучин Антон Юрійович. – Київ, 2022. – 110 с. | uk |
dc.identifier.uri | https://ela.kpi.ua/handle/123456789/56909 | |
dc.language.iso | uk | uk |
dc.publisher | КПІ ім. Ігоря Сікорського | uk |
dc.publisher.place | Київ | uk |
dc.subject | візуальне програмування | uk |
dc.subject | мова програмування | uk |
dc.subject | формальна граматика | uk |
dc.subject | імітаційне моделювання | uk |
dc.subject | стохастична мережа Петрі | uk |
dc.subject | Петрі-об‘єкт | uk |
dc.subject | stochastic Petri net | uk |
dc.subject | Petri-object | uk |
dc.subject | visual programming | uk |
dc.subject | programming language | uk |
dc.subject | formal grammar | uk |
dc.subject | simulation | uk |
dc.subject.udc | 004.43::004.94 | uk |
dc.title | Методи візуального програмування Петрі-об'єктних моделей | uk |
dc.type | Thesis Doctoral | uk |
Файли
Контейнер файлів
1 - 1 з 1
Вантажиться...
- Назва:
- Dyfuchin_dys.pdf
- Розмір:
- 2.69 MB
- Формат:
- Adobe Portable Document Format
- Опис:
Ліцензійна угода
1 - 1 з 1
Ескіз недоступний
- Назва:
- license.txt
- Розмір:
- 2.99 KB
- Формат:
- Item-specific license agreed upon to submission
- Опис: