Численное экономико-математическое моделирование и оптимизация
Покупка
Издательство:
ГИОРД
Год издания: 2014
Кол-во страниц: 272
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Магистратура
ISBN: 978-5-98879-178-2
Артикул: 626236.02.99
В книге изложен системный подход к использованию современного математического инструментария экономистами. Кроме теоретической базы, в нём даны основы и примеры использования математического аппарата в современных экономических приложениях, причём каждая тема иллюстрируется экономическими примерами. Подробно представлено решение примеров и задач экономического содержания с помошью одной из современных систем компьютерной математики — системы MathCAD, которая делает преподавание экономических дисциплин более эффективным и позволяет сосредоточить внимание студента на логике методов и алгоритмов, освобождая их от необходимости освоения громоздких вычислительных процедур.
Издание для организации самостоятельной работы и вычислительного практикума студентов комплектуется компакт-диском с MathCAD-программами для решения наиболее распространённых задач экономико-математического моделирования.
Предназначено в качестве учебного пособия для студентов по специальностям «Финансы и кредит» и «Бухгалтерский учёт, анализ и аудит», а также может быть полезно студентам и аспирантам других экономических специальностей и направлений.
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Г. В. Алексеев, И. И. Холявин, М. В. Гончаров ЧИСЛЕННОЕ ЭКОНОМИКО-МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ И ОПТИМИЗАЦИЯ Рекомендовано УМО по образованию в области финансов, учета и мировой экономики в качестве учебного пособия для студентов, обучающихся по направлению «Экономика» и специальностям «Бухгалтерский учет, анализ и аудит» и «Финансы и кредит» 2-е издание, исправленное и дополненное Санкт-Петербург ГИОРД 2014
УДК 681.3.06 ББК 32.973.26 А47 Рецензенты: М. С. Красс, доктор физико-математических наук, профессор Финансового университета при Правительстве Российской Федерации; Л. П. Булат, доктор физико-математических наук, профессор Института холода и биотехнологий НИУ ИТМО; В. А. Левизов, доктор экономических наук, профессор Государственного института экономики, финансов, права и технологий Алексеев Г. В. А47 Численное экономико-математическое моделирование и оптимизация : учеб. пособие / Г. В. Алексеев, И. И. Холявин, М. В. Гончаров. — 2-е изд., испр. и доп. — СПб. : ГИОРД, 2014. — 272 с. : ил. ISBN 978-5-98879-178-2 В книге изложен системный подход к использованию современного математического инструментария экономистами. Кроме теоретической базы, в нём даны основы и примеры использования математического аппарата в современных экономических приложениях, причём каждая тема иллюстрируется экономическими примерами. Подробно представлено решение примеров и задач экономического содержания с помощью одной из современных систем компьютерной математики — системы MathCAD, которая делает преподавание экономических дисциплин более эффективным и позволяет сосредоточить внимание студента на логике методов и алгоритмов, освобождая их от необходимости освоения громоздких вычислительных процедур. Издание для организации самостоятельной работы и вычислительного практикума студентов комплектуется компакт-диском с MathCAD-программами для решения наиболее распространённых задач экономико-математического моделирования. Предназначено в качестве учебного пособия для студентов по специальностям «Финансы и кредит» и «Бухгалтерский учёт, анализ и аудит», а также может быть полезно студентам и аспирантам других экономических специальностей и направлений. УДК 681.3.06 ББК 32.973.26 © Г. В. Алексеев, И. И. Холявин, 2011 ISBN 978-5-98879-178-2 © ООО «Издательство „ГИОРД“», 2014
Оглавление Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. ТЕОРЕТИЧЕСКАЯ БАЗА МОДЕЛИРОВАНИЯ . . . . . . . . . . . . . . . . . . . . 6 § 1. Векторы. Декартова система координат. . . . . . . . . . . . . . . . . . . . . . . . . . . 6 § 2. Определители и их свойства. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 § 3. Матрицы и действия над ними . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 § 4. Система линейных уравнений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 § 5. Некоторые линейные модели в экономике и их решение с помощью MathCAD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2. ЭКОНОМИКО-МАТЕМАТИЧЕСКИЕ МОДЕЛИ И ОПТИМИЗАЦИЯ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 § 6. Задачи математического программирования. Линейное программирование. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 § 7. Элементы нелинейного программирования . . . . . . . . . . . . . . . . . . . . . . 88 § 8. Задача о назначениях. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 § 9. Транспортная задача по критерию времени . . . . . . . . . . . . . . . . . . . . . 133 § 10. Решение транспортных моделей с помощью MathCAD . . . . . . . . . . 138 § 11. Задачи целочисленного программирования . . . . . . . . . . . . . . . . . . . . 143 § 12. Основы сетевого планирования и управления (СПУ). . . . . . . . . . . . 157 § 13. Принятие решений в условиях неопределённости. Элементы теории игр . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 § 14. Задача о кратчайшем пути . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 § 15. Задача коммивояжёра. Метод ветвей и границ. . . . . . . . . . . . . . . . . . 221 § 16. Параметрическое программирование . . . . . . . . . . . . . . . . . . . . . . . . . 230 § 17. Основы динамического программирования . . . . . . . . . . . . . . . . . . . . 247 Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
ВВЕДЕНИЕ Одним из основных направлений современного этапа развития общества является трансфер высоких технологий из самых разных областей знаний в образование, а через него — в реальный сектор экономики. Экономическое образование не является исключением и, может быть, в первую очередь должно готовить креативно мыслящих компетентных специалистов. Обучение навыкам использования современных пакетов специализированных компьютерных программ можно отнести к одному из инновационных подходов в освоении экономической науки. С этой целью в образовательных программах в вариативной части часто используются курс «Математические методы исследования в экономике» и спецкурсы «Основы использования пакета MathCAD в экономических расчётах», «Решение оптимизационных задач с помощью MathCAD», «Элементы теории игр на основе MathCAD». Включение этих курсов обеспечивает повышение уровня профессиональной подготовки будущих специалистов, поскольку это неразрывно связано с обучением навыкам решения творческих практических и научных задач. Математические методы исследования в экономике ориентированы на решение задач, которые можно корректно описать с помощью той или иной математической модели для получения оптимального решения. Понятие «математические методы» тесно связано с понятием «математические модели», так как математические методы можно применять лишь для описания отвечающей им математической модели. В данном пособии представлено решение основных практически значимых задач экономико-математическими методами (линейное и нелинейное программирование, транспортная задача и задача о назначении, сетевые методы и целочисленное программирование) с помощью одной из современных систем компьютерной математики — системы MathCAD. MathCAD — это мощный инструмент, позволяющий сосредоточить внимание студента на логике методов и алгоритмов, освобождая от необходимости освоения громоздких, незапоминающихся и потому бесполезных вычислительных процедур. MathCAD является эффективной системой для работы с формулами, числами, текстами и графиками, может выполнять вычисления любой
Введение степени сложности, по своему объёму допустимые на персональном компьютере. Помимо привычных численных расчётов, MathCAD способен делать символьные (аналитические) преобразования, что позволяет решить большинство математических задач в виде формул. Возможность интеграции MathCAD с такими мощными системами автоматизации расчётов, как Mathematica, Statistica, SPSS, Maple, MatLab и другие делает его незаменимым инструментом в руках не только студента, но и специалиста, решающего сложные современные задачи экономики. Представленное учебное пособие может успешно использоваться при изучении математики и её экономических приложений в высших учебных заведениях, осуществляющих экономическое образование. Благодаря большому числу решенных задач предлагаемое учебное пособие может служить справочником для специалистов, работающих в различных областях экономики. Всё учебное пособие состоит из двух глав и приложения. В главе 1 рассмотрены основы линейной алгебры и аналитической геометрии и некоторые линейные экономические модели. В главе 2 рассмотрены основные задачи математического программирования и математических методов в экономике. В приложении, выполненном в виде компакт-диска, даны листинги некоторых программ в MathCAD-14*. Каждая глава разбита на параграфы, пункты и подпункты. В пособии используются общепринятые обозначения; наряду с этим начало решения примера или доказательства теоремы обозначается значком , а конец — значком . * Размещенные на диске фрагменты программ прошли неоднократную проверку как при написании учебного пособия, так и при выполнении контрольных заданий студентами. Если у вас возникнут какие-то вопросы, пишите авторам: gva2003@rambler.ru (Алексеев Геннадий Валентинович, Холявин Иван Иванович).
1. ТЕОРЕТИЧЕСКАЯ БАЗА МОДЕЛИРОВАНИЯ § 1. Векторы. Декартова система координат 1.1. Понятие вектора Определение 1. Вектором называется направленный отрезок AB с начальной точкой А и конечной точкой В, который можно передвигать параллельно самому себе. Определение 2. Длиной AB = |а| вектора AB = а называется неотрицательное число, равное длине отрезка АВ, соединяющего точки А и В. Будем также писать AB = АВ . Таким образом, считается, что два направленных отрезка AB и 1 1 A B , имеющие равные длины ( АВ = 1 1 А В ) и одно и то же направление, определяют один и тот же вектор а, и в этом смысле пишут а = AB = 1 1 A B . Определение 3. Векторы, лежащие на одной прямой или на параллельных прямых, называются коллинеарными (рис. 1.1). Рис. 1.1. Коллинеарные векторы А B B1 А1 Определение 4. Если точки А и В совпадают, то AB = AА = 0 называется нулевым вектором. Его длина равна нулю, а направление для него не имеет смысла. В геометрии рассматривают сложение и вычитание векторов, и умножение их на действительное число. По определению произведение аα = = αа вектора а на число α или числа α на вектор а есть вектор, длина которого равна |αа| = |α| ⋅ |а|, а направление совпадает с а, если α > 0, или противоположно а, если α < 0. При α = 0 длина |αа| равна нулю и вектор αа превращается в нулевой вектор (точку), не имеющий направления. Определение 5. Вектор е называется единичным, если его длина равна 1, то есть |е| = 1.
§ 1. Векторы. Декартова система координат 7 Если b = αе и е — единичный вектор, то |b| = |α|, потому что |b| = |α| ⋅ |е| = |α| ⋅ 1 = |α|. Векторы а, b, с, …, взятые в конечном числе, складываются по правилу замыкания цепочки этих векторов (рис. 1.2). На рис. 1.3 показано как вычитаются векторы. 1.2. Скалярное произведение векторов Определение 6. Скалярным произведением двух векторов а и b назовём число аb или (а, b), равное произведению длин этих векторов, помноженному на косинус угла ϕ между ними: аb = (а, b) = |а||b|соs(а, b) = |а||b|соsϕ. (1.1) Теорема 1.1. Скалярное произведение обладает свойствами: (а, b) = (b, а), (1.2) (а, b + с) = (а, b) + (а, с), (1.3) (а,αb) = α(а, b). (1.4) Равенства (1.2)…(1.4) непосредственно вытекают из определения скалярного произведения. Пример 1. Если тело под действием силы F передвинулось прямолинейно вдоль вектора s, то работа А, выполненная силой F, как известно из курса физики, равна произведению величины силы |F | на путь |s| и ещё на косинус угла ω между векторами F и s : А = |F || s |соs(F, s). Но тогда А = (F, s), то есть указанная работа равна скалярному произведению векторов F и s. 1.3. Прямоугольная система координат Перейдём к аналитическому описанию векторов и точек пространства — при помощи чисел. Введём в пространстве прямоугольную систему Рис. 1.2. Сложение векторов Рис. 1.3. Вычитание векторов a b с d a + b + c + d b a a – b
1. Теоретическая база моделирования 8 координат х, у, z, то есть три взаимно перпендикулярно направленные прямые, проходящие через некоторую точку О, называемые осями координат х, у, z (рис. 1.4). Предполагается, что для данной системы координат выбран единичный отрезок, при помощи которого измеряются все прочие отрезки. Точка О называется началом координат. Зададим произвольную точку А трёхмерного пространства. Направленный отрезок ОA называется радиус-вектором точки А. Радиус-вектор в свою очередь определяет вектор а (а = ОA ), который можно переносить в пространстве параллельно самому себе. Координатами радиус-вектора называются координаты точки А; при этом координата х называется абсциссой, координата у — ординатой и координата z — аппликатой точки А. Рис. 1.4. Прямоугольная система координат Между точками А пространства и их радиус-векторами ОA или, что всё равно, тройками чисел (х, у, z), являющимися координатами точки А или проекциями ОA на оси, имеется взаимно однозначное соответствие. Мы будем писать а = (х, у, z) и говорить, что а или (х, у, z) есть вектор, равный радиус-вектору точки А, имеющему координаты х, у, z. В этом случае проекции а на оси координат часто обозначают символами ax, ay, az и пишут а = (ax, ay, az). Из определения вектора как направленного отрезка, который можно передвигать в пространстве параллельно самому себе, следует, что два вектора а = (х, у, z) и b = (х′, у′, z′) равны тогда и только тогда, если выполняются одновременно равенства: х = х′, у = у′, z = z′. По тем же причинам справедливы равенства: (х, у, z) ± (х′, у′, z′) = (х ± х′, у ± у′, z ± z′), (1.5) α(х, у, z) = (αх, αу, αz). (1.6) На рис. 1.4 видно, что длина вектора равна корню квадратному из суммы квадратов его координат: z a А y x x О y z
§ 1. Векторы. Декартова система координат 9 |а| = | ОА | = 2 2 2 x y z + + . (1.7) Обозначим через i, j, k единичные (имеющие длину, равную 1) векторы, имеющие соответственно то же направление, что и оси х, у, z. Векторы i, j, k называют ортами осей х, у, z. Произвольный вектор (х, у, z) может быть записан в виде (х, у, z) = хi + уj + zk. (1.8) Отметим равенства, имеющие место для скалярных произведений ортов осей, т. е. ii = jj = kk = 1, ij = ik = jk = 0. (1.9) Пусть теперь а = (х, у, z) и b = (х1, у1, z1). Тогда аb = (а, b) = хх1 + уу1 + + zz1. В самом деле, на основании (1.7), (1.8), (1.9) аb = (хi + уj + zk)(х1i + у1 j + z1k) = хх1ii + ху1ij + хz1ik + + ух1 ji + уу1 jj + уz1jk + zх1ki + zу1kj + zz1kk = хх1 + уу1 + zz1, (1.10) т. е. скалярное произведение двух векторов равно сумме произведений соответствующих координат этих векторов. Тогда косинус угла ϕ между векторами а и b можно определить следующим образом: cosϕ = (аb)/(|а||b|) = 1 1 1 2 2 2 2 2 2 1 1 1 xx yy zz x y z x y z + + + + + + . (1.11) При а = b угол ϕ между векторами равен нулю, cosϕ = 1 и аа = а2 = |а|2 = х2 + у2 + z2, т. е. скалярный квадрат вектора равен квадрату его длины. Если рассматриваются векторы на плоскости, то в формулах (1.5)… (1.11) необходимо положить z = 0. В частности, расстояние d между двумя точками плоскости А1(х1, у1) и А2(х2, у2) можно рассматривать как длину вектора 1 2 A A = (х2 – х1, у2 – у1). Тогда d = 2 1 2 A A = 2 2 2 1 2 1 ( ) ( ) x x y y − + − . (1.12) Пример 2. Даны координаты трёх точек А (–1, 1), В (–1, 6), С (3, 4) на плоскости. Найдём: а) вектор с = AB + AC ; б) длины векторов AB , AC и угол между ними.
1. Теоретическая база моделирования 10 а) Найдём вначале векторы AB и AC . По определению AB = (хВ – – хА, уВ – уА) = (0, 5), AC = (хС – хА, уС – уА) = (4, 3), с = AB + AC = (4, 8). б) По формуле (1.12) найдём длины d1 = 2 AB = 2 2 0 5 + = 5, d2 = = 2 AC = 2 2 4 3 + = 5. По формуле (1.10) определим скалярное произ ведение AB AC = 0 ⋅ 4 + 5 ⋅ 3 = 15. Тогда по формуле (1.11) cosϕ = 15 5 5 ⋅ = 0,6, откуда ϕ = arcсos 0,6 ≈ 53°. Двумерные (плоские) или трёхмерные (пространственные) векторы и операции над ними, рассмотренные выше, можно обобщить на случай любого числа измерений п: Определение 7. п-мерным вектором называется упорядоченная сово купность п чисел, записываемых в виде х = 1 2 ... п х х х ⎛ ⎞ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎝ ⎠ , где хi — i-я компонента (координата) вектора х. Аналогично обобщаются остальные определения этого параграфа. При этом линейные операции сложения векторов и умножения вектора на число удовлетворяют следующим свойствам, рассматриваемым как аксиомы: Свойство 1. Коммутативное свойство суммы: х + у = у + х. Свойство 2. Ассоциативное свойство суммы: (х + у) + z = х + (у + z). Свойство 3. Ассоциативное относительно числового множителя свойство: α(βх) = (αβ) х. Свойство 4. Дистрибутивное относительно суммы векторов свойство: α(х + у) = αх + αу. Свойство 5. Дистрибутивное относительно суммы числовых множителей свойство: (α + β) х = αх + βх. Свойство 6. Существует нулевой вектор 0 = (0, 0, …, 0) такой, что х + 0 = = х для любого вектора х. Свойство 7. Для любого вектора х существует противоположный вектор (–х) такой, что х + (–х) = 0.