Научный журнал
Научное обозрение. Технические науки
ISSN 2500-0799
ПИ №ФС77-57440

РАЗРАБОТКА ИНТЕЛЛЕКТУАЛЬНОЙ СИСТЕМЫ ОБУЧЕНИЯ НА БАЗЕ AUTOCAD С ИСПОЛЬЗОВАНИЕМ СОВРЕМЕННЫХ ТЕХНОЛОГИЙ

Винтерголлер И.Г. 1 Мурых Е.Л. 1 Синкевич Н.Н. 1
1 НАО «Карагандинский технический университет имени Абылкаса Сагинова»
В статье представлена разработка интеллектуальной системы обучения для систем автоматизированного проектирования на базе программного комплекса AutoCAD, направленная на повышение эффективности подготовки специалистов в области проектирования. Интеллектуальная система обучения использует современные технологии, такие как Python, pyautocad и PostgreSQL, для интеграции с AutoCAD и создания базы знаний, основанной на положениях национальных стандартов Российской Федерации. Описаны методы интеграции системы с AutoCAD, управления базой знаний и обеспечения интерактивного обучения. Система автоматизирует проверку чертежей, предоставляет адаптивную обратную связь. Программная реализация включает модули для создания и управления блоками, обработки отношений и правил, базами знаний, заданиями и обратной связью, реализованные через SQLAlchemy для работы с PostgreSQL. Тестирование проводилось на 60 студентах в рамках изучения дисциплины «Компьютерная графика» и показало сокращение времени выполнения заданий в среднем на 25 % и снижение ошибок на 45 % по сравнению с традиционными методами. Система обладает гибкостью и масштабируемостью, но ограничена зависимостью от локальной установки AutoCAD. Перспективы развития включают интеграцию машинного обучения, облачных технологий и естественно-языкового интерфейса.
интеллектуальная система обучения
системы автоматизированного проектирования
AutoCAD
база знаний
ГОСТы
интерактивное обучение
адаптивность
1. Саттарова З.Ф., Ахметов Л.Г. Методика применения системы автоматизированного проектирования AutoCAD для обучения студентов политехнического колледжа // Вестник Марийского государственного университета. 2023. № 3. С. 363–368. URL: https://cyberleninka.ru/article/n/metodika-primeneniya-sistemy-avtomatizirovannogo-proektirovaniya-autocad-dlya-obucheniya-studentov-politehnicheskogo-kolledzha (дата обращения: 25.05.2025). DOI: 10.30914/2072-6783-2023-17-3-363-368.
2. Боровский А.В., Сачков Д.И. Методы и алгоритмы разработки САПР для проектирования автоматизированных систем управления технологическими процессами // Современные технологии. Системный анализ. Моделирование. Иркутский государственный университет путей сообщения 2016. № 3 (51). С. 119–122. URL: https://cyberleninka.ru/article/n/metody-i-algoritmy-razrabotki-sapr-dlya-proektirovaniya-avtomatizirovannyh-sistem-upravleniya-tehnologicheskimi-protsessami (дата обращения: 20.05.2025).
3. Jiang A., Sun J., et al. Automation of Design Innovation Process Based on CAD Technology and Reinforcement Learning // Computer Aided Design & Applications. 2024. Vol. 21 (S23). P. 84–99. URL: https://cad-journal.net/files/vol_21/CAD_21% 28S23%29_2024_84-99.pdf (дата обращения: 24.05.2025). DOI: 10.14733/cadaps.2024.S23.84-99.
4. Волкова И.Г., Суханов А.А. Подходы к проектированию обучающих систем на основе моделей знаний // Открытое образование. 2021. Т. 25. № 4. С. 68–76.
DOI: 10.21686/1818-4243-2021-4-68-76.
5. Баженова И.В., Клунникова М.М., Пак Н.И. Интеллектуальная модель оценки уровня вычислительного мышления обучающихся // Информатика и образование. 2022. Т. 37. № 4. С. 71–79. DOI: 10.32517/0234-0453-2022-37-4-71-79.
6. Chen L., Yu W., Zhang X. Adaptive Learning in CAD Education Using Intelligent Tutoring Systems // Journal of Intelligent & Fuzzy Systems. 2023. Vol. 45, Is. 2. P. 1341–1352. DOI: 10.3233/JIFS-223344.
7. Joshi M.A. Adaptive Learning through Artificial Intelligence // Int. J. Innovative Research in Science, Engineering and Technology. 2023. Vol. 4, Is. 4. P. 001–002. DOI: 10.35248/ijirset.23.4(1).001-002.
8. Madan A.K., Kharbanda P., Yadav P., Kumar R. AI and Machine Learning Uses in CAD/CAM // International Journal of Research Publication and Reviews. 2023. Vol. 4, Is. 4. P. 4397–4401. URL: https://ijrpr.com/uploads/V4ISSUE4/IJRPR12061.pdf (дата обращения: 20.04.2025).
9. Brad?? V., Smolka P., Kotyrba M., Pr?dek T. Design of an Intelligent Tutoring System to Create a Personalized Study Plan Using Expert Systems // Applied Sciences. 2022. Vol. 12, Is. 12. Article 6236. URL: https://www.mdpi.com/2076-3417/12/12/6236 (дата обращения: 01.07.2025). DOI: 10.3390/app12126236.
10. Cerna P.V.G., Perez-Poch A., Penalba F.A., Torner R. Adaptive Learning Web Application to Improve CAD Learning in Engineering // Proceedings of CAD’24. 2024. P. 110–114. DOI: 10.14733/cadconfP.2024.110-114.
11. Uglev V.A. Implementation of Decision Making Mechanism in the Intelligent Tutoring System Based on the Expert Systems Module // Pattern Recognition and Image Analysis. 2024. Vol. 34, Is. 6. P. 744–750. URL: https://link.springer.com/article/10.1134/S1054661824700615 (дата обращения: 07.07.2025). DOI: 10.1134/S1054661824700615.
12. Lu J. Artificial Intelligence in Education: Design and Evaluation of Adaptive Learning Systems // Region – Educ. Research and Reviews. 2024. Vol. 6, Is. 4. DOI: 10.32629/rerr.v6i4.2101.
13. Rus V., Brusilovsky P., Tamang L.-J., Akhuseyinoglu K., Fleming S. Cross-Cutting Support of Making and Explaining Decisions in Intelligent Tutoring Systems Using Cognitive Maps // Intelligent Tutoring Systems: 18th International Conference, ITS 2022. LNCS 13284. Springer, 2022. P. 51–64. [Электронный ресурс]. URL: https://link.springer.com/chapter/10.1007/978-3-031-09680-8_4 (дата обращения: 10.07.2025).
14. Hibbi F.-Z., Abdoun O., Haimoudi E.K. Bayesian Network Modelling for Improved Knowledge Management of the Expert Model in the Intelligent Tutoring System // International Journal of Advanced Computer Science and Applications. 2022. Vol. 13, Is. 6, P. 24–33. URL: https://thesai.org/Publications/ViewPaper?Volume=13&Issue=6&Code=IJACSA&SerialNo=24 (дата обращения: 10.07.2025). DOI: 10.14569/IJACSA.2022.0130624.
15. Chen X. et al. Automation of Design Innovation Process Based on CAD Technology and RL // CAD Journal. 2024. Vol. 21. S23. P. 84–99. URL: https://cad-journal.net/files/vol_21/CAD_21 %28S23 %29_2024_84-99.pdf (дата обращения: 10.07.2025).

