Скачать презентацию Модели решения функциональных и вычислительных задач 1. Моделирование Скачать презентацию Модели решения функциональных и вычислительных задач 1. Моделирование

8 - Моделирование.ppt

  • Количество слайдов: 43

Модели решения функциональных и вычислительных задач 1. Моделирование как метод познания 2. Классификация и Модели решения функциональных и вычислительных задач 1. Моделирование как метод познания 2. Классификация и формы представления моделей 3. Методы и технологии моделирования моделей 4. Информационная модель объекта 5. Технологии программирования

1. Моделирование как метод познания 1. Моделирование как метод познания

Модели в нашей жизни 3 Модели в нашей жизни 3

Что такое модель? Модель – это копия объекта, допускающая манипуляции во времени и пространстве Что такое модель? Модель – это копия объекта, допускающая манипуляции во времени и пространстве и отражающая лишь избранные характеристики объекта исследования. Оригиналы и модели 4

Что можно моделировать? Модели объектов: • уменьшенные копии зданий, кораблей, самолетов, … • модели Что можно моделировать? Модели объектов: • уменьшенные копии зданий, кораблей, самолетов, … • модели ядра атома, кристаллических решеток • чертежи • … Модели процессов: • изменение экологической обстановки • экономические модели • исторические модели • … Модели явлений: • землетрясение • солнечное затмение • цунами • … 5

Моделирование – это создание и использование моделей для изучения оригиналов. Когда используют моделирование: • Моделирование – это создание и использование моделей для изучения оригиналов. Когда используют моделирование: • оригинал не существует - древний Египет - последствия ядерной войны (Н. Н. Моисеев, 1966) • исследование оригинала опасно для жизни или дорого: - управление ядерным реактором (Чернобыль, 1986) - испытание нового скафандра для космонавтов - разработка нового самолета или корабля • оригинал сложно исследовать непосредственно: - Солнечная система, галактика (большие размеры) атом, нейтрон (маленькие размеры) процессы в двигателе внутреннего сгорания (очень быстрые) геологические явления (очень медленные) • интересуют только некоторые свойства оригинала - проверка краски для фюзеляжа самолета 6

