русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Насколько аналог должен соответствовать исходному объекту?


Дата добавления: 2013-12-23; просмотров: 1603; Нарушение авторских прав


Вариант 1: соответствие — 100%. Очевидно, что точность решения в этом случае максимальна, а ущерб от применения модели минимален. Но затраты на построение такой модели бесконечно велики, так как объект повторяется во всех своих деталях; фактически, создаётся точно такой же объект путём копирования его до атомов (что само по себе не имеет смысла).

Вариант 2: соответствие — 0%. Модель совсем не похожа на реальный объект. Очевидно, что точность решения минимальна, а ущерб от применения модели максимален, бесконечен. Но затраты на построение такой модели нулевые.

Конечно, варианты 1 и 2 — это крайности. На самом деле модель создаётся из соображений компромисса между затратами на её построение и ущербом от неточности её применения. Это точка между двумя бесконечностями. То есть, моделируя, следует иметь в виду, что исследователь (моделировщик) должен стремиться к оптимуму суммарных затрат, включающих ущерб от применения и затраты на изготовление модели (см. рис. 1.2).

Рис. 1.1. Соотношение суммарных затрат и точности для различных вариантов детализации прикладной модели

Просуммируйте две кривые затрат — получится одна кривая общих затрат. Найдите оптимум на суммарной кривой: он лежит между этими крайними вариантами. Видно, что неточные модели не нужны, но и абсолютная точность тоже не нужна, да и невозможна. Частое и распространённое заблуждение при построении моделей — требовать «как можно точнее».

«Модель — поиск конечного в бесконечном» — эта мысль принадлежит Д. И. Менделееву.

В модель включаются только существенные аспекты, представляющие объект, и отбрасываются все остальные (бесконечное большинство). Существенный или несущественный аспект описания определяют согласно цели исследования. То есть каждая модель составляется с какой-то целью. Начиная моделирование, исследователь должен определить цель, отделив её от всех возможных других целей, число которых, по-видимому, бесконечно.



Улучшая модель, следят, чтобы эффект от усложнения модели превышал связанные с этим затраты. Как только исследователь замечает, что затраты на уточнение модели превышают эффект от точности при применении модели, следует остановиться, поскольку точка оптимума достигнута. Такой подход всегда гарантирует окупаемость вложений.

Из всего сказанного следует, что моделей может быть несколько: приближенная, более точная, ещё точнее и так далее. Модели как бы образуют ряд. Двигаясь от варианта к варианту, исследователь совершенствует модель. Для построения и совершенствования моделей необходима их преемственность, средства отслеживания версий и так далее, то есть моделирование требует инструмента и опирается на технологию.

 

   
Инструмент — типовое средство, позволяющее достичь оригинальный результат и обеспечивающее сокращение затрат на выполнение промежуточных операций (имиджи, стандартные библиотеки, мастера, линейки, резинки…). Технология — набор стандартных способов, приёмов, методов, позволяющий достичь результата гарантированного качества с помощью указанных инструментов за заранее известное время при заданных затратах, но при соблюдении пользователем объявленных требований и порядка. Среда — совокупность рабочего пространства и инструментов на нем, поддерживающая хранение и изменение, преемственность проектов и интерпретирующая свойства объектов и систем из них.

 

Иногда модели пишут на языках программирования, но это долгий и дорогой процесс. Для моделирования можно использовать математические пакеты, но, как показывает опыт, в них обычно не хватает многих инженерных инструментов. Оптимальным является использование среды моделирования. Модель, которая сдаётся заказчику, может быть оформлена в виде специализированного автоматизированного рабочего места (АРМа), написанного уже на языке программирования, внимание в котором уже, в основном, уделено интерфейсу, скоростным параметрам и другим потребительским свойствам, которые важны для заказчика. АРМ, безусловно, вещь дорогая, поэтому выпускается он только тогда, когда заказчик полностью оттестировал проект в среде моделирования, сделал все замечания и обязуется больше не менять своих требований. Моделирование является инженерной наукой, технологией решения задач. Это замечание — очень важное. Так как технология есть способ достижения результата с известным заранее качеством и гарантированными затратами и сроками, то моделирование, как дисциплина:
  • изучает способы решения задач, то есть является инженерной наукой;
  • является универсальным инструментом, гарантирующим решение любых задач, независимо от предметной области.