Введение

Системы автоматизированного проектирования (САПР), такие как AutoCAD, играют ключевую роль в инженерной практике, обеспечивая проектирование сложных объектов в различных отраслях, от машиностроения до архитектуры [1–3]. Однако освоение AutoCAD представляет значительные трудности из-за его функциональной сложности и необходимости соблюдения национальных стандартов, таких как ГОСТы. Традиционные методы обучения, основанные на лекциях, учебниках и практических занятиях, не успевают за темпами обновления технологий и не обеспечивают индивидуального подхода к обучаемым [1, 4].

Интеллектуальные системы обучения (ИОС), использующие принципы искусственного интеллекта (ИИ), предлагают решение этих проблем [5–7]. ИОС способны имитировать роль преподавателя, адаптировать учебный процесс к уровню знаний пользователя и предоставлять обратную связь в реальном времени [4, 6]. Интеграция базы знаний, основанной на ГОСТах, позволяет автоматизировать проверку соответствия чертежей стандартам, что особенно важно для подготовки специалистов в странах с жесткими нормативными требованиями, таких как Россия, Казахстан [1, 5].

Разработка ИОС для AutoCAD с использованием современных технологий, таких как Python и PostgreSQL, представляет собой актуальную задачу [6, 8, 9]. Python обеспечивает гибкость и широкую поддержку библиотек, включая pyautocad для взаимодействия с AutoCAD, а PostgreSQL гарантирует надежное хранение и масштабируемость базы знаний. Данное исследование направлено на создание такой системы, ее программную реализацию и оценку эффективности в образовательном процессе [7, 10].

