
Математическое моделирование лекция 2.pptx
- Количество слайдов: 35
Математическое моделирование в энергетике Тема: Технология разработки математических моделей сложных систем ü Определение ü Методы моделирования сложных систем ü Методы и приемы решения сложной задачи Лекция № 2
Определение Каждый человек обладающий школьными знаниями по физике и математике и хоть раз написавший какую-либо программу, достаточно хорошо может представить себе, как разработать «небольшую» математическую модель, решающую обычно одну конкретную несложную задачу. Сложные математические модели, отличаются от «небольших» не столько по размерам (хотя обычно они значительно больше), сколько по наличию дополнительных факторов, связанных с их востребованностью и готовностью пользователей платить деньги как за приобретение самой программы реализующей математическую модель, так и за ее сопровождение и даже за специальное обучение работе с ней.
Сложная математическая модель обладает следующими свойствами: ü Она решает одну или несколько связанных и очень значимых задач, зачастую сначала не имеющих четкой постановки; ü Ее низкая производительность на реальных данных приводит к значимым потерям для пользователей; ü Ее неправильная работа наносит ощутимый ущерб пользователям и другим организациям и лицам; ü Для выполнения своих задач она должна взаимодействовать с другими программными или аппаратными системами; ü Пользователи, работающие с ней, приобретают дополнительные выгоды от того, что математическая модель развивается, в нее вносятся новые функции и устраняются ошибки; ü Необходимо наличие проектной документации; ü В ее разработку вовлечено значительное количество людей (более 5 -ти человек).
Математическое моделирование в энергетике Методы работы со сложными системами при построении математических моделей
Для разработки сложных математических моделей требуются особые методы, т. е. их нельзя написать «нахрапом» . К таким методам относятся использование: ü Абстракции; ü Уточнения; ü Модульной разработки; ü Переиспользования.
Абстракция (abstraction) и уточнение (refinement) Абстракция является универсальным подходом к рассмотрению сложных вещей. Интеллект одного человека достаточно ограничен и просто не в силах иметь дело сразу со всеми элементами и свойствами систем большой сложности. Известно, что человеку крайне тяжело держать в голове одновременно десяток-полтора различных мыслей, а в современных мат. моделях число различных существенных аспектов доходит до сотен. Для того чтобы как-то все-таки работать с такими системами, мы пользуемся своей возможностью абстрагироваться, т. е. отвлекаться от всего, что несущественно для достижения поставленной в данной момент частной цели (задачи) и не влияет на те аспекты рассматриваемого предмета, которые для этой цели важны.
Абстракция (abstraction) и уточнение (refinement) 1 1. 1. 1. 2. 3 1. 2. 1 1. 2. 2 1. 2. 3 Чтобы перейти от абстрактного представления к более конкретному, используется обратный процесс последовательного уточнения. Рассмотрев систему в каждом аспекте в отдельности, мы пытаемся объединить результаты анализа, добавляя аспекты по одному и обращая при этом внимание на возможные взаимные влияния и возникающие связи между элементами, выявленными при анализе отдельных аспектов. Абстракция и уточнение используются, прежде всего, для получения работоспособных решений, гарантирующих нужные свойства результирующей системы.
Модульность 1 1. 1. 1. 2. 3 1. 2. 1 1. 2. 2 1. 2. 3 Принцип организации больших систем в виде наборов подсистем, модулей или компонентов. Этот принцип предписывает организовывать сложную систему в виде набора более простых систем - модулей, взаимодействующих друг с другом. При этом каждая задача, разбивается на более простые, решаемые отдельными модулями подзадачи, решение которых, будучи скомбинировано определенным образом, дает в итоге решение исходной задачи. После этого можно отдельно рассматривать каждую подзадачу и модуль, ответственный за ее решение.
Выделение интерфейсов Интерфейс Модуль № 1 № 2 № 3 Модули должны взаимодействовать друг с другом через четко определенные интерфейсы и скрывать друг от друга внутреннюю информацию - внутренние данные, детали реализации интерфейсных операций. При этом интерфейс модуля обычно значительно меньше, чем набор всех операций и данных в нем.
Требования к интерфейсам модулей мат. моделей ü ü Адекватность; Полнота; Минимальность; Простота.
Требование: Адекватность интерфейса модуля Означает, что интерфейс модуля математической модели дает возможность решать именно те задачи, которые нужны пользователям этого модуля.
Требование: Полнота интерфейса модуля Означает, что интерфейс модуля математической модели позволяет решать все значимые задачи в рамках функциональности модуля математической модели.
Требование: Минимальность интерфейса модуля Означает, что предоставляемые интерфейсом модуля операции решают различные по смыслу задачи и ни одну из них нельзя реализовать с помощью всех остальных (или же такая реализация довольно сложна и неэффективна).
Требование: Простота интерфейса модуля Означает, что интерфейсные операции достаточно элементарны и не представимы в виде композиций некоторых более простых операций на том же уровне абстракции, при том же понимании функциональности модуля математической модели.
Переиспользование Этот принцип требует избегать повторений описаний одних и тех же знаний - в виде структур данных, действий, алгоритмов, одного и того же кода - в разных частях математической модели. Вместо этого в хорошо спроектированной системе выделяется один источник, одно место фиксации для каждого элемента знаний и организуется его переиспользование во всех местах, где нужно использовать этот элемент знаний. Такая организация позволяет при необходимости (например, при исправлении ошибки или расширении имеющихся возможностей) удобным образом модифицировать код и документы математической модели в соответствии с новым содержанием элементов знаний, поскольку каждый из них зафиксирован ровно в одном месте.
Математическое моделирование в энергетике Методы и приемы решения сложной задачи
Пусть имеется задача создания, совершенствования, эксплуатации или расширения функций сложной системы. Будем исходить из того, что процесс ее решения может быть разделен на некоторые элементарные акты, которые назовем процедурами. Очевидно, что процедуры должны быть определенным образом связаны друг с другом.
В частности, необходимо определить их порядок, передачу информации, условия начала и окончания выполнения. Исполнение совокупности процедур приводит к тому, к чему каждая отдельная процедура привести не может, – к решению поставленной задачи. Таким образом, налицо все признаки системы, в которой в качестве отдельных элементов выступают процедуры.
Это означает, что процесс решения задачи может рассматриваться как некоторая система процедур, обладающая внутренней организацией, структурой, иерархией, управлением. Эта система относится к классу целенаправленных систем с явно сформулированной целью – решением поставленной задачи. В системе процедур модулем будет являться группа процедур, обладающая определенной целостностью и относительной независимостью. Для такой группы процедур введем термин «операция» .
Итак, операция всегда состоит из отдельных процедур, но, как и модуль, может состоять из операций более низкого уровня. Такая иерархия (разномасштабность) понятия операции, которая на практике может достигать трех-четырех уровней, как правило, не вызывает неудобств, а, наоборот, позволяет акцентировать внимание то на единстве, то на делимости рассматриваемой совокупности.
Приведем пример. Операция приобретения нового оборудования делится на операции его заказа, оплаты; перевозки, установки, наладки. Каждая из этих операций также раскладывается на более элементарные акты. Скажем, перевозка будет состоять из упаковки, одной или нескольких погрузок, разгрузок и транспортировок. Если нет необходимости вникать в эти акты более глубоко, то для нас они будут процедурами. Если же надо для каких-то целей рассматривать, из чего состоит погрузка, то она в нашем исследовании будет операцией. На этом примере хорошо видно, что взгляд на данный акт как на элементарный при необходимости может заменяться детализированным – как на составной (операцию). более
В дальнейшем для удобства изложения, когда не будет необходимости отличать друг от друга процедуру и операцию, будем использовать для них единый термин действие. Процесс решения задачи при этом будет представлять собой систему действий. В сложной системе кроме введенных понятий процедуры, операции, действия употребляются и другие термины.
Так, большой комплекс действий, приводящий к выполнению в определенном смысле обособленной важной части всего решения задачи, называют «направлением работ» . Для деления действий во времени употребляют термины «стадия» и «этап» . Однако основным системным понятием останется операция. Разложение процесса решения только на направления работ или стадии и этапы практически всегда есть еще недостаточное углубление в суть задачи.
Любое действие имеет три основные характеристики: 1) цель действия; 2) описание действия; 3) способ его выполнения.
Все эти характеристики можно представить в виде вопросов: Цель (назначение) в зависимости от ситуации удобно обозначить вопросом «Зачем? » или «Что должно быть? » (т. е. каков должен быть результат). Описание действия или представление о его осуществлении обозначим вопросом «Что делать? » . Способ выполнения действия (умение и возможность выполнить его) – вопросом «Как делать? » . Коротко эти вопросы-характеристики будут звучать так: «Зачем? » , «Что? » , «Как? » .
При продумывании решения задачи чаще всего используются три способа организации отдельных действий, которые удобно связать с ответами на поставленные вопросы. Первый из них отражает случай, когда вопросы «Зачем? » и «Что делать? » рассматриваются исследователем совместно. Во втором ее случае отталкиваются от того, что, в принципе, можно делать. Третий вариант является наиболее строгим с точки зрения формальной логики.
Приведенные вопросы являются основными. Однако они не исчерпывают всех аспектов организации действий. Ее дополнительные стороны охватываются, например, вопросами «Удобно ли (технологично) выполнение данного действия? » , «Каковы вторичные и неочевидные последствия данного действия? » , «Где будет выполняться действие? » , «Когда? » , «Кем? » .
Исследование вопросов «Зачем? » , «Что? » , «Как? » – это типовой и универсальный путь рассмотрения действий. Однако существует несколько распространенных исключений, когда можно избегать или не интересоваться ответами на один или даже два из них. Все эти ситуации оказываются в каком-то смысле крайними, особыми. Их рассмотрение лишний раз убеждает, что только продумывание ответов на все три вопроса ведет к уверенности в правильной организации действий.
Первый случай – это ограничение только вопросами типа «Как? » . Таким способом можно решать задачи по не допускающей отклонения инструкции. Если имеется точное описание действий, и мы уверены, что оно подходит для решения данной задачи, то, вообще говоря, при исполнении отдельных действий можно не понимать ни что делается, ни зачем. Так можно выполнять регламентные работы, можно по командам инструктора управлять транспортным средством, а по методическому описанию вставить в программу для ЭВМ управляющие (системные) команды. Естественно, такие действия исследовательским подходом к проблеме. несовместимы с
Они не годятся для решения новых или нестандартных задач. Подчеркнем, что всевозможные инструкции удобны только внутри жестко фиксированных и, как правило, очень детализированных ограничений. Их использование приводит к экономии усилий и времени в ситуациях, когда нет необходимости в понимании выполняемых процедур.
Второй случай – это организация действий на основе перебора, пренебрежение вопросом «Зачем? » . Типичные примеры: ü случайные действия по обнаружению неисправности (пока не найдем); ü выпуск товара мелкими партиями для изучения спроса; ü последовательное использование различных программных средств, решающих одну и ту же задачу, с целью поиска наиболее приемлемого.
На практике такой способ выбора действия используется, когда перебор относительно невелик и более удобен, чем исследование ответов на вопросы «Зачем? » . Им пользуются и тогда, когда ответа на этот вопрос дать не удается. Полезно иметь в виду, что выбор действия (решения) перебором обычно присутствует в любом исследовании, проводимом человеком: мы что-то пробуем и так, и эдак, выбираем. . . пo-видимому, перебор типичен для человеческих действий вообще. Но его возможности всегда резко идут на убыль с ростом сложности задачи.
Третий вариант неполного списка наших вопросов – это пренебрежение анализом того, реализуемо ли данное действие на практике (т. е. пренебрежение вопросом «Как? » ). Такие действия и их совокупности называют абстрактной схемой, неконструктивным подходом, оторванным от практики, или схоластическим решением. Прежде всего сюда относятся действия высокого уровня общности, в которых ответы на вопрос «Как? » исследуются дополнительно уже для данной конкретной задачи.
К действиям без «Как? » относятся и те, которые в настоящий момент никто не знает как выполнять – нет соответствующей технологии, материалов с требуемыми свойствами, ЭВМ с требуемыми ресурсами или соответствующего банка данных и т. д. В этом случае типичны поиск осуществимого набора действий, заменяющего данный, или изменение (как правило, упрощение) задачи.
СПАСИБО ЗА ВНИМАНИЕ!
Математическое моделирование лекция 2.pptx