Файл: Могилев А.В. Информатика.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 31.03.2021

Просмотров: 6612

Скачиваний: 50

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

 

576 

Итак, укрупненная классификация абстрактных (идеальных) моделей такова. 
1. 

Вербальные (текстовые) модели.

 Эти модели используют последовательности предло-

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

2. 

Математические  модели

  -  очень  широкий  класс  знаковых  моделей  (основанных  на 

формальных языках над конечными алфавитами), широко использующих те или иные математи-
ческие методы. Например, можно рассмотреть математическую модель звезды. Эта модель будет 
представлять  собой  сложную

 

систему  уравнений,  описывающих  физические  процессы,  происхо-

дящие в недрах звезды. Математической моделью другого рода являются, например, математиче-
ские  соотношения,  позволяющие  рассчитать  оптимальный  (наилучший  с  экономической  точки 
зрения) план работы какого-либо предприятия. 

3. 

Информационные  модели

  -  класс  знаковых  моделей,  описывающих  информационные 

процессы  (возникновение,  передачу,  преобразование  и  использование  информации)  в  системах 
самой разнообразной природы. 

Граница  между  вербальными,  математическими  и  информационными  моделями  может 

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

Отметим, что существуют и иные подходы к классификации абстрактных моделей; обще-

принятая точка зрения здесь еще не установилась. В частности, есть тенденция резкого расшире-
ния  содержания  понятия  «информационная  модель».  при  котором  информационное  моделирова-
ние включает в себя и вербальные, и математические модели. 

Основное содержание данной главы связано с прикладными математическими моделями, в 

реализации которых используются компьютеры. Это вызвано тем, что внутри информатики имен-
но  компьютерное  математическое  и  компьютерное  информационное  моделирование  могут  рас-
сматриваться  как  ее  составные  части.  Компьютерное  математическое  моделирование  связано  с 
информатикой  технологически;  использование  компьютеров  и  соответствующих  технологий  об-
работки  информации  стало  неотъемлемой  и  необходимой  стороной  работы  физика,  инженера, 
экономиста,  эколога,  проектировщика  ЭВМ  и  т.д.  Неформализованные  вербальные  модели  не 
имеют столь явно выраженной привязки к информатике - ни в принципиальном, ни в технологиче-
ском аспектах. 

 

§2. ПОНЯТИЕ О КОМПЬЮТЕРНОМ  

МАТЕМАТИЧЕСКОМ МОДЕЛИРОВАНИИ 

 

2.1. МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ И КОМПЬЮТЕРЫ 

 

Математическая модель выражает существенные черты-объекта или процесса языком урав-

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

Путь  математического  моделирования  в  наше  время  гораздо  более  всеобъемлющ,  нежели 

моделирования натурного. Огромный толчок развитию математического моделирования дало по-
явление ЭВМ, хотя сам метод зародился одновременно с математикой тысячи лет назад. 

Математическое моделирование как таковое отнюдь не всегда требует компьютерной под-

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


background image

 

577 

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

а) все чаще компьютеры при математическом моделировании используются не только для 

численных расчетов, но и для аналитических преобразований; 

б)  результат  аналитического  исследования  математической  модели  часто  выражен  столь 

сложной формулой, что при взгляде на нее не складывается восприятия описываемого ей процес-
са.  Эту  формулу  (хорошо  еще,  если  просто  формулу!)  нужно  протабулировать,  представить  гра-
фически, проиллюстрировать в динамике, иногда даже озвучить, т.е. проделать то, что называется 
«визуализацией абстракций» . При этом компьютер - незаменимое техническое средство. 

 

2.2. ЭТАПЫ И ЦЕЛИ КОМПЬЮТЕРНОГО  

МАТЕМАТИЧЕСКОГО МОДЕЛИРОВАНИЯ 

 

Здесь мы рассмотрим процесс компьютерного математического моделирования, включаю-

щий численный эксперимент с моделью (рис. 7.1). 

Первый этап - определение целей моделирования. Основные из них таковы: 
1) модель нужна для того, чтобы понять как устроен конкретный объект, какова его струк-

тура, основные свойства, законы развития и взаимодействия с окружающим миром (

понимание

); 

2) модель нужна для того, чтобы научиться управлять объектом (или процессом) и опреде-

лить наилучшие способы управления при заданных целях и критериях (

управление

); 

3) модель нужна для того, чтобы прогнозировать прямые и косвенные последствия реали-

зации заданных способов и форм воздействия на объект (

прогнозирование

). 

Поясним это на примерах. Пусть объект  исследования  - взаимодействие  потока жидкости 

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

Пример совсем из другой области: мирно сосуществовавшие со стабильными численностя-

ми популяции двух видов особей, имеющих общую кормовую базу, «вдруг» начинают резко ме-
нять  численность  -  и  здесь  математическое  моделирование  позволяет  (с  известной  долен  досто-
верности) установить причину (или, по крайней мере, опровергнуть определенную гипотезу). 

 


background image

 

578 

 

Рис. 7.1.

 Общая схема процесса компьютерного математического моделирования 

 

Выработка концепции управления объектом -другая возможная цель моделирования. Какой 

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

Наконец,  прогнозирование  последствий  тех  или  иных  воздействий  на  объект  может  быть 

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

