Інструментальні засоби конструктивно-продукційного моделювання
Loading...
Date
2024
Journal Title
Journal ISSN
Volume Title
Publisher
Інститут програмних систем НАН України, Київ
Abstract
UKR: Представлена концепція конструктивно-продукційного моделювання. Викладені основні принципи. Представлена класифікація конструкторів за метою конструювання та зовнішніми зв’язками. Визначені типи конструкторів: породжуючий, трансформуючий, аналізуючий, оптимізуючий/адаптуючий, алгоритмічний; автономний, параметричний, інтерактивний, мультиконструктор. Представлені досягнення із застосування конструктивно-продукційного підходу у рішенні низки задач. Для формування конструкторів розроблено інструментальне програмне середовище «Конструктор 1.0» засобами мови Python із використанням технології Qt для забезпечення кросплатформеності для формування конструкторів. На прикладі формування геометричних фракталів продемонстровані його функціональні можливості. Насамперед це стосується формування таких конструкторів як автономний породжуючий, параметричний трансфомуючий, та об’єднуючий їх мультиконструктор. Показані особливості уточнюючих перетворень при формуванні конструкторів: спеціалізації, інтерпретації та конкретизації. Спеціалізація конструкторів визначає предметну область конструювання, необхідні дані і операції. Для забезпечення функціонування процесів конструювання всі операції конструкторів повинні інтерпретуватись відповідними процедурами алгоритмічного конструктору. Поєднанням конструктора (моделі елементів і можливих операцій) з алгоритмічним (моделі виконавця) формується конструктивна система, здатна автономне виконувати конструювання внутрішнім виконавцем. У процесі конкретизації задаються правила підстановки та початкові умови. Розроблене програмне середовище забезпечує певну гнучкість щодо можливих модифікацій конструкторів і процесів конструювання. Розроблений інструментарій може бути основою для моделювання різних конструкцій і конструктивних процесів, особливо у задачах їх оптимізації та структурної адаптації.
ENG: 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.
ENG: 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.
Description
В. Шинкаренко: ORCID 0000-0001-8738-72254; Р. Чигир: ORCID 0000-0002-7439-7368
Keywords
конструктивно-продукційне моделювання, програмне забезпечення, конструктор, алгоритм, формальна граматика, формалізація, constructive-synthesizing modeling, software, constructor, algorithm, formal grammar, formalization, sorting algorithm, sorting, constructivism, genetic algorithm, chromosome, binary tree, КІТ
Citation
Шинкаренко В. І., Чигир Р. Р. Інструментальні засоби конструктивно-продукційного моделювання. Проблеми програмування. 2024. № 2/3. С. 107–115. DOI: 10.15407/pp2024.02-03.107.