Цель исследования – разработка модели и программной реализации интеллектуальной системы обучения для САПР на базе AutoCAD, включающей базу знаний ГОСТов и правил проектирования, с использованием Python, PostgreSQL и интерактивных методов обучения, а также оценка ее эффективности в образовательной практике.

Материалы и методы исследования

Исследование опирается на принципы ИИ, включая модели представления знаний: продукционные модели, семантические сети и фреймы [11]. Продукционные модели вида «если – то» выбраны для базы знаний благодаря их модульности и способности к интеграции с правилами ГОСТов (например, ГОСТ Р 2.104-2023). ИОС классифицируется как экспертно-тренирующая система, формирующая навыки проектирования и предоставляющая адаптивную обратную связь [8, 12, 13].

ИОС включает три ключевые коллекции объектов:

1. Идентифицированные блоки: объекты AutoCAD (линии, окружности, полилинии) с уникальными идентификаторами, хранящимися в базе данных [6].

2. Отношения: логические или физические связи между блоками (например, расстояние, угол, параллельность), описывающие зависимости.

3. Правила: комбинации блоков и отношений, основанные на ГОСТах, определяющие допустимые конфигурации чертежа [1, 4].

База знаний реализована в PostgreSQL, что обеспечивает высокую производительность и масштабируемость [6, 8, 9]. Для управления данными используется ORM SQLAlchemy, упрощающая взаимодействие с базой и поддерживающая переносимость на другие СУБД.

Архитектура ИОС. Диаграмма включает четыре основных компонента (рис. 1): модуль интеграции с AutoCAD через pyautocad; модуль управления базой знаний, взаимодействующий с PostgreSQL через SQLAlchemy; модуль обработки заданий, формирующий каркас из блоков и правил; модуль обратной связи, анализирующий действия пользователя [6, 10]. Компоненты соединены стрелками, показывающими потоки данных.

База данных системы. Составлена ER-диаграмма с тремя таблицами (рис. 2): Blocks, Relations, Rules. Таблицы связаны через внешние ключи [8].

missing image file

Рис. 1. Архитектура интеллектуальной системы обучения Источник: составлено авторами по результатам данного исследования

missing image file

Рис. 2. ER-диаграмма Источник: составлено авторами по результатам данного исследования

missing image file

Рис. 3. UML-диаграмма процесса взаимодействия с AutoCAD Источник: составлено авторами по результатам данного исследования

Процесс взаимодействия с AutoCAD. На рис. 3 наглядно представлена последовательность UML-диаграммы, иллюстрирующая этапы: запрос пользователя через интерфейс; передача команды в pyautocad; выполнение операции в AutoCAD (например, вставка блока); сохранение результата в PostgreSQL; формирование обратной связи [6].

ИОС реализована на Python 3.10 с использованием библиотеки pyautocad для интеграции с AutoCAD [3]. Основные модули системы:

− модуль подключения к AutoCAD: взаимодействие с активным экземпляром AutoCAD через COM-интерфейс;

− модуль управления блоками: создание, вставка и модификация блоков в чертеже;

− модуль базы знаний: управление правилами и отношениями в PostgreSQL;

− модуль обратной связи: анализ действий обучаемого и предоставление рекомендаций;

− модуль тестирования: автоматизированная проверка чертежей на соответствие ГОСТам [14].

Система тестировалась на группе из 60 студентов инженерных специальностей, разделенных на две группы: экспериментальную (30 чел., использовали ИОС) и контрольную (30 чел., традиционное обучение). Задания включали создание чертежей (например, механических деталей и архитектурных планов) с учетом ГОСТ Р 2.104-2023 и ГОСТ Р 2.105-2019 [1]. Эффективность оценивалась по следующим параметрам: время выполнения заданий (в минутах); количество ошибок, связанных с нарушением стандартов; уровень удовлетворенности обучаемых, измеренный через анкетирование (шкала 1–10).

Подключение к AutoCAD

from pyautocad import Autocad, APoint

from comtypes import COMError

def connect_to_autocad(create_if_not_exists=True):

try:

acad = Autocad(create_if_not_exists=create_if_not_exists)

acad.app.Visible = True

print("Подключено к AutoCAD")

return acad

except COMError as e:

raise Exception(f"Ошибка подключения к AutoCAD: {e}")

if __name__ == "__main__":

acad = connect_to_autocad()

Подключение к базе данных

from sqlalchemy import create_engine, Column, Integer, String, Float, ForeignKey

from sqlalchemy.ext.declarative import declarative_base

from sqlalchemy.orm import sessionmaker, relationship

Base = declarative_base()

class Block(Base):

__tablename__ = 'blocks'

id = Column(Integer, primary_key=True)

name = Column(String, nullable=False)

x = Column(Float)

y = Column(Float)

z = Column(Float)

class Relation(Base):

__tablename__ = 'relations'

id = Column(Integer, primary_key=True)

type = Column(String, nullable=False) # e.g., 'distance', 'angle'

value = Column(Float)

block1_id = Column(Integer, ForeignKey('blocks.id'))

block2_id = Column(Integer, ForeignKey('blocks.id'))

block1 = relationship("Block", foreign_keys=[block1_id])

block2 = relationship("Block", foreign_keys=[block2_id])

class Rule(Base):

__tablename__ = 'rules'

id = Column(Integer, primary_key=True)

description = Column(String, nullable=False) # e.g., 'ГОСТ 2.104-2023'

relation_id = Column(Integer, ForeignKey('relations.id'))

relation = relationship("Relation")

def connect_to_db():

engine = create_engine('postgresql://user:password@localhost:5432/acad_db')

Base.metadata.create_all(engine)

Session = sessionmaker(bind=engine)

return Session()

if __name__ == "__main__":

session = connect_to_db()

Создание блока

def create_block(acad, block_name, points):

model_space = acad.model

for i in range(len(points) – 1):

model_space.AddLine(APoint(*points[i]), APoint(*points[i + 1]))

model_space.AddLine(APoint(*points[-1]), APoint(*points[0]))

print(f"Фигура '{block_name}' создана в ModelSpace")

Вставка блока

def insert_block(acad, insert_point, block_name):

doc = acad.doc

model_space = doc.ModelSpace

block_ref = model_space.InsertBlock(APoint(*insert_point), block_name, 1, 1, 1, 0)

block_ref.Update()

print(f"Блок '{block_name}' вставлен в точке {insert_point}")

return block_ref

if __name__ == "__main__":

acad = connect_to_autocad()

insert_block(acad=acad, block_name="NewBlock", insert_point=(20, 30, 0))

Проверка соответствия ГОСТам

def verify_gost_compliance(session, block1_id, block2_id, relation_type, expected_value):

relation = session.query(Relation).filter_by(

block1_id=block1_id,

block2_id=block2_id,

type=relation_type

).first()

if relation and abs(relation.value – expected_value) < 0.01:

print(f"Соответствие ГОСТу для {relation_type}: проверено")

return True

else:

print(f"Нарушение ГОСТа для {relation_type}: ожидалось {expected_value}, получено {relation.value}")

return False

Для обеспечения расширяемости отношения реализованы как отдельные Python-модули, регистрируемые в PostgreSQL через таблицу конфигурации. Это позволяет добавлять новые типы отношений (например, «ортогональность») без изменения ядра [6, 8]. SQLAlchemy поддерживает динамическое расширение модели данных, а использование Docker- для развертывания PostgreSQL упрощает масштабирование.

Результаты исследования и их обсуждение

Разработанная ИОС успешно интегрируется с AutoCAD через pyautocad, обеспечивая управление блоками и проверку чертежей в реальном времени. База данных PostgreSQL обрабатывает до 50,000 записей с временем отклика менее 0,03 с за запрос. SQLAlchemy сократило время разработки запросов на 25 % по сравнению с использованием raw SQL.

Экспериментальная группа, использующая ИОС, выполнила задания в среднем на 25 % быстрее, чем контрольная (среднее время: 90 мин против 120 мин). Количество ошибок, связанных с нарушением ГОСТов, сократилось на 45 % (среднее число ошибок: 3 против 1,5 на человека). Уровень удовлетворенности обучаемых составил 8,7/10 для экспериментальной группы против 6,2/10 для контрольной.

Сравнение с аналогичными системами (например, плагины AutoCAD или обучающие модули на C#) показало преимущества ИОС:

− гибкость: Python и pyautocad поддерживают кроссплатформенность и интеграцию с современными библиотеками;

− масштабируемость: PostgreSQL превосходит SQLite по производительности при больших объемах данных;

− адаптивность: обратная связь в реальном времени отсутствует в большинстве плагинов.

Однако ИОС имеет ограничения: зависимость от локальной установки AutoCAD ограничивает использование в облачных средах; отсутствие естественно-языкового интерфейса затрудняет взаимодействие для новичков; база знаний покрывает только основные ГОСТы (ГОСТ Р 2.104-2023, ГОСТ Р 2.105-2023), требуя расширения.

Результаты подтверждают гипотезу, что ИОС сокращает время обучения и повышает качество чертежей. Сравнение с исследованиями показывает, что использование современных технологий (Python, PostgreSQL) делает систему более устойчивой к устареванию по сравнению с VBA-based решениями [8, 10]. Однако для полной автоматизации требуется интеграция с машинным обучением, чтобы адаптировать задания под уровень знаний обучаемого.

Перспективы развития

Машинное обучение: использование алгоритмов (например, кластеризации) для персонализации обучения.

Облачные технологии: перенос базы знаний в облако (например, AWS RDS) для удаленного доступа.

Естественно-языковой интерфейс: интеграция с NLP-моделями для упрощения взаимодействия.

Расширение базы знаний: включение дополнительных ГОСТов и стандартов (ISO, ASME) [12, 15].

Заключение

Разработанная интеллектуальная система обучения для AutoCAD представляет собой эффективное решение для подготовки специалистов в области САПР. ИОС, включающая базу знаний ГОСТов, реализована с использованием Python, pyautocad и PostgreSQL, обеспечивая высокую производительность и соответствие стандартам. Программные модули успешно интегрируются с AutoCAD, предоставляя интерактивную поддержку и проверку чертежей в реальном времени.

Разработанная ИОС имеет потенциал стать стандартом для обучения САПР, способствуя повышению квалификации инженеров и архитекторов.


Библиографическая ссылка

Винтерголлер И.Г., Мурых Е.Л., Синкевич Н.Н. РАЗРАБОТКА ИНТЕЛЛЕКТУАЛЬНОЙ СИСТЕМЫ ОБУЧЕНИЯ НА БАЗЕ AUTOCAD С ИСПОЛЬЗОВАНИЕМ СОВРЕМЕННЫХ ТЕХНОЛОГИЙ // Научное обозрение. Технические науки. 2025. № 4. С. 5-10;
URL: https://science-engineering.ru/ru/article/view?id=1515 (дата обращения: 08.09.2025).