По всему тексту разбросаны контрольные вопросы, помеченные знаком «?». Они предназначены для дополнительного стимулирования сознания и предотвращения пассивного чтения. Ответы окажутся вполне очевидными после небольшого самостоятельного размышления, либо соответствующий вопрос будет обсуждаться в тексте позднее. Если находите такие вопросы раздражающими, пожалуйста, не стесняйтесь игнорировать их.
В тексте больше фактического материала, чем можно было бы охватить за полноценный семестр, предлагая преподавателям множество вариантов изучения тем. Например, темы глав 1, 2, 3 и 7, пожалуй, являются наиболее привычными для академического курса математического моделирования и уравнения математической физики, охватывающие классические модели, как линейные, так и нелинейные. Главы 4 и 5 предлагают студентам введение в новые темы эволюционного моделирования и построения дерева решений, которые являются перспективными и полезными при построениях различных классификаторов. Глава 6, посвященная генетическим алгоритмам, дает представление о другой области, в которой математика и биология оказались тесно переплетены, вдохновляясь идеями друг от друга. Глава 8 и Приложение содержат краткое введение в основные инструменты подгонки кривых и статистики.
В главе 1 вводится понятия динамического моделирования с помощью разностных уравнений от одной переменной, включая ключевые понятия равновесия, линеаризации и стабильности. В главе 2 эксплуатируем матричную алгебру, вычисление собственных чисел и векторов, с помощью линейных моделей от двух переменных. Эти главы являются основой для изложения всего последующего материала.
Экскурс в теорию вероятностей появляется в двух разделах главы 4, чтобы смоделировать эволюционное развитие математического образования, а затем расширяется в главе 6 на применение генетических алгоритмов. Глава 5, которая имеет алгоритмический привкус, отличный от остальной части текста, частично зависит от формул расстояния, полученных в главе 4. Трактовка моделей в главе 8, естественным образом зависит от введённой в главе 3 модели взаимодействующих факторов.
Разработка этой монографии началась давно, в течение нескольких лет появлялись краткие версии нескольких глав. После многих дополнительных пересмотров конспекты курса достигли критической массы, и публикация их для использования другими преподавателями оказалась лишь вопросом времени.
Многие студенты помогали, как в качестве критиков, так и в качестве экспериментаторов, пытаясь решать предлагаемые задачи, вычитывая текст, задавая много вопросов. Несмотря на все старания, некоторые ошибки наверняка просочились, пожалуйста, сообщите автору обо всем, что сочтёте неверным.
Многие из упражнений и проектов относятся к компьютерному математическому пакету MATLAB. Изучение базовых команд этого пакета для использования его в качестве мощного калькулятора является простым и полезным делом. Когда потребуются более сложные команды для решения упражнений, примеры обычно будут приводиться в постановках задач. Таким образом модели будут постепенно усложняется с применением специализированного программного обеспечения.
MATLAB по сути является полноценным языком программирования с отличными графическими возможностями. Мы воспользовались этими функциями, чтобы предоставить несколько программ, упрощая изучение математических моделей для начинающих. В упражнениях и проектах используются некоторые программы и файлы данных, приводимые ниже.
Готовые тексты программ приводятся в целях минимизации необходимого багажа знаний синтаксиса MATLAB. Чтобы запустить большинство программ ниже, просто скопируйте их из электронного варианта книги или введите в окне редактора скриптов MATLAB.
Можно просто сохранить текст программы в файл с расширением m. Для запуска такого скрипта в окне водится имя запускаемого файла. После запуска будет задан ряд вопросов о конструируемых моделях и их параметрах. Команда help имя_файла также предоставляет краткое описание функций программы, получаемое из комментариев в первых строках программы. Поскольку m-файлы являются текстовыми файлами, они могут быть прочитаны и изменены любым заинтересованным пользователем.
Некоторые m-файлы определяют функции, которые принимают аргументы. Например, такая команда, как compseq(seq1,seq2), запускает программу compseq.m для сравнения двух последовательностей ДНК seq1 и seq2. Набрав help compseq, можно увидеть объяснение синтаксиса такой функции. A mat-файл содержит данные, доступ к которым возможен только из MATLAB. Чтобы загрузить такой файл, скажем, seqdata.mat, введите load seqdata. Имена всех новых переменных, которые будут созданы, можно увидеть вводя команду who, в то время как значения, хранящиеся в этих переменных, можно увидеть просто вводя имя переменной.
Читать дальше