вторник, 3 февраля 2009 г.

Об образовательной ценности моделей, допускающих управление

Главная задача курса компьютерного моделирования – овладение учащимися моделированием как методом познания.
Например, в вводной лекции к курсу «Компьютерное математическое моделирование» [1] при выделении основных задач курса говорится: «Основной упор необходимо сделать на выработку общего методологического подхода к построению математической модели и работе с ней. Здесь необходимо продемонстрировать, что моделирование в любой области знаний имеет схожие черты, зачастую для различных процессов удается получить очень близкие модели (например, модели межвидовой конкуренции и гонки вооружений). Таким образом, необходимо показать, как заметил А.Б. Горстко [2], что "ни ЭВМ, ни математическая модель, ни алгоритм ее исследования порознь не могут решить достаточно сложную исходную задачу. Но вместе они представляют ту силу, которая позволяет познавать окружающий мир, управлять им в интересах человека"».
В [1] предложена следующая схема компьютерного эксперимента

Рис. 1
Для выработки практических навыков компьютерного моделирования необходимо на примере ряда моделей проследить все этапы моделирования.
Остановимся более подробно на этапах «Расчеты на ЭВМ» - «Анализ результатов». Рассмотрим взаимодействие ученика и компьютерной модели, положив в основу общую схему управления.

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









Рис. 3
Исходя из вышеизложенного, можно сделать вывод: в курсе компьютерного моделирования необходимо рассматривать «мягкие» модели, т.е. модели с параметрами, которые допускают возможность управления посредством изменения параметров. Работа с такими моделями происходит циклично, что дает возможность получить такие сведения о модели, получение которых было бы невозможно без многократной «прокрутки».
Использование «мягких» моделей в преподавании курса компьютерного моделирования ставит перед учителем как минимум две дополнительные задачи. Первая задача: для конкретной модели необходимо сформулировать задачу и цель моделирования таким образом, чтобы возникла необходимость в «прокрутке». Это должна быть задача с элементами исследования. Задача вторая: научить исследовать модель посредством «грамотного» управления параметрами. Часто учащиеся сталкиваются с определенными трудностями из-за того, что изменяют параметры модели случайным образом, бессистемно. Вследствие этого они делают неправильные выводы или не могут сделать выводов вообще.
Управление параметрами модели может строиться по следующей схеме.
Подготовительный этап. Разделим параметры на две группы: начальные данные и параметры внешней среды.
Первый этап. Полагаем, что параметры внешней среды изменению не подлежат, и рассматриваем поведение модели при различных начальных данных (по возможности модель должна отражать поведение объекта на какой-либо совокупности начальных данных), делаем выводы. Так мы реализуем первый виток работы с моделью – получаем информацию о том, какие режимы могут установиться в системе по прошествии достаточно большого времени. Например, в химическом реакторе при различных начальных концентрациях вещества реакция может либо прекратиться, либо идти в пульсирующем режиме, либо протекать с постоянной скоростью. Кроме того, по возможности выяснить, будут ли эти режимы устойчивы, а также установить наличие или отсутствие аттракторов.
Второй этап. Выбираем один из параметров внешней среды и начинаем изменять его значение (остальные параметры зафиксируем). С каждым новым значением параметра проводим работу, описанную на первом этапе (реализуем второй, третий и т.д витки). Выясняем: претерпевают ли качественные изменения режимы, которые могут установиться в системе (например, стационарный режим сменяется пульсирующим), если да – необходимо описать эти изменения и найти критические значения параметра.
Такое исследование можно проводить на достаточно простых моделях. Рассмотрим, как, например, может быть исследована модель однородной популяции. Стандартный подход: выбирается зависимость, описывающая динамику развития популяции, строится график, показывающий изменение численности при заданном начальном значении. Вывод, который делает учащийся: если начальная численность …, то численность популяции не изменяется (возрастает, убывает).
Постановка задачи
Имеется некоторая популяция, численность которой изменяется с течением времени. Построить компьютерную модель, отражающую динамику развития этой популяции.
Математическая модель
Введем величины, характеризующие популяцию:
x(t) – численность популяции в момент времени t;
N=x(0) – численность популяции в начальный момент наблюдения.
Тогда x¢(t) – скорость изменения численности.
Будем исходить из предположения, что скорость изменения численности в момент времени t зависит от численности в этот момент времени. То есть x¢(t)=f(x(t)).
Таким образом, для данной задачи математической моделью является дифференциальное уравнение первого порядка с начальным условием x(0)=N.
Пока мы еще не задали точный вид правой части дифференциального уравнения – функции f(x). В правую часть уравнения помимо фазовой переменной могут входить параметры, определяемые внутренними свойствами популяции или внешними условиями (например, вылов).
Вычислительная модель
Полученная математическая модель является непрерывной моделью. Для построения вычислительной модели необходимо создать ее дискретный аналог. Будем использовать метод Эйлера численного решения дифференциального уравнения. Разобьем промежуток времени, в течение которого производится наблюдение, равноотстоящими точками.
0
Т
ti
ti+1
Dt


Рис. 4
Получим ti+1=ti+Dt, где Dt – фиксированная величина.
Для удобства обозначим x(ti) как xi. Рассмотрим значение производной в узловой точке. Если Dt мало, то производную можно приближенно представить разностным отношением .
Заменим во всех узловых точках значение производной на разностное отношение .
Откуда получаем соотношение xi+1=xi+Dt f(xi)
Это рекуррентное соотношение позволяет вычислить численность популяции в следующий момент времени, зная ее значение в предыдущий.
Компьютерная модель
Наша цель – построить компьютерную модель, которая позволяет численно решать дифференциальное уравнение x¢(t)=f(х) и построить несколько траекторий при различных начальных значениях численности.
Далее, изменяя в программе функцию f(x), получим информацию:
· о поведении системы при фиксированных параметрах модели, иначе говоря, выясним, какие режимы могут установиться по прошествии достаточно большого времени. Это выясним не аналитически (исследуя f(x)), а опытным путем;
· о реакции системы на малое случайное колебание численности, иначе говоря, выясним, является ли система устойчивой;
· о поведении системы при изменении параметров, по возможности определим значение параметров, при которых система претерпевает качественные изменения, опишем эти изменения.
Работа с моделью
С целью исследования динамики развития популяции будем изменять в программе функцию.
1) Пусть f(x)=kx, k>0 (скорость изменения численности прямо пропорциональна численности, отрицательных факторов нет – модель Мальтуса).
Выводы:
Поведение системы при фиксированном k: при любом начальном значении k>0 численность популяции неограниченно возрастает (рис. 5).
Зависимость поведения системы от параметров модели: поведение системы в целом не зависит от выбора (чем больше k, тем выше скорость роста, и, соответственно, «круче» график).
Реакция системы на малое случайное колебание численности: небольшое изменение численности не влияет на поведение системы – численность популяции будет неограниченно возрастать.
Рис. 5
Известно, что в природе не существует таких популяций.
2) Из опыта известно, что скорость роста популяции уменьшается при увеличении ее численности (сказывается нехватка территории и пищи, болезни). Поэтому в качестве f(x) возьмем, например, функцию аx-bx2. (a>0, b>0). Такой выбор приводит к логистической модели.
Выводы:
Поведение системы при фиксированных a и b: численность популяции с течением времени стабилизируется на определенном уровне, не зависящем от начальной численности (рис. 6).

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

3) Пусть f(x)=аx-bx2-с. На популяцию действует посторонний фактор –производится вылов с интенсивностью с.
Зависимость поведения системы от параметров модели: при небольшом значении параметра с система имеет два равновесных состояния M и N (MWoW - тактики, советы, новости. Все что нужно умелому игроку!