Смежными моделированию предметами являются: программирование, математика, исследование операций. Программирование — потому что часто модель реализуют на искусственном носителе (пластилин, вода, кирпичи, математические выражения…), а компьютер является одним из самых универсальных носителей информации и притом активным (имитирует пластилин, воду, кирпичи, считает математические выражения и т. д.). Программирование есть способ изложения алгоритма в языковой форме. Алгоритм — один из способов представления (отражения) мысли, процесса, явления в искусственной вычислительной среде, которой является компьютер (фон-Неймановской архитектуры). Специфика алгоритма состоит в отражении последовательности действий. Моделирование может использовать программирование, если моделируемый объект легко описать с точки зрения его поведения. Если легче описать свойства объекта, то использовать программирование затруднительно. Если моделирующая среда построена не на основе фон-Неймановской архитектуры, программирование практически бесполезно. Какова разница между алгоритмом и моделью? Алгоритм — это процесс решения задачи путём реализации последовательности шагов, тогда какмодель — совокупность потенциальных свойств объекта. Если к модели поставить вопрос и добавитьдополнительные условия в виде исходных данных (связь с другими объектами, начальные условия, ограничения), то она может быть разрешена исследователем относительно неизвестных. Процесс решения задачи может быть представлен алгоритмом (но известны и другие способы решения). Вообще примеры алгоритмов в природе неизвестны, они суть порождение человеческого мозга, разума, способного к установлению плана. Собственно алгоритм — это и есть план, развёрнутый в последовательность действий. Следует различать поведение объектов, связанное с естественными причинами, и промысел разума, управляющий ходом движения, предсказывающий результат на основе знания и выбирающий целесообразный вариант поведения. Итак: модель + вопрос + дополнительные условия = задача. Математика — наука, предоставляющая возможность исчисления моделей, приводимых к стандартному (каноническому) виду. Наука о нахождении решений аналитических моделей (анализ) средствами формальных преобразований. Исследование операций — дисциплина, реализующая способы исследования моделей с точки зрения нахождения наилучших управляющих воздействий на модели (синтез). По большей части имеет дело с аналитическими моделями. Помогает принимать решения, используя построенные модели. Проектирование — процесс создания объекта и его модели; моделирование — способ оценки результата проектирования; моделирования без проектирования не существует. Смежными дисциплинами для моделирования можно признать электротехнику, экономику, биологию, географию и другие в том смысле, что они используют методы моделирования для исследования собственного прикладного объекта (например, модель ландшафта, модель электрической цепи, модель денежных потоков и т. д.).
 
 

Компьютерная графика помогает организовать удобный естественный интерфейс для управления моделью, для наблюдения за её реакциями. Важно понимать, что пользователь взаимодействует с моделью не напрямую, а именно через интерфейс: с одной стороны он посылает ей исходные (входные) данные (например, с помощью окон ввода, кнопок, движков, командной строки и т. д.), с другой — смотрит на результат работы модели, то есть воспринимает посредством интерфейса выходные данные.

Искусственный интеллект подразумевает построение высших моделей (например, адаптивных, которые умеют самонастраиваться, умеют создавать друг друга и т. д.). Подразумевается, что модель интеллекта в состоянии сама строить модели прикладных объектов и систем; объяснение того, как это делается, даётся в курсе «Модели и методы искусственного интеллекта». Вместе с тем заметим, что ряд исследователей, говоря об искусственном интеллекте, имеют в виду применение моделей (обучения, воспроизведения, языка и т. д.) для изучения и имитации одной из самых сложных систем во Вселенной — человека.

Заметим, что искусственный интеллект — достаточно большая модель, которая содержит обширную информацию об окружающем мире и мета-модели, умеющие её достраивать. Мета-модели имеют большое подобие с имитируемым ими человеком.

В зависимости от носителя различают модели:

· натурные,

· мысленные,

· математические,

· имитационные,

· графические,

· фотографические и так далее.

Каждая из моделей обладает различной способностью к прогнозу свойств объекта.

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

То есть модель — способ нахождения ответов на вопросы. Чтобы ответить на поставленный вопрос, модель должна быть преобразована по правилам, обеспечивающим её эквивалентность, к виду, соответствующему ответу на вопрос. Это означает, что модель должна быть сформирована по правилам определённой алгебры (алгебра есть правила преобразования). А процедура, которая помогает применить такие правила к модели, называется методом.

Возможно, при построении модели что-то не было учтено, не хватает каких-то законов. Рецепт понятен: модель надо достроить. Но может быть и по-другому. Решений много и есть, видимо, лучшие решения, и есть похуже. Тогда для нахождения лучшего решения следует сузить область решений, накладывая определённые ограничения, чтобы отсеять остальные. Такие задачи часто называют задачами управления.

Часть определений, которым надо безусловно удовлетворить, называются ограничениями.

Часть определений, относительно которых высказывают только пожелания («быть как можно больше или меньше»), называются критериями.

 

Использование различных математических аппаратов впоследствии приводит к различным возможностям в решении задач.

Модели могут быть:

  • феноменологические и абстрактные;
  • активные и пассивные;
  • статические и динамические;
  • дискретные и непрерывные;
  • детерминированные и стохастические;
  • функциональные и объектные.

Феноменологические модели сильно привязаны к конкретному явлению. Изменение ситуации часто приводит к тому, что моделью воспользоваться в новых условиях достаточно сложно. Это происходит оттого, что при составлении модели её не удалось построить с точки зрения подобия внутреннему строению моделируемой системы. Феноменологическая модель передаёт внешнее подобие.

Абстрактная модель воспроизводит систему с точки зрения её внутреннего устройства, копирует её более точно. У неё больше возможностей, шире класс решаемых задач.

Активные модели взаимодействуют с пользователем; могут не только, как пассивные, выдавать ответы на вопросы пользователя, когда тот об этом попросит, но и сами активируют диалог, меняют его линию, имеют собственные цели. Все это происходит за счёт того, что активные модели могут самоизменяться.

Статические модели описывают явления без развития. Динамические модели прослеживают поведение систем, поэтому используют в своей записи, например, дифференциальные уравнения, производные от времени.

Дискретные и непрерывные модели. Дискретные модели изменяют состояние переменных скачком, потому что не имеют детального описания связи причин и следствий, часть процесса скрыта от исследователя. Непрерывные модели более точны, содержат в себе информацию о деталях перехода.

Детерминированные и стохастические модели. Если следствие точно определено причиной, то модель представляет процесс детерминировано. Если из-за неизученности деталей не удаётся описать точно связь причин и следствий, а возможно только описание в целом, статистически (что часто и бывает для сложных систем), то модель строится с использованием понятия вероятности.

Распределённые, структурные, сосредоточенные модели. Если параметр, описывающий свойство объекта, в любых его точках имеет одинаковое значение (хотя может меняться во времени!), то это система с сосредоточенными параметрами. Если параметр принимает разные значения в разных точках объекта, то говорят, что он распределён, а модель, описывающая объект, — распределённая. Иногда модель копирует структуру объекта, но параметры объекта сосредоточенны, тогда модель — структурная.

Функциональные и объектные модели. Если описание идёт с точки зрения поведения, то модель построена по функциональному признаку. Если описание каждого объекта отделено от описания другого объекта, если описываются свойства объекта, из которых вытекает его поведение, то модель является объектно-ориентированной.

Каждый подход имеет свои достоинства и недостатки. Разные математические аппараты имеют разные возможности (мощность) для решения задач, разные потребности в вычислительных ресурсах. Один и тот же объект может быть описан различными способами. Инженер должен грамотно применять то или иное представление, исходя из текущих условий и стоящей перед ним проблемы.

Приведённая выше классификация является идеальной. Модели сложных систем обычно имеют комплексный вид, используют в своём составе сразу несколько представлений. Если удаётся свести модель к одному типу, для которого уже сформулирована алгебра, то исследование модели, решение задач на ней существенно упрощается, становится типовым. Для этого модель должна быть различными способами (упрощением, переобозначением и другими) приведена к каноническому виду, то есть к виду, для которого уже сформулирована алгебра, её методы. В зависимости от используемого типа модели (алгебраические, дифференциальные, графы и т. д.) на разных этапах её исследования

 
Рис. 1.15. Этапы процесса моделирования

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

 

 

 

 

 



<== предыдущая лекция | следующая лекция ==>
Логическое программирование | Сущность педагогического проектирования


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.