Автоматическое построение словаря типизированных канонических шаблонов управляющего кода по промышленному корпусу
PDF

Ключевые слова

Structured Text
статический анализ
канонический шаблон
корпусный словарь
расстояние Левенштейна
промышленная вентиляция

Как цитировать

1.
Щигал С.Е., Соловьев В.И. Автоматическое построение словаря типизированных канонических шаблонов управляющего кода по промышленному корпусу // Успехи кибернетики. 2026. Т. 7, № 3. С. 133-138.

Аннотация

буквальное сравнение управляющих программ чувствительно к именам переменных и не всегда выделяет существенные изменения. Цель — формализовать построение словаря типизированных канонических шаблонов языка Structured Text и определить ограничения статического сравнения. Материал — промышленный проект вентиляции из 189 программных единиц. Операторы преобразуются в сигнатуры, сохраняющие вид конструкции, ограниченную структуру выражений, роли и типы переменных, классы литералов. Частые сигнатуры образуют словарь, редкие заменяются общими категориями. Исправленный синтаксический анализ дал 7794 вхождения; при глубине один и минимальной частоте пять выделено 238 шаблонов с покрытием 54,0 %. Полные и пороговые последовательности сохранились после лексической замены идентификаторов в 188 измененных единицах. На шести процедурах расстояние до переименованного варианта равно нулю, до контролируемого изменения — от одного до трех. Во внешнем архиве из 110 вариантов полные представления различались в 65 и 75 случаях при глубинах один и два относительно модального эталона. Эти результаты не доказывают функциональной корректности. Основные ограничения — потеря тождества переменных, укрупнение литералов, неполный охват синтаксиса и отсутствие независимой экспертной проверки реально сгенерированных программ.

PDF

Литература

Koziolek H., Gruener S., Ashiwal V. ChatGPT for PLC/DCS Control Logic Generation. 2023 IEEE 28th International Conference on Emerging Technologies and Factory Automation (ETFA). 2023:1–8. DOI: 10.1109/ETFA54631.2023.10275411.

Fakih M., Dharmaji R., Moghaddas Y., Quiros Araya G., Ogundare O., Al Faruque M. A. LLM4PLC: Harnessing Large Language Models for Verifiable Programming of PLCs in Industrial Control Systems. Proceedings of the 46th International Conference on Software Engineering: Software Engineering in Practice. 2024:192–203. DOI: 10.1145/3639477.3639743.

Yefet N., Alon U., Yahav E. Adversarial Examples for Models of Code. Proceedings of the ACM on Programming Languages. 2020;4(OOPSLA):1–30. DOI: 10.1145/3428230.

Roy C. K., Cordy J. R., Koschke R. Comparison and Evaluation of Code Clone Detection Techniques and Tools: A Qualitative Approach. Science of Computer Programming. 2009;74(7):470– 495. DOI: 10.1016/j.scico.2009.02.007.

Kamiya T., Kusumoto S., Inoue K. CCFinder: A Multilinguistic Token-Based Code Clone Detection System for Large Scale Source Code. IEEE Transactions on Software Engineering. 2002;28(7):654–670. DOI: 10.1109/TSE.2002.1019480.

Luan S., Yang D., Barnaby C., Sen K., Chandra S. Aroma: Code Recommendation via Structural Code Search. Proceedings of the ACM on Programming Languages. 2019;3(OOPSLA):1–28. DOI: 10.1145/3360578.

Allamanis M., Sutton C. Mining Idioms from Source Code. Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering. 2014:472–483. DOI: 10.1145/2635868.2635901.

Song Y., Lothritz C., Tang D., Bissyandé T., Klein J. Revisiting Code Similarity Evaluation with Abstract Syntax Tree Edit Distance. Proceedings of the 62nd Annual Meeting of the Association for Computational Linguistics. 2024;2:38–46. DOI: 10.18653/v1/2024.acl-short.3.

Allamanis M., Barr E. T., Devanbu P., Sutton C. A Survey of Machine Learning for Big Code and Naturalness. ACM Computing Surveys. 2018;51(4):81. DOI: 10.1145/3212695.

Левенштейн В. И. Двоичные коды с исправлением выпадений, вставок и замещений символов. Доклады Академии наук СССР. 1965;163(4):845–848. Режим доступа: https://www.mathnet.ru/rus/dan31411.

Kabir M. H., Islam M. R., Lou H. H. STMutants: A Mutation Testing Dataset for Structured Text Programs in Industrial Automation. 2026. arXiv:2606.05499v1. DOI: 10.48550/arXiv.2606.05499.

Лицензия Creative Commons

Это произведение доступно по лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная.

Скачивания

Данные скачивания пока не доступны.