Составим список величин, от которых зависит поведение объекта или ход процесса, а также 

тех  величин,  которые  желательно  получить  в  результате  моделирования.  Обозначим  первые 
(входные) величины через 

х

1

, x

2

, ....

 

х

n

; вторые (выходные) через 

y

1

,y

2

, … ,y

k

.

 Символически пове-

дение объекта или процесса можно представить в виде 

 

у

j

 = F

j

 (x

1

, х

2

,....x

n

)   (j

=1,2,..., 

k

),  

 

 

 

 

 

 

 

(7.1) 

 
где 

F

j

 -

 те действия, которые следует произвести над входными параметрами, чтобы полу-

чить результаты. Хотя запись 

F (x

1

,

 

x

2

, ..., 

х

n

)

 напоминает о функции, мы здесь используем ее в бо-

лее  широком  смысле.  Лишь  в  простейших  ситуациях 

F(x)

  есть  функция  в  том  смысле,  который 

вкладывается в это понятие в учебниках математики; чтобы это подчеркнуть, лучше использовать 
по отношению к 

F(x)

 термин «оператор». 

Входные параметры 

x

i

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

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

«Случайный»  -  не  значит  «непредсказуемый»;  просто  характер  исследования,  задаваемых 

вопросов резко меняется (они приобретают вид «С какой вероятностью...», «С каким математиче-


background image

 

579 

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

Для стохастической модели выходные параметры могут быть как величинами вероятност-

ными, так и однозначно определяемыми. Пример последнего: на перекрестке улиц можно ожидать 
зеленого сигнала светофора и полминуты, и две минуты (с разной вероятностью), но среднее вре-
мя ожидания есть величина вполне определенная, и именно она может быть объектом моделиро-
вания. 

Важнейшим  этапом  моделирования  является  разделение  входных  параметров  по  степени 

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

y

j

.

 От того, насколько умело выделены важ-

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

Отбрасывание (по крайней мере при первом подходе) менее значимых факторов огрубляет 

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

На  рис.  7.2  проиллюстрированы  две  крайние  ситуации:  а)  некоторый  параметр 

х, 

очень 

сильно  влияет  на  результирующую  величину 

y

j

,

 

б)  почти  не  влияет  на  нее.  Ясно,  что  если  все 

представляющие интерес величины 

у

j

 реагируют на 

х

i

 так, как изображено на рис. 7.2, 

б,

 то 

х

i

 явля-

ется параметром, который при первом подходе может быть из модели исключен; если же хотя бы 
одна из величин 

у

j

 реагирует на изменение 

x

i

 так, как изображено на рис. 7.2, 

а,

 то 

х

i

 нельзя исклю-

чать из числа важнейших параметров. 

Следующий этап - поиск математического описания. На этом этапе необходимо перейти от 

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

 

 

Рис. 7.2.

 Варианты степени влияния величины 

х,

 на результирующую величину 

y

i

 

 

Когда математическая модель сформулирована, выбираем метод ее исследования. Как пра-

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

Разработка алгоритма и составление программы для ЭВМ  - это творческий и трудно фор-

мализуемый процесс. В настоящее время при компьютерном математическом моделировании наи-
более  распространенными  являются  приемы  процедурно-ориентированного  (структурного)  про-


background image

 

580 

граммирования,  описанные  в  главе  3.  Из  языков  программирования  многие  профессионалы-
физики, например, до сих пор предпочитают FORTRAN как в силу традиций, так и в силу непре-
взойденной  эффективности  компиляторов  (для  расчетных  работ)  и  наличия  написанных  на  нем 
огромных,  тщательно  отлаженных  и  оптимизированных  библиотек  стандартных  программ  мате-
матической ориентации. В ходу и такие языки, как PASCAL, BASIC, С - в зависимости от харак-
тера задачи и склонностей программиста. 

После составления программы решаем с ее помощью простейшую тестовую задачу (жела-

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

Затем следует собственно численный эксперимент, и выясняется, соответствует ли модель 

реальному объекту (процессу). Модель адекватна реальному процессу, если некоторые характери-
стики процесса, полученные на ЭВМ, совпадают с экспериментальными с заданной степенью точ-
ности. В случае несоответствия модели реальному процессу возвращаемся к одному из предыду-
щих этапов. 

 

2.3. КЛАССИФИКАЦИЯ МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ 

 

К классификации математических моделей разные авторы подходят по-своему, положив в 

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

• дескриптивные (описательные) модели; 
• оптимизационные модели; 
• многокритериальные модели; 
• игровые модели; 
• имитационные модели. 
Остановимся на этом чуть подробнее и поясним на примерах. Моделируя движение коме-

ты, вторгшейся в Солнечную систему, мы описываем (предсказываем) траекторию ее полета, рас-
стояние, на котором она пройдет от Земли и т. д. , т. е. ставим чисто описательные цели. У нас нет 
никаких возможностей повлиять на движение кометы, что-то изменить. 

На другом уровне процессов мы можем воздействовать на них, пытаясь добиться какой-то 

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

Часто приходится оптимизировать процесс по нескольким параметрам сразу, причем цели 

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

Игровые модели могут иметь отношение не только к детским играм (в том числе и компью-

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

Наконец, бывает, что модель в большой мере подражает реальному процессу, т.е. имитиру-