Цели моделирования • исследование оригинала изучение сущности объекта или явления • анализ ( «что Цели моделирования • исследование оригинала изучение сущности объекта или явления • анализ ( «что будет, если …» ) научиться прогнозировать последствия различных воздействиях на оригинал • синтез ( «как сделать, чтобы …» ) научиться управлять оригиналом, оказывая на него воздействия • оптимизация ( «как сделать лучше» ) выбор наилучшего решения в заданных условиях 7

Один оригинал – одна модель? • материальная точка ! Оригиналу может соответствовать несколько разных Один оригинал – одна модель? • материальная точка ! Оригиналу может соответствовать несколько разных моделей и наоборот! 8

9 Зачем нужно много моделей? ! Тип модели определяется целями моделирования! изучение наследственности изучение 9 Зачем нужно много моделей? ! Тип модели определяется целями моделирования! изучение наследственности изучение строения тела примерка одежды учет граждан страны тренировка спасателей

2. Классификация моделей 2. Классификация моделей

1 -Модели по возможности реализации • материальные (физические, аналоговые) модели: • информационные модели представляют 1 -Модели по возможности реализации • материальные (физические, аналоговые) модели: • информационные модели представляют собой информацию о свойствах и состоянии объекта, процесса, явления, и его взаимосвязи с внешним миром: • вербальные – словесные или мысленные (протокол милиции) • знаковые – выраженные с помощью формального языка q графические (рисунки, схемы, карты, …) q табличные q математические (формулы) q логические (различные варианты выбора действий на основе анализа условий) q специальные (ноты, химические формулы) 11

2 -Модели по области применения • учебные (в т. ч. тренажеры) • опытные – 2 -Модели по области применения • учебные (в т. ч. тренажеры) • опытные – при создании новых технических средств аэродинамическая труба испытания в опытовом бассейне • научно-технические имитатор солнечного вакуумная камера в Институте излучения космических исследований вибростенд НПО «Энергия» 12

Модели по области применения • имитационные - нельзя заранее вычислить или предсказать поведение системы, Модели по области применения • имитационные - нельзя заранее вычислить или предсказать поведение системы, но можно имитировать её реакцию на внешние воздействия; - максимальный учет всех факторов; - только численные результаты; Примеры: q испытания лекарств на мышах, обезьянах, … q математическое моделирование биологических систем q модели бизнеса и управления q модели процесса обучения 13

Модели по области применения • игровые – учитывающие действия противника Примеры: q модели экономических Модели по области применения • игровые – учитывающие действия противника Примеры: q модели экономических ситуаций q модели военных действий q спортивные игры q тренинги персонала ! Задача – найти лучший вариант действий в самом худшем случае! 14

3 -Модели по фактору времени 15 • статические – описывают оригинал в заданный момент 3 -Модели по фактору времени 15 • статические – описывают оригинал в заданный момент времени q силы, действующие на тело в состоянии покоя q результаты осмотра врача q фотография • динамические (дискретные и непрерывные) q модель движения тела q явления природы (молния, землетрясение, цунами) q история болезни q видеозапись события

4 -Модели по характеру связей • детерминированные • связи между входными и выходными величинами 4 -Модели по характеру связей • детерминированные • связи между входными и выходными величинами жестко заданы • Однозначный результат Примеры q движение тела без учета ветра q расчеты по известным формулам • вероятностные (стохастические) • учитывают случайность событий в реальном мире • при одинаковых входных данных каждый раз получаются немного разные результаты Примеры q движение тела с учетом ветра q броуновское движение частиц q модель движения судна на волнении q модели поведения человека 16

Адекватность модели Адекватность – совпадение существенных свойств модели и оригинала: q результаты моделирования согласуются Адекватность модели Адекватность – совпадение существенных свойств модели и оригинала: q результаты моделирования согласуются с выводами теории (законы сохранения и т. п. ) q … подтверждаются экспериментом ! Адекватность модели можно доказать только экспериментом! Модель всегда отличается от оригинала ! Любая модель адекватна только при определенных условиях! 17

18 Системный подход Система – группа объектов и связей между ними, выделенных из среды 18 Системный подход Система – группа объектов и связей между ними, выделенных из среды и рассматриваемых как одно целое. среда А Б В Г Примеры: • семья • экологическая система • компьютер • техническая система • общество ! Система обладает (за счет связей!) особыми свойствами, которыми не обладает ни один объект в отдельности!

19 Системный подход Модель-не-система: Модель-система: 19 Системный подход Модель-не-система: Модель-система:

3. Методы и технологии моделирования 3. Методы и технологии моделирования

Этапы моделирования 1. ПОСТАНОВКА ЗАДАЧИ - выбор исходных теоретических положений, обобщение опыта и наблюдений, Этапы моделирования 1. ПОСТАНОВКА ЗАДАЧИ - выбор исходных теоретических положений, обобщение опыта и наблюдений, предложение гипотезы 2. Математическая формулировка задачи 3. Выбор метода исследования сформулированной задачи 4. Проведение математического исследования модели 5. Оценка согласованности математической модели с экспериментальной информацией, интерпретация модели 6. Выводы, рекомендации, корректировка модели 21

I. Постановка задачи 22 • исследование оригинала изучение сущности объекта или явления • анализ I. Постановка задачи 22 • исследование оригинала изучение сущности объекта или явления • анализ ( «что будет, если …» ) научиться прогнозировать последствий при различных воздействиях на оригинал • синтез ( «как сделать, чтобы …» ) научиться управлять оригиналом, оказывая на него воздействия • оптимизация ( «как сделать лучше» ) выбор наилучшего решения в заданных условиях ! Ошибки при постановке задачи приводят к наиболее тяжелым последствиям!

I. Постановка задачи 23 Хорошо поставленная задача: • описаны все связи между исходными данными I. Постановка задачи 23 Хорошо поставленная задача: • описаны все связи между исходными данными и результатом • известны все исходные данные • решение существует Примеры плохо поставленных задач: • Найти максимальное значение функции y = x 2 • Найти функцию, которая проходит через точки (0, 1) и (1, 0)

24 II. Математическая формулировка задачи • выбрать тип модели • определить существенные свойства оригинала, 24 II. Математическая формулировка задачи • выбрать тип модели • определить существенные свойства оригинала, которые нужно включить в модель, отбросить несущественные (для данной задачи) • построить формальную модель это модель, записанная на формальном языке (математика, логика, …) и отражающая только существенные свойства оригинала

III. Выбор метода исследования • Выбор или разработка алгоритма работы модели • Модель представляется III. Выбор метода исследования • Выбор или разработка алгоритма работы модели • Модель представляется в форме, удобной для применения численных методов • Определяется последовательность логических и вычислительных операций 25

IV. Тестирование модели 26 Тестирование – это проверка модели на простых исходных данных с IV. Тестирование модели 26 Тестирование – это проверка модели на простых исходных данных с известным результатом. Примеры: • устройство для сложения многозначных чисел – проверка на однозначных числах • модель движения корабля – если руль стоит ровно, курс не должен меняться; если руль повернуть влево, корабль должен идти вправо • модель накопления денег в банке – при ставке 0% сумма не должна изменяться ? Модель прошла тестирование. Гарантирует ли это ее правильность?

IV. Эксперимент c моделью Эксперимент – это исследование модели в интересующих нас условиях. Примеры: IV. Эксперимент c моделью Эксперимент – это исследование модели в интересующих нас условиях. Примеры: • устройство для сложения чисел – работа с многозначными числами • модель движения корабля – исследование в условиях морского волнения • модель накопления денег в банке – расчеты при ненулевой ставке ? Можно ли 100%-но верить результатам? 27

28 V. Проверка практикой, анализ результатов Возможные выводы: • задача решена, модель адекватна • 28 V. Проверка практикой, анализ результатов Возможные выводы: • задача решена, модель адекватна • необходимо изменить алгоритм или условия моделирования • необходимо изменить модель (например, учесть дополнительные свойства) • необходимо изменить постановку задачи

29 Пример. Задача. Обезьяна хочет сбить бананы на пальме. Как ей надо кинуть кокос, 29 Пример. Задача. Обезьяна хочет сбить бананы на пальме. Как ей надо кинуть кокос, чтобы попасть им в бананы. Анализ задачи: • все ли исходные данные известны? • есть ли решение? • единственно ли решение?

I. Постановка задачи 30 Допущения: • кокос и банан считаем материальными точками • расстояние I. Постановка задачи 30 Допущения: • кокос и банан считаем материальными точками • расстояние до пальмы известно • рост обезьяны известен • высота, на которой висит банан, известна • обезьяна бросает кокос с известной начальной скоростью • сопротивление воздуха не учитываем При этих условиях требуется найти начальный угол, под которым надо бросить кокос. ? Всегда ли есть решение?

31 II. Разработка модели Графическая модель y V H h x L Формальная (математическая) 31 II. Разработка модели Графическая модель y V H h x L Формальная (математическая) модель Задача: найти t, , при которых

III. Тестирование модели Математическая модель • при нулевой скорости кокос падает вертикально вниз • III. Тестирование модели Математическая модель • при нулевой скорости кокос падает вертикально вниз • при t=0 координаты равны (0, h) • при броске вертикально вверх ( =90 o) координата x не меняется • при некотором t координата y начинает уменьшаться (ветви параболы вниз) ! Противоречий не обнаружено! 32

IV. Эксперимент Метод I. Меняем угол . Для выбранного угла строим траекторию полета ореха. IV. Эксперимент Метод I. Меняем угол . Для выбранного угла строим траекторию полета ореха. Если она проходит выше банана, уменьшаем угол, если ниже – увеличиваем. Метод II. Из первого равенства выражаем время полета: Меняем угол . Для выбранного угла считаем t, а затем – значение y при этом t. Если оно больше H, уменьшаем угол, если меньше – увеличиваем. не надо строить всю траекторию для каждого 33

V. Анализ результатов 1. Всегда ли обезьяна может сбить банан? 2. Что изменится, если V. Анализ результатов 1. Всегда ли обезьяна может сбить банан? 2. Что изменится, если обезьяна может бросать кокос с разной силой (с разной начальной скоростью)? 3. Что изменится, если кокос и бананы не считать материальными точками? 4. Что изменится, если требуется учесть сопротивление воздуха? 5. Что изменится, если дерево качается? 34

4. Информационная модель объекта 4. Информационная модель объекта

Основные понятия Информационный объект – описание реального объекта, процесса или явления в виде совокупности Основные понятия Информационный объект – описание реального объекта, процесса или явления в виде совокупности его характеристик, которые называют реквизитами. Структура Информационного объекта = КЛАСС КЛЮЧИ – для идентификации экземпляра. БД АСУ База знаний 36

37 Типы информационных моделей • табличные модели (пары соответствия) –матрица доступа • иерархические (многоуровневые) 37 Типы информационных моделей • табличные модели (пары соответствия) –матрица доступа • иерархические (многоуровневые) модели Директор Главный инженер Вася Главный бухгалтер Петя Маша Даша Глаша • сетевые модели (графы) - города 3 6 1 старт 2 8 финиш 5 4 7

5. Технологии программирования 5. Технологии программирования

Основные понятия Технология программирования - совокупность методов и средств, используемых в процессе разработки программного Основные понятия Технология программирования - совокупность методов и средств, используемых в процессе разработки программного обеспечения. включает • последовательность выполнения технологических операций • перечисление условий, при которых выполняется та или иная операция • описание самих операций, 39

История Технологий программирования 40 1960 -е “Стихийное” программирование • нет понятий Типы данных, структуры История Технологий программирования 40 1960 -е “Стихийное” программирование • нет понятий Типы данных, структуры программы; • запутанный код 1970 -е Структурное программирование. декомпозиция>подрограммы запрет GOTO ALGOL-68, Pascal, С Модульное программирование - выделение групп подпрограмм, использующих одни и те же глобальные данные, в отдельно компилируемые модули. Связи между модулями через специальный интерфейс, в то время как доступ к реализации модуля (телам подпрограмм и некоторым "внутренним" переменным) запрещен. Pascal и С (C++), языки Ада и Modula.

История Технологий программирования 41 Объектно-ориентированное программирование (ООП) технология, основанная на представлении программы в виде История Технологий программирования 41 Объектно-ориентированное программирование (ООП) технология, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определенного типа (класса), а классы образуют иерархию с наследованием свойств. Взаимодействие программных объектов в такой системе осуществляется путем передачи сообщений. Delphi, C++ Builder, Visual C++ и т. д. визуальные средства ü "более естественная" декомпозиция программного обеспечения ü полная локализации данных и интегрированию их с подпрограммами обработки. ü механизмы наследования, полиморфизма, композиции, наполнения.

ООП 42 Объект ООП - совокупность переменных состояния и связанных с ними методов (операций) ООП 42 Объект ООП - совокупность переменных состояния и связанных с ними методов (операций) Под методами объекта понимают процедуры и функции, объявление которых включено в описание объекта и которые выполняют действия. Инкапсуляция — это механизм, который объединяет данные и методы, манипулирующие этими данными, и защищает и то и другое от внешнего вмешательства или неправильного использования. Наследование — это процесс, посредством которого один объект может наследовать свойства другого объекта и добавлять к ним черты, характерные только для него. Полиморфизм — это свойство, которое позволяет одно и тоже имя использовать для решения нескольких технически разных задач.

Конец фильма 43 Конец фильма 43