Компьютерный эксперимент Компьютерный эксперимент Чтобы дать жизнь новым конструкторским разработкам, внедрить новые технические решения в производство или проверить новые идеи, нужен эксперимент. В недалеком прошлом такой эксперимент можно было провести либо в лабораторных условиях на специально создаваемых для него установках, либо на натуре, т.е. на настоящем образце изделия, подвергая его всяческим испытаниям. Это требует больших материальных затрат и времени. В помощь пришли компьютерные исследования моделей. При проведении компьютерного эксперимента проверяют правильность построения моделей. Изучают поведение модели при различных параметрах объекта. Каждый эксперимент сопровождается осмыслением результатов. Если результаты компьютерного эксперимента противоречат смыслу решаемой задачи, то ошибку надо искать в неправильно выбранной модели или в алгоритме и методе ее решения. После выявления и устранения ошибок компьютерный эксперимент повторяется. Чтобы дать жизнь новым конструкторским разработкам, внедрить новые технические решения в производство или проверить новые идеи, нужен эксперимент. В недалеком прошлом такой эксперимент можно было провести либо в лабораторных условиях на специально создаваемых для него установках, либо на натуре, т.е. на настоящем образце изделия, подвергая его всяческим испытаниям. Это требует больших материальных затрат и времени. В помощь пришли компьютерные исследования моделей. При проведении компьютерного эксперимента проверяют правильность построения моделей. Изучают поведение модели при различных параметрах объекта. Каждый эксперимент сопровождается осмыслением результатов. Если результаты компьютерного эксперимента противоречат смыслу решаемой задачи, то ошибку надо искать в неправильно выбранной модели или в алгоритме и методе ее решения. После выявления и устранения ошибок компьютерный эксперимент повторяется.
Под математической моделью понимают систему математических соотношений формул, уравнений неравенств и т.д., отражающих существенные свойства объекта или процесса. Под математической моделью понимают систему математических соотношений формул, уравнений неравенств и т.д., отражающих существенные свойства объекта или процесса.
Задачи по моделированию из различных предметных областей Задачи по моделированию из различных предметных областей Экономика Экономика Экономика Астрономия Астрономия Астрономия Физика Физика Физика Экология Экология Экология Биология Биология Биология География География География
Машиностроительный завод, реализуя продукцию по договорным ценам, получил определенную выручку, затратив на производство некоторую сумму денег. Определить отношение чистой прибыли к вложенным средствам. Машиностроительный завод, реализуя продукцию по договорным ценам, получил определенную выручку, затратив на производство некоторую сумму денег. Определить отношение чистой прибыли к вложенным средствам. Постановка задачи Постановка задачи Цель моделирования исследовать процесс производства и реализации продукции с целью получения наибольшей чистой прибыли. Пользуясь экономическими формулами найти отношение чистой прибыли к вложенным средствам. Цель моделирования исследовать процесс производства и реализации продукции с целью получения наибольшей чистой прибыли. Пользуясь экономическими формулами найти отношение чистой прибыли к вложенным средствам.
Основными параметрами объекта моделирования являются: выручка, себестоимость, прибыль, рентабельность, налог с прибыли. Основными параметрами объекта моделирования являются: выручка, себестоимость, прибыль, рентабельность, налог с прибыли. Исходные данные: Исходные данные: выручка B; выручка B; затраты (себестоимость) S. затраты (себестоимость) S. Другие параметры найдем, используя основные экономические зависимости. Значение прибыли определяется как разность между выручкой и себестоимостью P=B-S. Другие параметры найдем, используя основные экономические зависимости. Значение прибыли определяется как разность между выручкой и себестоимостью P=B-S. Рентабельность r вычисляется по формуле:. Рентабельность r вычисляется по формуле:. Прибыль, соответствующая предельному уровню рентабельности 50%, составляет 50% от себестоимости продукции S, т.е. S*50/100=S/2, поэтому налог с прибыли N определяется следующим образом: Прибыль, соответствующая предельному уровню рентабельности 50%, составляет 50% от себестоимости продукции S, т.е. S*50/100=S/2, поэтому налог с прибыли N определяется следующим образом: если r
Анализ результатов Анализ результатов Полученная модель позволяет в зависимости от рентабельности определять налог с прибыли, автоматически пересчитывать размер чистой прибыли, находить отношение чистой прибыли к вложенным средствам. Полученная модель позволяет в зависимости от рентабельности определять налог с прибыли, автоматически пересчитывать размер чистой прибыли, находить отношение чистой прибыли к вложенным средствам. Проведенный компьютерный эксперимент показывает, что отношение чистой прибыли к вложенным средствам увеличивается при увеличении выручки и уменьшается при увеличении себестоимости продукции. Проведенный компьютерный эксперимент показывает, что отношение чистой прибыли к вложенным средствам увеличивается при увеличении выручки и уменьшается при увеличении себестоимости продукции.
Задача. Задача. Определите скорость движения планет по орбите. Для этого составьте компьютерную модель Солнечной системы. Постановка задачи Цель моделирования определить скорость движения планет по орбите. Объект моделирования Солнечная система, элементами которой являются планеты. Внутреннее строение планет в расчет не принимается. Будем рассматривать планеты как элементы, обладающие следующими характеристиками: название; R - удаленность от Солнца (в астрономических единицах; астроном. ед. среднее расстояние от Земли до Солнца); t - период обращения вокруг Солнца (в годах); V - скорость движения по орбите (астр.ед./год), предполагая, что планеты движутся вокруг Солнца по окружностям с постоянной скоростью.
Анализ результатов Анализ результатов 1. Проанализируйте результаты расчетов. Можно ли утверждать, что планеты, находящиеся ближе к Солнцу имеют большую скорость движения по орбите? 1. Проанализируйте результаты расчетов. Можно ли утверждать, что планеты, находящиеся ближе к Солнцу имеют большую скорость движения по орбите? 2. Представленная модель Солнечной системы является статической. При построении этой модели мы пренебрегали изменениями расстояния от планет до Солнца во время их движения по орбите. Чтобы знать, какая планета дальше и каковы примерные соотношения между расстояниями, этой информации вполне достаточно. Если же мы хотим определить расстояние между Землей и Марсом, то пренебрегать временными изменениями нельзя, и здесь придется использовать уже динамическую модель. 2. Представленная модель Солнечной системы является статической. При построении этой модели мы пренебрегали изменениями расстояния от планет до Солнца во время их движения по орбите. Чтобы знать, какая планета дальше и каковы примерные соотношения между расстояниями, этой информации вполне достаточно. Если же мы хотим определить расстояние между Землей и Марсом, то пренебрегать временными изменениями нельзя, и здесь придется использовать уже динамическую модель.
Компьютерный эксперимент Введите в компьютерную модель исходные данные. (Например: =0,5; =12) Найти такой коэффициент трения при котором машина поедет с горы (при данном угле). Найти такой угол при котором машина будет стоять на горе (при данном коэффициенте трения). Каков будет результат, если силой трения пренебречь. Анализ результатов Данная компьютерная модель позволяет проводить вычислительный эксперимент, взамен физическому. Меняя значения исходных данных, можно видеть все изменения происходящие в системе. Интересно заметить, что в построенной модели результат не зависит ни от массы автомобиля, ни от ускорения свободного падения.
Задача. Задача. Представьте себе, что на Земле останется только один источник пресной воды озеро Байкал. На сколько лет Байкал обеспечит население всего мира водой? Представьте себе, что на Земле останется только один источник пресной воды озеро Байкал. На сколько лет Байкал обеспечит население всего мира водой?
Разработка модели Разработка модели Для построения математической модели определим исходные данные. Обозначим: Для построения математической модели определим исходные данные. Обозначим: V - объем озера Байкал км3; V - объем озера Байкал км3; N - население Земли 6 млрд. чел.; N - население Земли 6 млрд. чел.; p - потребление воды в день на 1 человека (в среднем) 300 л. p - потребление воды в день на 1 человека (в среднем) 300 л. Так как 1л. = 1 дм3 воды, необходимо выполнить перевод V воды озера из км3 в дм3. V (км3) = V * 109 (м3) = V * 1012 (дм3) Так как 1л. = 1 дм3 воды, необходимо выполнить перевод V воды озера из км3 в дм3. V (км3) = V * 109 (м3) = V * 1012 (дм3) Результат количество лет, за которое население Земли использует воды Байкала, обозначим g. Итак, g=(V*)/(N*p*365) Результат количество лет, за которое население Земли использует воды Байкала, обозначим g. Итак, g=(V*)/(N*p*365) Так выглядит электронная таблица в режиме отображения формул: Так выглядит электронная таблица в режиме отображения формул:
Задача. Задача. Для производства вакцины на заводе планируется выращивать культуру бактерий. Известно, что если масса бактерий - x г., то через день она увеличится на (a-bx)x г., где коэффициенты a и b зависят от вида бактерий. Завод ежедневно будет забирать для нужд производства вакцины m г. бактерий. Для составления плана важно знать, как изменяется масса бактерий через 1, 2, 3,..., 30 дней.. Для производства вакцины на заводе планируется выращивать культуру бактерий. Известно, что если масса бактерий - x г., то через день она увеличится на (a-bx)x г., где коэффициенты a и b зависят от вида бактерий. Завод ежедневно будет забирать для нужд производства вакцины m г. бактерий. Для составления плана важно знать, как изменяется масса бактерий через 1, 2, 3,..., 30 дней..
Постановка задачи Постановка задачи Объектом моделирования является процесс изменения численности населения в зависимости от времени. На этот процесс влияют многие факторы: экология, состояние медицинского обслуживания, экономическая ситуация в стране, международная обстановка и многое другое. Обобщив демографические данные, ученые вывели функцию, выражающую зависимость численности населения от времени: Объектом моделирования является процесс изменения численности населения в зависимости от времени. На этот процесс влияют многие факторы: экология, состояние медицинского обслуживания, экономическая ситуация в стране, международная обстановка и многое другое. Обобщив демографические данные, ученые вывели функцию, выражающую зависимость численности населения от времени: f(t)=где коэффициента a и b для каждого государства свои, f(t)=где коэффициента a и b для каждого государства свои, e основание натурального логарифма. e основание натурального логарифма. Эта формула лишь приближенно отражает реальность. Для нахождения значений коэффициентов a и b можно воспользоваться статистическим справочником. Взяв из справочника значения f(t) (численность населения в момент времени t), можно приближенно подобрать a и b так, чтобы теоретические значения f(t), вычисляемые по формуле, не сильно отличались от фактических данных в справочнике. Эта формула лишь приближенно отражает реальность. Для нахождения значений коэффициентов a и b можно воспользоваться статистическим справочником. Взяв из справочника значения f(t) (численность населения в момент времени t), можно приближенно подобрать a и b так, чтобы теоретические значения f(t), вычисляемые по формуле, не сильно отличались от фактических данных в справочнике.
Использование компьютера как инструмента учебной деятельности дает возможность переосмыслить традиционные подходы к изучению многих вопросов естественнонаучных дисциплин, усилить экспериментальную деятельность учащихся, приблизить процесс обучения к реальному процессу познания, основанному на технологии моделирования. Использование компьютера как инструмента учебной деятельности дает возможность переосмыслить традиционные подходы к изучению многих вопросов естественнонаучных дисциплин, усилить экспериментальную деятельность учащихся, приблизить процесс обучения к реальному процессу познания, основанному на технологии моделирования. Решение задач из различных областей деятельности человека на компьютере базируются не только на знаниях учащимися технологии моделирования, но, естественно, и на знаниях данной предметной области. В связи с этим, предложенные уроки по моделированию целесообразнее проводить после изучения учащимися материала на общеобразовательном предмете, учителю информатики необходимо сотрудничать с учителями разных образовательных областей. Известен опыт проведения бинарных уроков, т.е. уроков, проводимых учителем информатики совместно с учителем-предметником. Решение задач из различных областей деятельности человека на компьютере базируются не только на знаниях учащимися технологии моделирования, но, естественно, и на знаниях данной предметной области. В связи с этим, предложенные уроки по моделированию целесообразнее проводить после изучения учащимися материала на общеобразовательном предмете, учителю информатики необходимо сотрудничать с учителями разных образовательных областей. Известен опыт проведения бинарных уроков, т.е. уроков, проводимых учителем информатики совместно с учителем-предметником.
| Планирование уроков на учебный год | Основные этапы моделирования
Урок 2
Основные этапы моделирования
Изучив эту тему, вы узнаете:
Что такое моделирование;
- что может служить прототипом для моделирования;
- какое место занимает моделирование в деятельности человека;
- каковы основные этапы моделирования;
- что такое компьютерная модель;
- что такое компьютерный эксперимент.
Компьютерный эксперимент
Чтобы дать жизнь новым конструкторским разработкам, внедрить новые технические решения в производство или проверить новые идеи, нужен эксперимент. Эксперимент - это опыт, который производится с объектом или моделью. Он заключается в выполнении некоторых действий и определении, как реагирует экспериментальный образец на эти действия.
В школе вы проводите опыты на уроках биологии, химии, физики, географии.
Эксперименты проводят при испытании новых образцов продукции на предприятиях. Обычно для этого используется специально создаваемая установка, позволяющая провести эксперимент в лабораторных условиях, либо сам реальный продукт подвергается всякого рода испытаниям (натурный эксперимент). Для исследования, к примеру, эксплуатационных свойств какого-либо агрегата или узла его помещают в термостат, замораживают в специальных камерах, испытывают на вибростендах, роняют и т. п. Хорошо, если это новые часы или пылесос - не велика потеря при разрушении. А если самолет или ракета?
Лабораторные и натурные эксперименты требуют больших материальных затрат и времени, но их значение, тем не менее, очень велико.
С развитием компьютерной техники появился новый уникальный метод исследования - компьютерный эксперимент. В помощь, а иногда и на смену экспериментальным образцам и испытательным стендам во многих случаях пришли компьютерные исследования моделей. Этап проведения компьютерного эксперимента включает две стадии: составление плана эксперимента и проведение исследования.
План эксперимента
План эксперимента должен четко отражать последовательность работы с моделью. Первым пунктом такого плана всегда является тестирование модели.
Тестирование - процесс проверки правильности построенной модели.
Тест - набор исходных данных, позволяющий определить пра- - вильность построения мЪдели.
Чтобы быть уверенным в правильности получаемых результатов моделирования, надо: ♦ проверить разработанный алгоритм построения модели; ♦ убедиться, что построенная модель правильно отражает свойства оригинала, которые учитывались при моделировании.
Для проверки правильности алгоритма построения модели используется тестовый набор исходных данных, для которых конечный результат заранее известен или предварительно определен другими способами.
Например, если вы используете при моделировании расчетные формулы, то надо подобрать несколько вариантов исходных данных и просчитать их «вручную». Это тестовые задания. Когда модель построена, вы проводите тестирование с теми же вариантами исходных данных и сравниваете результаты моделирования с выводами, полученными расчетным путем. Если результаты совпадают, то алгоритм разработан верно, если нет - надо искать и устранять причину их расхождения. Тестовые данные могут совершенно не отражать реальную ситуацию и не нести смыслового содержания. Однако полученные в процессе тестирования результаты могут натолкнуть вас на мысль об изменении исходной информационной или знаковой модели, прежде всего в той ее части, где заложено смысловое содержание.
Чтобы убедиться, что построенная модель отражает свойства оригинала, которые учитывались при моделировании, надо подобрать тестовый пример с реальными исходными данными.
Проведение исследования
После тестирования, когда у вас появилась уверенность в правильности построенной модели, можно переходить непосредственно к проведению исследования.
В плане должен быть предусмотрен эксперимент или серия экспериментов, удовлетворяющих целям моделирования. Каждый эксперимент должен сопровождаться осмыслением итогов, что служит основой анализа результатов моделирования и принятия решений.
Схема подготовки и проведения компьютерного эксперимента приведена на рисунке 11.7.
Рис. 11.7. Схема компьютерного эксперимента
Анализ результатов моделирования
Конечная цель моделирования - принятие решения, которое должно быть выработано на основе всестороннего анализа результатов моделирования. Этот этап решающий - либо вы продолжаете исследование, либо заканчиваете. На рисунке 11.2 видно, что этап анализа результатов не может существовать автономно. Полученные выводы часто способствуют проведению дополнительной серии экспериментов, а подчас и изменению задачи.
Основой выработки решения служат результаты тестирования и экспериментов. Если результаты не соответствуют целям поставленной задачи, значит, на предыдущих этапах были допущены ошибки. Это может быть либо неправильная постановка задачи, либо слишком упрощённое построение информационной модели, либо неудачный выбор метода или среды моделирования, либо нарушение технологических приемов при построении модели. Если такие ошибки выявлены, то требуется корректировка модели у то есть возврат к одному из предыдущих этапов. Процесс повторяется до тех пор, пока результаты эксперимента не будут отвечать целям моделирования.
Главное, надо всегда помнить: выявленная ошибка - тоже результат. Как гласит народная мудрость, на ошибках учатся. Об этом писал и великий русский поэт А. С. Пушкин:
О, сколько нам открытий чудных
Готовят просвещенья дух
И опыт, сын ошибок трудных,
И гений, парадоксов друг,
И случай, бог изобретатель...
Контрольные вопросы и задания
1. Назовите два основных типа постановки задач моделирования.
2. В известном «Задачнике» Г. Остера есть следущая задача:
Злая колдунья, работая не покладая рук, превращает в гусениц по 30 принцесс в день. Сколько дней ей понадобится, чтобы превратить в гусениц 810 принцесс? Сколько принцесс в день придется превращать в гусениц, чтобы управиться с работой за 15 дней?
Какой вопрос можно отнести к типу «что будет, если...», а какой - к типу «как сделать, чтобы...»?
3. Перечислите наиболее известные цели моделирования.
4. Формализуйте шутливую задачу из «Задачника» Г. Остера:
Из двух будок, находящихся на расстоянии 27 км одна от другой, навстречу друг другу выскочили в одно и то же время две драчливые собачки. Первая бежит со скоростью 4 км/час, а вторая - 5 км/час.
Через сколько времени начнется драка?
5.
Назовите как можно больше характеристик объекта «пара ботинок ». Составьте информационную модель объекта для разных целей:
■ выбор обуви для туристского похода;
■ подбор подходящей коробки для обуви;
■ покупка крема для ухода за обувью.
6. Какие характеристики подростка существенны для рекомендации по выбору профессии?
7. По каким причинам компьютер широко используется в моделировании?
8. Назовите известные вам инструменты компьютерного моделирования.
9. Что такое компьютерный эксперимент? Приведите пример.
10. Что такое тестирование модели?
11. Какие ошибки встречаются в процессе моделирования? Что надо делать, когда ошибка обнаружена?
12. В чем заключается анализ результатов моделирования? Какие выводы обычно делаются?
Компьютерное моделирование - основа представления знаний в ЭВМ. Компьютерное моделирование для рождения новой информации использует любую информацию, которую можно актуализировать с помощью ЭВМ. Прогресс моделирования связан с разработкой систем компьютерного моделирования, а прогресс в информационной технологии - с актуализацией опыта моделирования на компьютере, с созданием банков моделей, методов и программных систем, позволяющих собирать новые модели из моделей банка.
Разновидность компьютерного моделирования - вычислительный эксперимент, т. е. эксперимент, осуществляемый экспериментатором над исследуемой системой или процессом с помощью орудия эксперимента - компьютера, компьютерной среды, технологии.
Вычислительный эксперимент становится новым инструментом, методом научного познания, новой технологией также из-за возрастающей необходимости перехода от исследования линейных математических моделей систем (для которых достаточно хорошо известны или разработаны методы исследования, теория) к исследованию сложных и нелинейных математических моделей систем (анализ которых гораздо сложнее). Грубо говоря, наши знания об окружающем мире линейны, а процессы в окружающем мире нелинейны.
Вычислительный эксперимент позволяет находить новые закономерности, проверять гипотезы, визуализировать ход событий и т. д.
Чтобы дать жизнь новым конструкторским разработкам, внедрить новые технические решения в производство или проверить новые идеи, нужен эксперимент. В недалеком прошлом такой эксперимент можно было провести либо в лабораторных условиях на специально создаваемых для него установках, либо на натуре, т. е. на настоящем образце изделия, подвергая его всяческим испытаниям.
С развитием вычислительной техники появился новый уникальный метод исследования - компьютерный эксперимент. Компьютерный эксперимент включает некоторую последовательность работы с моделью, совокупность целенаправленных действий пользователя над компьютерной моделью.
Этап 4. Анализ результатов моделирования.
Конечная цель моделирования - принятие решения, которое должно быть выработано на основе всестороннего анализа полученных результатов. Этот этап решающий - либо вы продолжаете исследование, либо заканчиваете. Возможно, вам известен ожидаемый результат, тогда необходимо сравнить полученный и ожидаемый результаты. В случае совпадения вы сможете принять решение.
Основой для выработки решения служат результаты тестирования и экспериментов. Если результаты не соответствуют целям поставленной задачи, значит, допущены ошибки на предыдущих этапах. Это может быть либо слишком упрощенное построение информационной модели, либо неудачный выбор метода или среды моделирования, либо нарушение технологических приемов при построении модели. Если такие ошибки выявлены, то требуется корректировка модели , т. е. возврат к одному из предыдущих этапов. Процесс повторяется до тех пор, пока результаты эксперимента не будут отвечать целям моделирования. Главное, надо всегда помнить: выявленная ошибка - тоже результат. Как говорит народная мудрость, на ошибках учатся.
Программы моделирования
ANSYS - универсальная программная система конечно-элементного (МКЭ ) анализа, существующая и развивающаяся на протяжении последних 30 лет, является довольно популярной у специалистов в области компьютерного инжиниринга (CAE , Computer-Aided Engineering) и КЭ решения линейных и нелинейных, стационарных и нестационарных пространственных задач механики деформируемого твёрдого тела и механики конструкций (включая нестационарные геометрически и физически нелинейные задачи контактного взаимодействия элементов конструкций), задач механики жидкости и газа, теплопередачи и теплообмена, электродинамики, акустики, а также механики связанных полей. Моделирование и анализ в некоторых областях промышленности позволяет избежать дорогостоящих и длительных циклов разработки типа «проектирование - изготовление - испытания». Система работает на основе геометрического ядра Parasolid .
AnyLogic - программное обеспечение для имитационного моделирования сложных систем и процессов , разработанное российской компанией «Экс Джей Текнолоджис» (англ. XJ Technologies ). Программа обладает графической средой пользователя и позволяет использовать язык Java для разработки моделей .
Модели AnyLogic могут быть основаны на любой из основных парадигм имитационного моделирования: дискретно-событийное моделирование , системная динамика , и агентное моделирование .
Системная динамика и дискретно-событийное (процессное) моделирование, под которым мы понимаем любое развитие идей GPSS - это традиционные устоявшиеся подходы, агентное моделирование - относительно новый. Системная динамика оперирует в основном с непрерывными во времени процессами, тогда как дискретно-событийное и агентное моделирование - с дискретными.
Системная динамика и дискретно-событийное моделирование исторически преподаются совершенно разным группам студентов: менеджмент, инженеры по организации производства и инженеры-разработчики систем управления. В результате возникли три различных практически не пересекающихся сообщества, которые почти никак не общаются друг с другом.
Агентное моделирование до недавнего времени было строго академическим направлением. Однако, растущий спрос на глобальную оптимизацию со стороны бизнеса, заставил ведущих аналитиков обратить внимание именно на агентное моделирование и его объединение с традиционными подходами с целью получения более полной картины взаимодействия сложных процессов различной природы. Так родился спрос на программные платформы, позволяющие интегрировать различные подходы.
Теперь рассмотрим подходы имитационного моделирования на шкале уровня абстракции. Системная динамика, заменяя индивидуальные объекты их агрегатами, предполагает наивысший уровень абстракции. Дискретно-событийное моделирование работает в низком и среднем диапазоне. Что же касается агентного моделирования, то оно может применяться практически на любом уровне и в любых масштабах. Агенты могут представлять пешеходов, автомобили или роботов в физическом пространстве, клиента или продавца на среднем уровне, или же конкурирующие компании на высоком.
При разработке моделей в AnyLogic можно использовать концепции и средства из нескольких методов моделирования, например, в агентной модели использовать методы системной динамики для представления изменений состояния среды или в непрерывной модели динамической системы учесть дискретные события. Например, управление цепочками поставок при помощи имитационного моделирования требует описания участников цепи поставок агентами: производители, продавцы, потребители, сеть складов. При этом производство описывается в рамках дискретно-событийного (процессного) моделирования, где продукт или его части - это заявки, а автомобили, поезда, штабелёры - ресурсы. Сами поставки представляются дискретными событиями, но при этом спрос на товары может описываться непрерывной системно-динамической диаграммой. Возможность смешивать подходы позволяет описывать процессы реальной жизни, а не подгонять процесс под доступный математический аппарат.
LabVIEW (англ. Lab oratory V irtual I nstrumentation E ngineering W orkbench) - это среда разработки и платформа для выполнения программ, созданных на графическом языке программирования «G» фирмы National Instruments (США). Первая версия LabVIEW была выпущена в 1986 году для Apple Macintosh , в настоящее время существуют версии для UNIX , GNU/Linux , Mac OS и пр., а наиболее развитыми и популярными являются версии для Microsoft Windows .
LabVIEW используется в системах сбора и обработки данных, а также для управления техническими объектами и технологическими процессами. Идеологически LabVIEW очень близка к SCADA -системам, но в отличие от них в большей степени ориентирована на решение задач не столько в области АСУ ТП , сколько в области АСНИ .
MATLAB (сокращение от англ. « Matrix Laboratory » ) - термин, относящийся к пакету прикладных программ для решения задач технических вычислений, а также к используемому в этом пакете языку программирования. MATLAB используют более 1 000 000 инженерных и научных работников, он работает на большинстве современных операционных систем , включая GNU/Linux , Mac OS , Solaris и Microsoft Windows .
Maple - программный пакет, система компьютерной алгебры . Является продуктом компании Waterloo Maple Inc., которая с 1984 года выпускает и продвигает на рынке программные продукты, ориентированные на сложные математические вычисления, визуализацию данных и моделирование.
Система Maple предназначена для символьных вычислений , хотя имеет ряд средств и для численного решения дифференциальных уравнений и нахождения интегралов . Обладает развитыми графическими средствами. Имеет собственный язык программирования , напоминающий Паскаль .
Mathematica - система компьютерной алгебры компании Wolfram Research . Содержит множество функций как для аналитических преобразований, так и для численных расчётов. Кроме того, программа поддерживает работу с графикой и звуком , включая построение двух- и трёхмерных графиков функций, рисование произвольных геометрических фигур , импорт и экспорт изображений и звука.
Инструменты прогнозирования - программные продукты, имеющие функции расчёта прогнозов. Прогнозирование - один из важнейших видов деятельности человека на сегодняшний день. Ещё в древние времена прогнозы позволяли людям рассчитывать периоды засух, даты солнечных и лунных затмений и многих других явлений. С появлением вычислительной техники прогнозирование получило мощнейший толчок развития. Одним из первых применений вычислительных машин был расчёт баллистической траектории снарядов, то есть, фактически, прогноз точки падения снаряда на землю. Такой вид прогноза называется статическим прогнозом. Существуют две основные категории прогнозов: статические и динамические. Ключевое отличие состоит в том что динамические прогнозы предоставляют информацию о поведении исследуемого объекта на протяжении какого-либо значительного интервала времени. В свою очередь, статические прогнозы отражают состояние исследуемого объекта лишь в единственный момент времени и, как правило, в таких прогнозах фактор времени, в котором объект претерпевает изменения, играет незначительную роль. На сегодняшний день существует большое количество инструментов, позволяющих строить прогнозы. Все они могут быть подвергнуты классификации по многим признакам:
Название инструмента |
Сфера применения |
Реализуемые модели |
Требуемая подготовка пользователя |
Готовность к эксплуатации |
Microsoft Excel , OpenOffice.org |
широкого назначения |
алгоритмические, регрессионные |
базовые знания статистики |
требуется значительная доработка (реализация моделей) |
Statistica , SPSS , E-views |
исследовательская |
широкий спектр регрессионных, нейросетевые |
коробочный продукт |
|
Matlab |
исследовательская, разработка приложений |
алгоритмические, регрессионные, нейросетевые |
специальное математическое образование |
требуется программирование |
SAP APO |
бизнес-прогнозирование |
алгоритмические |
не требуются глубокие знания | |
ForecastPro , ForecastX |
бизнес-прогнозирование |
алгоритмические |
не требуются глубокие знания |
коробочный продукт |
Logility |
бизнес-прогнозирование |
алгоритмические, нейросетевые |
не требуются глубокие знания |
требуется значительная доработка (под бизнес-процессы) |
ForecastPro SDK |
бизнес-прогнозирование |
алгоритмические |
требуются базовые знания статистики |
требуется программирование (интеграция с ПО) |
iLog , AnyLogic , iThink , Matlab Simulink , GPSS |
разработка приложений, моделирование |
имитационные |
требуется специальное математическое образование |
требуется программирование (под специфику области) |
ПК ЛИРА - многофункциональный программный комплекс, предназначенный для проектирования и расчета машиностроительных и строительных конструкций различного назначения. Расчеты в программе выполняются как на статические, так и на динамические воздействия. Основой расчётов является метод конечных элементов (МКЭ). Различные подключаемые модули (процессоры) позволяют делать подбор и проверку сечений стальных и железобетонных конструкций, моделировать грунт, рассчитывать мосты и поведение зданий в период монтажа и т. д.
В заключение главы рассмотрим вопрос: куда относить компьютерный эксперимент и компьютерное моделирование (computer simulations)!
Первоначально компьютерное моделирование появляется в метеорологии и ядерной физике, но сегодня спектр его применения в науке и технике чрезвычайно широк. Очень показателен в этом отношении пример "глобального моделирования", где мир рассматривается как совокупность взаимодействующих между собой подсистем: население, социум, экономика, производство продовольствия, инновационный комплекс, природные ресурсы, среда обитания, страны и регионы мира (первым примером является опубликованный в 1972 г. доклад Римскому клубу "Пределы роста"). Развитие и взаимодействие этих подсистем определяют мировую динамику.
Очевидно, что мы имеем здесь дело со сверхсложной системой с массой нелинейных взаимодействий, для которой не удается построить ВИО-тип модели. Поэтому здесь поступают следующим образом. Собирается полидисциплинарная группа, состоящая из специалистов, относящихся к различным подсистемам. Эта группа, исходя из имеющихся у ее членов знаний, составляет блок-схему из большого множества элементов и связей. Эта блок-схема преобразуется в математическую компьютерную модель, репрезентирующую моделируемую систему. После чего проводятся численные эксперименты с компьютерной моделью, т.е. компьютерные эксперименты, которые со стороны создания моделей объектов и процессов, отладки и выполнения напоминают реальный сложный эксперимент.
Между мысленным и компьютерным экспериментами есть определенная аналогия. В случае компьютерного эксперимента отрабатываемая в ходе него компьютерная модель является аналогом ВИО-модели в мысленном ВИО-эксперименте. В обоих случаях экспериментальное исследование является элементом поиска адекватной теоретической модели. В ходе этого поиска в первом случае подбираются ПИО и взаимодействия между ними (и их величина), а во втором – элементы и связи (и их величина). Из этого сопоставления очевидно, что результатом такой экспериментальной деятельности в обоих случаях возможно появление нового знания. То есть компьютерные модели соответствуют теоретическим ВИО-моделям явления, а компьютерный эксперимент является средством для их построения. При этом экспериментирование происходит с моделью, а не явлением (на то же согласно работе указывается и в работах ).
В физике и других естественных науках в случае "лабораторных" явлений реальный эксперимент может что-то менять в самом явлении ("задавать ему вопрос"). Если этого оказывается достаточно, чтобы создать ВИО-модель, и остается вопрос лишь об уточнении ее параметров, то в этом случае компьютерная модель имеет более тривиальное, чем описано выше, применение – решение сложных уравнений, описывающих физическую или техническую систему, и подбор параметров для систем, для которых ВИО-модель уже задана. Этот случай часто называют "численным экспериментом".
Однако в физике рассматриваются и явления, которые нужно качественно изучить до помещения их в лабораторию, например выделение ядерной энергии или рождение элементарных частиц. Подобная ситуация может возникнуть: 1) в перечисленных для мысленного эксперимента случаях экономической или технической сложности реального эксперимента, 2) в случае отсутствия ВИО-модели, т.е. отсутствия теории явления (как в случае турбулентных течений). В ядерной физике и физике элементарных частиц мы имеем первый, если нс оба случая. Здесь мы имеем ситуацию, аналогичную "глобальному моделированию", и начинаем экспериментировать с теоретическими моделями путем компьютерного моделирования. Поэтому неудивительно, что компьютерное моделирование появилось в ядерной физике очень рано.
Итак, компьютерный эксперимент и компьютерные модели в нетривиальном случае, как в примере с "глобальным моделированием", отвечают, соответственно, мысленному ВИО-эксперименту и теоретическим ВИО- моделям явления.
Эксперимент – это форма связи между двумя сторонами – явлением и теоретической моделью. В принципе, отсюда следует возможность манипулирования с двумя сторонами . В случае реального эксперимента экспериментирование происходит с явлением, а в случае мысленного и компьютерного эксперимента, который можно рассматривать как аналог мысленного, – с моделью. Но в обоих случаях целью является получение нового знания в виде адекватной теоретической модели.
- Это включает и замечание E. Winsberg: "Неверно, что реальный эксперимент всегда манипулирует только с интересующим объектом. Фактически и в реальном эксперименте, и в симуляции имеет место сложное отношение между тем, с чем манипулируют в исследовании, с одной стороны, и системами реального мира, которые являются целью исследования – с другой... Мендель, например, манипулировал с горохом, а интересовался изучением феномена общей наследственности" .
У современного компьютера много направлений использования. Среди них, как вы знаете, особое значение имеют возможности компьютера как средства автоматизации информационных процессов. Но не менее значимы и его возможности как инструмента проведения экспериментальной работы и анализа ее результатов.
Вычислительный эксперимент давно известен в науке. Вспомните открытие планеты Нептун «на кончике пера». Нередко результаты научных исследований считаются достоверными, только если они могут быть представлены в виде математических моделей и подтверждены математическими расчетами. Причем, относится это не только к физике
или техническому конструированию, но и к социологии, лингвистике, маркетингу - традиционно гуманитарным дисциплинам, далеким от математики.
Вычислительный эксперимент является теоретическим методом познания. Развитием этого метода является численное моделирование - сравнительно новый научный метод, получивший широкое распространение благодаря появлению ЭВМ.
Численное моделирование широко используется и на практике, и при проведении научных исследований.
Пример. Без построения математических моделей и проведения самых разных расчетов над постоянно изменяющимися данными, поступающими с измерительных приборов, невозможна работа автоматических производственных линий, автопилотов, станций слежения, систем автоматической диагностики. Причем для обеспечения надежности систем расчеты должны проводиться в режиме реального времени, а их погрешности могут составлять миллионные доли процента.
Пример. Современного астронома чаще можно увидеть не у окуляра телескопа, а перед дисплеем компьютера. Причем не только теоретика, но и наблюдателя. Астрономия - необычная наука. Она, как правило, не может непосредственно экспериментировать с объектами исследований. Различные виды излучения (электромагнитное, гравитационное, потоки нейтрино или космических лучей) астрономы только «подсматривают» и «подслушивают». Значит, нужно научиться извлекать максимум информации из наблюдений и воспроизводить их в расчетах для проверки гипотез, описывающих эти наблюдения. Применения компьютеров в астрономии, как и в других науках чрезвычайно разнообразны. Это и автоматизация наблюдений, и обработка их результатов (астрономы видят изображения не в окуляре, а на мониторе, соединенным со специальными приборами). Компьютеры также необходимы для работы с большими каталогами (звезд, спек-тальных анализов, химических соединений и пр.).
Пример. Всем известно выражение «буря в стакане воды». Чтобы детально исследовать такой сложный гидродинамический процесс, как буря, необходимо привлекать сложные методы численного моделирования. Поэтому в крупных гидрометеоцентрах находятся мощные компьютеры: «буря разыгрывается» в кристалле процессора компьютера.
Даже если вы проводите не очень сложные вычисления, но вам нужно повторить их миллион раз, то лучше один раз написать программу, а компьютер повторит ее столько раз, сколько это нужно (ограничением, естественно, будет быстродействие компьютера).
Численное моделирование может быть самостоятельным методом исследования, когда интерес представляют только значения каких-то показателей (например, себестоимости продукции или интегрального спектра галактики), но чаще оно выступает одним из средств построения компьютерных моделей в более широком смысле этого термина.
Исторически сложилось так, что первые работы по компьютерному моделированию были связаны с физикой, где с помощью численного моделирования решался целый класс задач гидравлики, фильтрации, теплопереноса и теплообмена, механики твердого тела и т. п. Моделирование, в основном, представляло собой решение сложных нелинейных задач математической физики и по существу было, конечно, моделированием математическим. Успехи математического моделирования в физике способствовали распространению его на задачи химии, электроэнергетики, биологии, причем схемы моделирования не слишком отличались друг от друга. Сложность решаемых на основе моделирования задач ограничивалась лишь мощностью имеющихся ЭВМ. Данный вид моделирования широко распространен и в настоящеее время. Более того, за время развития численного моделирования накоплены целые библиотеки подпрограмм и функций, облегчающих применение и расширяющих возможности моделирования. И все же в настоящее время понятие «компьютерное моделирование» обычно связывают не с фундаментальными естественно-научными дисциплинами, а в первую очередь с системным анализом сложных систем с позиций кибернетики (то есть с позиций управления, самоуправления, самоорганизации). И сейчас компьютерное моделирование широко используется в биологии, макроэкономике, при создании автоматизированных систем управления и пр.
Пример. Вспомните эксперимент Пиаже, описанный в предыдущем параграфе. Его, конечно же можно было бы провести не с реальными предметами, а с анимационным изображением на экране дисплея. Но ведь движение игрушек можно было бы заснять на обычную кинопленку и демонстрировать ее по телевизору. Целесообразно ли называть использование компьютера в этом случае компьютерным моделированием?
Пример. Моделью полета тела, брошенного вертикально вверх или под углом к горизонту, является, например, график высоты тела в зависимости от времени. Построить его можно
а) на листе бумаги по точкам;
б) в графическом редакторе по тем же точкам;
в) с помощью программы деловой графики, например, в
электронных таблицах;
г) написав программу, которая не только выводит на эк
ран траекторию полета, но и позволяет задавать различ
ные исходные данные (угол наклона, начальную ско
рость).
Почему вариант б) не хочется называть компьютерной моделью, а варианты в) и г) вполне соответствуют этому названию?
Под компьютерной моделью часто понимают программу (или программу плюс специальное устройство), которая обеспечивает имитацию характеристик и поведения определенного объекта. Результат выполнения этой программы также называют компьютерной моделью.
В специальной литературе термин «компьютерная модель» более строго определяется так:
Условный образ объекта или некоторой системы объектов (процессов, явлений), описанный с помощью взаимосвязанных компьютерных таблиц, блок-схем, диаграмм, графиков, рисунков, анимационных фрагментов, гипертекстов и так далее и отображающий структуру (элементы и взаимосвязи между ними) объекта. Компьютерные модели такого вида называют структурно-функциональными;
Отдельную программу или совокупность программ, позволяющих с помощью последовательности вычислений и графического отображения их результатов воспроизводить (имитировать) процессы функционирования объекта при условии воздействия на него различных, как правило случайных, факторов. Такие модели называют имитационными.
Компьютерные модели могут быть простыми и сложными. Простые модели вы неоднократно создавали, когда изучали программирование или строили свою базу данных. В системах трехмерной графики, экспертных системах, автоматизированных системах управления строятся и используются очень сложные компьютерные модели.
Пример. Идея построить модель деятельности человека с помощью компьютера не нова, и трудно найти такую область деятельности, в которой ее не пытались бы реализовать. Экспертные системы - компьютерные программы, моделирующие действия эксперта-человека при решении задач в какой-либо предметной области на основе накопленных знаний, составляющих базу знаний. ЭС решают задачу моделирования умственной деятельности. Из-за сложности моделей разработка ЭС занимает, как правило, несколько лет.
Современные экспертные системы кроме базы знаний имеют еще и базу прецедентов - например, результаты обследования реальных людей и информацию о последующей успешности/неуспешности их деятельности. Для примера, база прецедентов экспертной системы Нью-Йоркской полиции - 786 000 чел., Центра «Хобби» (кадровая политика на предприятии) - 512 000 чел., причем по словам специалистов этого центра, разрабатываемая ими ЭС заработала с ожидаемой точностью, только когда база перевалила за 200 000 человек, на ее создание ушло 6 лет.
Пример. Прогресс в создании компьютерных графических изображений продвинулся от каркасных образов трехмерных моделей с простым полутоновым изображением до современных реалистических картинок, являющихся образцами искусства. Это явилось результатом успеха в более точном определении среды моделирования. Прозрачность, отражение, тени, модели освещения и свойства поверхности - вот несколько областей, где напряженно работают группы исследователей, постоянно предлагающие новые алгоритмы создания все более реалистичных искусственных образов. Сегодня эти методы применяются и для создания качественной анимации.
Практические потребности в компьютерном моделировании ставят задачи перед разработчиками аппаратных средств компьютера. То есть метод активно влияет не только на появление все новых и новых программ, но и на развитие технических средств.
Пример. Впервые о компьютерной голографии заговорили в 80-х годах. Так, в системах автоматизированного проектирования, в геоинформационных системах было бы неплохо иметь возможность не просто посмотреть интересующий объект в трехмерном виде, но представить его в виде го-лограмы, которую можно повернуть, наклонить, заглянуть внутрь нее. Чтобы создать голографическую картинку, полезную в реальных приложениях, необходимы
голографической
картинки
дисплеи с гигантским количеством пикселей - до миллиарда. Сейчас такая работа активно ведется. Одновременно с разработкой голографического дисплея полным ходом идет работа по созданию трехмерной рабочей станции на основе принципа, получившего название «подмена реальности». За этим термином стоит идея широкого применения всех тех естественных и интуитивных методов, которые человек использует при взаимодействии с натурными (вещественно-энергетическими) моделями, но при этом делается упор на их всестороннее улучшение и развитие с помощью уникальных возможностей цифровых систем. Предполагается, например, что будет возможность манипулирования и взаимодействия с компьютерными голограммами в реальном времени с помощью жестов и прикосновений.
Компьютерное моделирование имеет следующие преимущества:
Обеспечивает наглядность;
Доступно в использовании.
Основное преимущество компьютерного моделирования заключается в том, что оно позволяет не только пронаблюдать, но и предсказать результат эксперимента при каких-то особых условиях. Благодаря этой возможности этот метод нашел применение в биологии, химии, социологии, экологии, физике, экономике и многих других сферах знания.
Компьютерное моделирование широко используется в обучении. С помощью специальных программ можно посмотреть модели таких явлений, как явления микромира и мира с астрономическими размерами, явления ядерной и квантовой физики, развитие растений и превращения веществ при химических реакциях.
Подготовка специалистов многих профессий, особенно таких, как авиадиспетчеры, пилоты, диспетчеры атомных и электростанций, осуществляется с помощью тренажеров, управляемых компьютером, моделирующим реальные ситуации, в том числе аварийные.
На компьютере можно провести лабораторные работы, если нет необходимых реальных устройств и приборов или если решение задачи требует применения сложных математических методов и трудоемких расчетов.
Компьютерное моделирование дает возможность «оживить» изучаемые физические, химические, биологические, социальные законы, поставить с моделью ряд экспериментов. Но не стоит забывать, что все эти эксперименты носят весьма условный характер и познавательная ценность их тоже весьма условна.
Пример. До практического использования реакции ядерного распада физики-ядерщики просто не знали о вреде радиации, но первое массовое применение «достижений» (Хиросима и Нагасаки) четко показало, насколько радиация
с опасна для человека. Начни физики с ядерных электро-
станций, человечество долго еще не узнало бы о вреде радиации. Достижение химиков начала прошлого века -мощнейший пестицид ДДТ - достаточно долго считался абсолютно безопасным для человека-
В условиях применения мощных современных технологий, широкого тиражирования и бездумного использования ошибочных программных продуктов такие узкоспециальные, казалось бы, вопросы, как адекватность компьютерной модели реальности, могут приобрести весомое общечеловеческое значение.
Компьютерные эксперименты - это инструмент исследования моделей, а не природных или социальных явлений.
Поэтому одновременно с компьютерным экспериментом всегда должен идти натурный, чтобы исследователь, сравнивая их результаты, мог оценить качество соответствующей модели, глубину наших представлений о сути явлений при-
роды. Не стоит забывать, что физика, биология, астрономия, информатика это науки о реальном мире, а не о виртуальной реальности.
В научных исследованиях, как фундаментальных так и практически направленных (прикладных), компьютер нередко выступает как необходимый инструмент экспериментальной работы.
Компьютерный эксперимент чаще всего связан:
С проведением сложных математических расчетов (чис
ленное моделирование);
С построением и исследованием наглядных и/или дина
мических моделей (компьютерное моделирование).
Под компьютерной моделью понимается программа (или программа в совокупности со специальным устройством), которая обеспечивает имитацию характеристик и поведения определенного объекта, а также результат выполнения этой программы в виде графических изображений (неподвижных или динамических), числовых значений, таблиц и пр.
Различают структурно-функциональные и имитационные компьютерные модели.
Структурно-функциональная компьютерная модель - это условный образ объекта или некоторой системы объектов (процессов, явлений), описанный с помощью взаимосвязанных компьютерных таблиц, блок-схем, диаграмм, графиков, рисунков, анимационных фрагментов, гипертекстов и так далее и отображающий структуру объекта или его поведение.
Имитационная компьютерная модель - это отдельная программа или программный комплекс, позволяющий с помощью последовательности вычислений и графического отображения их результатов воспроизводить (имитировать) процессы функционирования объекта при условии воздействия на него различных случайных факторов.
Компьютерное моделирование - метод решения задачи анализа или синтеза системы (чаще всего сложной системы) на основе использования ее компьютерной модели.
Преимущества компьютерного моделирования заключаются в том, что оно:
Позволяет не только пронаблюдать, но и предсказать результат эксперимента при каких-то особых условиях;
Позволяет моделировать и изучать явления, предсказываемые любыми теориями;
Является экологически чистым и не представляет опасности для природы и человека;
Обеспечивает наглядность;
Доступно в использовании.
Метод компьютерного моделирования нашел применение в биологии, химии, социологии, экологии, физике, экономике, лингвистике, юриспруденции и многих других сферах знания.
Компьютерное моделирование широко используется в обучении, подготовке и переподготовке специалистов:
Для наглядного представления моделей явлений микромира и мира с астрономическими размерами;
Для имитации процессов, происходящих в мире живой и неживой природы
Для моделирования реальных ситуаций управления сложными системами, в том числе аварийных ситуаций;
Для проведения лабораторных работ, когда нет необходимых устройств и приборов;
Для решения задач, если при этом требуется применение сложных математических методов и трудоемких расчетов.
Важно помнить, что на компьютере моделируется не объективная реальность, а наши теоретические представления о ней. Объектом компьютерного моделирования являются математические и другие научные модели, а не реальные объекты, процессы, явления.
Компьютерные эксперименты - это инструмент исследования моделей, а не природных или социальных явлений.
Критерием верности любого из результатов компьютерного моделирования был и остается натурный (физический, химический, социальный) эксперимент. В научных и практических исследованиях компьютерный эксперимент может лишь сопутствовать натурному, чтобы исследователь, срав-
нивая их результаты, мог оценить качество модели, глубину наших представлений о сути явлений природы.
Важно помнить, что физика, биология, астрономия, экономика, информатика - это науки о реальном мире, а не о
виртуальной реальности.
Задание 1
Письмо, написанное в текстовом редакторе и отправленное по электронной почте, вряд ли кто-нибудь назовет компьютерной моделью.
Текстовые редакторы часто позволяют создавать не только обычные документы (письма, стаьи, отчеты), но и шаблоны документов, в которых есть постоянная информация, которую пользователь не может изменить, есть поля данных, которые заполняются пользователем, а есть поля, в которых автоматически производятся расчеты на основании введенных данных. Можно ли такой шаблон рассматривать как компьютерную модель? Если да, то что в этом случае является объектом моделирования и какова цель создания подобной модели?
Задание 2
Вы знаете, что перед тем, как создавать базу данных, сначала нужно построить модель данных. Вам также известно, что алгоритм - это модель деятельности.
И модели данных и алгоритмы чаще всего разрабатываются в расчете на компьютерную реализацию. Можно ли сказать, что в какой-то момент они становятся компьютерной моделью, и если да, то когда это происходит?
Примечание. Проверьте свой ответ на соответствие определению понятия «компьютерная модель».
Задание 3
Опишите этапы построения компьютерной модели на примере разработки программы, имитирующей какое-нибудь физическое явление.
Задание 4
Приведите примеры, когда компьютерное моделирование принесло реальную пользу и когда оно привело к нежелательным последствиям. Подготовьте доклад на эту тему.