- •Лабораторное занятие 1: Вычисления и типы данных
- •1. Вычисление значений арифметических и алгебраических выражений
- •2. Переменные, функции и операторы
- •2.1. Переменные
- •2.2. Функции
- •2.3. Операторы
- •3. Данные в MathCad
- •3.1 Типы данных
- •3.2. Размерные переменные
- •4. Массивы
- •4.1. Создание массивов
- •4.2. Ранжированные переменные
- •Лабораторное занятие 2. Создание графиков
- •1. Двумерная графика
- •1.4. Полярный график
- •1.5. Построение нескольких рядов данных
- •1.6. Форматирование осей
- •1.7. Форматирование рядов данных
- •1.8. Трассировка и увеличение графиков
- •2. Трехмерная графика
- •2.1 Создание трехмерной графики
- •2.2. Форматирование трехмерных графиков
- •Лабораторное занятие 3. Символьные вычисления
- •1. Символьная алгебра
- •1.1.Разложение выражений (Expand)
- •1.2. Упрощение выражений (Simplify)
- •1.3. Разложение на множители (Factor)
- •1.4. Приведение подобных слагаемых
- •1.5. Определение коэффициентов полинома (Polynomial Coefficients)
- •1.6. Разложение на элементарные дроби
- •1.7. Подстановка переменной (Substitute)
- •1.8. Решение алгебраических уравнений (solve)
- •1.9. Суммы и произведения
- •2. Символьное решение задач математического анализа
- •2.1. Дифференцирование (Differentiate) и интегрирование (Integrate)
- •2.2. Разложение в ряд (Expand to Series)
- •Лабораторное занятие 4. Численные методы
- •1. Интегрирование и дифференцирование
- •1.1. Интегрирование
- •1.2. Дифференцирование
- •2. Алгебраические уравнения и оптимизация
- •2.1. Одно уравнение с одним неизвестным
- •2.2. Корни полинома
- •2.3. Системы уравнений
- •2.4. Символьное решение уравнений
- •3. Поиск экстремума функции
- •3.1. Экстремум функции одной переменной
- •3.2. Условный экстремум
- •3.3. Экстремум функции многих переменных
- •3.4. Линейное программирование
3.4. Линейное программирование
Задача поиска условного экстремума функции многих переменных часто встречается в экономических расчетах для минимизации издержек, финансовых рисков, максимизации прибыли и т.п. Целый класс экономических задач описывается системами линейных уравнений и неравенств. Они называются задачами линейного программирования. К задачам линейного программирования относится так называемая транспортная задача, которая решает одну из проблем оптимальной организации доставки товара потребителям с точки зрения минимизации затрат не перевозки.
Модель типичной транспортной задачи: пусть имеется N предприятий-производителей, выпускающих продукцию в количестве b0,…,bN-1 тонн. Эту продукцию требуется доставить M потребителям в количестве a0,…,aM-1 тонн каждому. При этом затраты на перевозки должны быть минимальными.
Здание 16. Используя предложенную модель, получите решение транспортной задачи, выполнив следующую последовательность операций:
-
Откройте новый документ.
-
Введите численное значение векторов a и b, например:
-
Для корректного использования возможностей программы MathCAD необходимо определить в документе число элементов, входящий в эти векторы. Для этого можно применить соответствующие встроенные функции:
-
Сумма всех заказов потребителей должна быть равна сумме произведенной продукции. Проведите эту проверку:
-
Пусть стоимость перевозки тонны продукции i-го производителя к j-му потребителю cij задается следующей матрицей:
-
Тогда целевая функция, определяющая транспортные расходы будет иметь вид:
Здесь xi,j – количество продукции i-го производителя, поставляемое j-му потребителю.
-
Введем требования по точности вычислений и начальные значения:
-
Затем внутри блока Given следует записать условия, выражающие неотрицательность товаропотока, и равенства, задающие сумму произведенной каждым предприятием продукции и сумму заказов каждого потребителя:
-
Для получения решения следует использовать встроенную функцию:
Эта матрица фактически представляет собой план перевозок, обеспечивающий минимум целевой функции: