Преемственность дисциплин «Моделирование систем» и «Автоматизация проектирования систем и средств управления»
1. Введение
В дисциплине «Моделирование систем» вводятся общие понятия о моделировании, системе, в том числе технической. Вырабатывается концепция на поиски решения любых задач, связанных с моделированием систем, и если это решение существует, как наиболее эффективно достигнуть этого, пусть даже на первый взгляд, недоступного решения. В такой постановке эта дисциплина приобретает главенствующее положение для студентов старшекурсников технических вузов [1]. На основе этого курса базируется дисциплина «Автоматизация проектирования систем и средств управления» (АПССУ). По мнению авторов предмет АПССУ состоит из трех взаимосвязанных частей: автоматизация проектирования систем, автоматизация проектирования средств управления и их соединение в единое целое. Первая часть в себя включает технологии автоматизированного проектирования (CAD-системы), технологии автоматизированного производства (САМ-системы), технологии автоматизированной разработки или конструирования (САЕ-системы), системы сквозного проектирования (CAD/CAM/CAE - системы) [2]. В эту же часть входят более современные технологии, основанные на вышеприведенных, такие как САРР, CALS, PDM, PLM, PDS.
В основе второй части дисциплины АПССУ лежит технология виртуальных приборов LabVIEW. В третьей части этого проекта показана возможность соединения первых двух на базе LabVIEW.
2. Подходы к классификации моделей.
Общепринятой единой классификации моделей пока еще нет, как нет и общепринятого определения модели.
Примем следующее определение [3].
Модель - это некий новый объект, который отражает некоторые существенные стороны изучаемого объекта, явления или процесса.
Модель используется как условный образ, сконструированный для упрощения их исследования.
Природа моделей может быть различной: материальные модели (например, модель самолета в аэродинамической трубе), знаковые модели трех типов: специальные (ноты, химические формулы), математические (например, формула, описывающая гравитационное взаимодействие двух тел), алгоритмические (программный код компьютерного приложения); словесное описание объекта (явления, процесса) можно также рассматривать как его модель.
Следуя Н.В. Макаровой, введем виды классификаций моделей, определяемые следующими признаками:
1) областью использования;
2) учетом в модели временного фактора (динамики);
3) отраслью знаний;
4) способом представления моделей.
По области использования модели могут быть следующими: учебные, опытные, научно-технические, игровые, имитационные.
Если учитывать временной фактор (динамику процесса), то модели могут быть статические и динамические. Примеры классификации моделей по отраслям знаний: математика, физика, химия, языкознание и т.д.
Более подробно рассмотрим классификацию по способам представления моделей. В этом случае все модели делятся на материальные (предметные или физические) и на абстрактные (нематериальные). В свою очередь абстрактные модели состоят из 1) вербальных и образных и 2) информационных. Информационные модели включают в себя две большие группы моделей: 1) образно-знаковые и 2) знаковые.
В свою очередь образно-знаковые делятся на геометрические, структурные, словесные, алгоритмические. Примеры геометрических моделей: чертеж, план, карта. Представителями структурных моделей являются таблицы, графы, диаграммы. Естественные языки - наиболее типичные примеры словесных моделей. Характерные экземпляры алгоритмических моделей: нумерованные списки, блок-схемы, пошаговое перечисление.
Знаковые модели состоят из математических, специальных, алгоритмических. Примеры специальных моделей: ноты, химические формулы. Программа на алгоритмическом языке является представителем алгоритмических моделей.
Приведем одно из обоснований введения моделей [4]. Итак, модель нужна:
• для того чтобы понять, как устроен конкретный объект, какова его структура, основные свойства, законы развития и взаимодействия с окружающим миром;
• для того чтобы научиться управлять объектом (или процессом) и определить наилучшие способы управления при заданных целях и критериях;
• для того чтобы прогнозировать прямые и косвенные последствия реализации заданных способов и форм воздействия на объект.
Характерные примеры обоснования введения моделей - ядерная реакция, управление производственными процессами с помощью технологии виртуальных приборов LabVIEW.
По свойствам модели оказывается возможным судить о свойствах изучаемого объекта - однако не обо всех, а лишь о тех, которые аналогичны и в модели, и в объекте, и при этом важны для исследования (такие свойства называются существенными).
3. Математическая модель и математическое моделирование.
Математическая модель - приближенное описание какого-либо класса явлений внешнего мира, выраженное с помощью математической символики [5].
Важно так «сконструировать» приближенную математическую модель, чтобы она достаточно точно отражала характерные свойства рассматриваемого явления. При этом могут быть опущены несущественные и второстепенные свойства явления с тем, чтобы эта модель была доступна для исследования на данном уровне развития вычислительной техники.
Математическое моделирование - изучение явления с помощью математической модели [5].
Классическим примером математического моделирования является описание и исследование основных законов механики И.Ньютона средствами математики.
С точки зрения развития знаний человечества о естествознании и исследования законов природы, техники, общества и науки на основе математических моделей процесс решения конкретной проблемы можно разбить на следующие этапы [5]:
• Формулировка законов, связывающих основные объекты модели.
• Исследование математических задач, к которым приводят математические модели.
• Проверка: удовлетворяет ли принятая (гипотетическая) модель критерию практики.
• Последующий анализ модели в связи с накоплением данных об изучаемых явлениях и модернизация модели.
Первый этап требует широкого знания фактов, относящихся к изучаемым явлениям, и глубокого проникновения в их взаимосвязи. Эта стадия завершается записью в математических терминах сформулированных качественных представлений о связях между объектами модели.
На втором этапе важную роль приобретают математический аппарат, необходимый для анализа математической модели, и вычислительная техника -мощное средство для получения количественной выходной информации как результата решения сложных математических задач. Часто математические задачи, возникающие на основе различных математических моделей явлений бывают одинаковыми. Приведем пример: основная задача линейного программирования отражает ситуации различной природы. Это дает обоснование считать эти различные математические модели гомоморфными по отношению к математическим задачам, к которым эти модели приводятся. Такие типичные математические задачи исследуются учеными и инженерами как самостоятельный объект, абстрагируясь от изучаемых явлений.
На третьем этапе проверяется, согласуются ли результаты наблюдений с теоретическими следствиями модели в пределах точности наблюдений. Применение критерия практики к оценке математической модели позволяет делать вывод о правильности положений, лежащих в основе подлежащей изучению (гипотетической) модели. Этот метод является единственным методом изучения недоступных нам явлений макро- и микромира.
Перейдем к четвертому этапу. В процессе развития науки и техники данные об изучаемых явлениях все более и более уточняются и наступает момент, когда выводы, получаемые на основании принятой математической модели, не соответствуют нашим знаниям о явлении. Таким образом, возникает необходимость построения новой, более совершенной математической модели.
Все вышесказанное применимо и к компьютерным технологиям. Современные предприятия не смогут выжить во всемирной конкуренции, если не будут выпускать новые продукты лучшего качества, более низкой стоимости и за меньшее время [2]. Поэтому они стремятся использовать огромные возможности памяти компьютеров, их высокое быстродействие и возможности удобного графического интерфейса для того, чтобы автоматизировать и связать друг с другом задачи проектирования и производства, которые раньше были весьма утомительными и совершенно не связанными друг с другом. Таким образом сокращается время и стоимость разработки и выпуска продукта. В связи с этим постоянно выходят новые версии программных продуктов. С точки зрения этапов математического моделирования происходит постоянный переход от четвертого этапа к первому, но уже идет исследование заданной задачи по усовершенствованной модели программного продукта. Наглядный пример. Совсем недавно у LabVIEW была седьмая версия, в течение полутора лет появились поочередно версии 8, 8.20, 8.50.
4. Полная погрешность исследуемой задачи
Вплотную подойдем к определению погрешности решения исследуемой задачи. Погрешность решения обуславливается следующими причинами.
• Математическое описание задачи является неточным, в частности, неточно заданы исходные данные.
• Применяемый для решения метод не является точным. Решения большинства задач естествознания на современном этапе при построении их математических моделей трудно получить в конечном виде, а часто просто невозможно. Поэтому приходится прибегать к приближенным методам таким как, численные, асимптотические.
• При вводе данных в вычислительную машину, при выполнении арифметических операций и при выводе данных производятся округления.
Погрешности, соответствующие этим причинам, называют:
1) неустранимой погрешностью;
2) погрешностью метода;
3) вычислительной погрешностью.
На основании этого определим полную погрешность исследуемой задачи естествознания. Итак, пусть Ф -точное решение некоторой задачи;
Ф1 - решение задачи, полученное за счет перехода к математической модели. За счет перехода к такой модели образуется неустранимая погрешность: ε1=Ф — Ф1.
Пусть Ф2 - решение задачи Ф1, полученное за счет выбора метода решения. Введем погрешность метода ε 2=Ф1—Ф2.
Пусть Ф3 - решение задачи Ф2, полученное при реализации конкретного метода на конкретной ПЭВМ. На этом этапе образуется вычислительная погрешность ε 3=Ф2—Ф3. Найдем полную погрешность:
ε = Ф-Ф3=(Ф-Ф]) + (Ф1-Ф2) + (Ф2-Ф3).
Во многих случаях под термином погрешность того или иного вида удобно понимать не рассмотренные выше разности между приближениями, а некоторые меры близости между ними. Например, в скалярном случае полагают
ε1=|Ф-Ф1|, ε2=| Ф1- Ф2| , ε3=|Ф2-Ф3|, ε =|Ф-Ф3| .
При таких обозначениях получаем оценку:
ε ≤ ε1 + ε2 + ε3 .
Остановимся на первой погрешности, неустранимой. Большинство исследователей-инженеров с ней обычно смиряются, считают, что с ней ничего нельзя поделать. Вообще-то говоря, это правильный подход, пока мы находимся на втором и третьем этапах математического моделирования. Но с течением времени гипотетическая модель перестает удовлетворять критерию практики. Происходит переход к усовершенствованной задаче, к задаче, которая ближе к реальной, и соответственно с меньшей неустранимой погрешностью. Этот переход происходит более безболезненно в среде виртуальных приборов LabVIEW.
Оценку погрешности, которую можно получить до проведения вычислений, обычно называют априорной, после проведения - апостериорной. Получить априорную оценку погрешности для сколько-нибудь содержательных вычислений -крайне трудная задача.
5. Понятия гомоморфизма и изоморфизма в теории моделирования.
Стандартным образом введем понятие гомоморфизма: каждому элементу и каждому отношекию между элементами первой системы соответствует один элемент и одно отношение второй системы (но не наоборот) [6].
Сходство модели с оригиналом всегда неполное. Модель лишь приближенно отражает некоторые свойства оригинала. Причем реальная система может иметь различные гомоморфные ей модели.
Приведем примеры. Тексту на экране компьютера, сохраненному в формате Word с включенным режимом «предварительный просмотр», соответствует несколько гомоморфных моделей в том же самом Word'e с включенной опцией «непечатаемые знаки». Второй пример: чертеж дома является гомоморфной моделью по отношению к самому дому (чертеж изображен на плоскости, а дом -объемный, трехмерный; чертеж дает не все детали, допустим, что на нем не видно отдельных кирпичей и т.д.). Третий пример: в LabVIEW одному терминалу, отвечающему за ввод числовых данных на Block Diagram соответствует несколько конструкций ввода на Front Panel, таких как Knob, Dial, Num Ctrl и т.д.. Четвертый пример: в LabVIEW одному программному коду в Block Diagram может соответствовать несколько изображений на лицевой панели (Front Panel).
Гомоморфизм является фундаментальным теоретическим обоснованием моделирования.
Суть понятия изоморфизма: между элементами изоморфных объектов существует взаимнооднозначное отношение, т.е. каждому элементу (и отношению между ними) одного объекта точно соответствует один элемент (и отношение) другого объекта и наоборот.
Последнее, в частности, означает, что при изоморфизме одна система может быть моделью другой. В свою очередь, последняя на всех основаниях может быть принята в качестве модели первой.
Модель изоморфна по отношению к некоторому абстрактному образу, представлению об объекте, которое в свою очередь является его гомоморфным отображением.
Рассмотрим примеры. Текст, набранный в Word'e, с включенной опцией «предварительный просмотр», может рассматриваться как изоморфная модель текста, выведенного на принтер. Во втором примере чертеж дома на доске в аудитории и тот же самый чертеж в студенческом конспекте могут выступать как изоморфные модели по отношению друг к другу.
6. Имитационное моделирование. Верификация и валидация модели.
Верификация модели - проверка ее истинности, адекватности [6]. Верификация модели при машинной (компьютерной) имитации есть проверка соответствия ее поведения предположениям экспериментатора. Когда модель организована в вычислительную программу для ПЭВМ, то сначала, как обычно, исправляют ошибки в ее записи на алгоритмическом языке, а затем переходят к верификации. Процесс отладки программного кода в LabVIEW часто происходит быстрее, чем в известных уже канонических программных средах, таких как Visual Basic, Delphi. Это связано с тем, что среда LabVIEW сразу предлагает возможные способы устранения ошибок. Это первый этап действительной подготовки к имитационному эксперименту. Подбираются некоторые исходные данные, для которых могут быть предсказаны результаты расчета. Если окажется, что ПЭВМ выдает данные, противоречащие тем, которые ожидались при формировании модели, значит, модель неверна. В обратном случае переходят к следующему этапу проверки работоспособности модели - ее валидации.
Валидация модели - проверка соответствия данных, получаемых в процессе машинной имитации, реальному ходу явлений, для описания которых создана модель. Производится тогда, когда экспериментатор убедился на предшествующей стадии (верификации) в правильности структуры (логики) модели. Валидация состоит в том, что выходные данные после расчета на вычислительной технике сопоставляются с имеющимися сведениями о моделируемой системе. Процесс валидации связан с поддержкой работы программного продукта его изготовителя в промышленных условиях. Здесь сама среда LabVIEW ратует за процесс валидации.
7. Заключение.
В настоящей работе авторы постарались приложить теорию «Моделирования систем» к основным понятиям среды LabVIEW, которая является составной частью дисциплины АПССУ.
Список литературы
1. Ю.Б. Колесов, Ю.Б. Сениченков. Моделирование систем. Динамические и гибридные системы. Учеб. пособие/ СПб.: БХВ-Петербург, 2006. 224 с.
2. К. Ли . Основы САПР (САР/САМ/САЕ)./СПб: Питер, 2004. 560 с.
3. А.Г. Гейн, А.И. Сенокосов, Н.А. Юнерман. Информатика. Учеб. пособие для 10-11 классов общеобразовательных учреждений/ М.: Просвещение, 2000.
4. А.Б. Горстко. Познакомьтесь с математическим моделированием/ М.: Знание, 1991.157 с.
5. Математическая Энциклопедия. - Т1, Т.З, Т5./ М.: Советская энциклопедия.
6. Л.И. Лопатников. Экономико-математический словарь/ М.: Наука, 1987. 509 с.