Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Математика для экономистов Выпуск 14.


Информационный Канал Subscribe.Ru

Математика для экономистов
Выпуск #14. E-mail: mathematician@home.tula.net

Новости

Принимаются заказы на решение задач, контрольных работ по:

  • математическому программированию,
  • теории вероятностей и математической статистике,
  • математическому анализу,
  • дифференциальным уравнениям,
  • аналитической геометрии и линейной алгебре;
Свои вопросы и заказы направляйте по адресу: mathematician@home.tula.net

Симплекс-метод.
Часть 2

Общая схема симплекс-метода. Рассмотрим задачу ЛП в канонической форме, где система ограничений задана совместной системой линейных уранений

{a11x1 + a12x2 + ... + a1nxn = b1,
{a21x1 + a22x2 + ... + a2nxn = b2,
{.............................................,
{am1x1 + am2x2 + ... + amnxn = bm.

и среди неотрицательных решений этой системы нужно найти такое, которое минимизирует линейную функцию

f = c1x1 + c2x2 + ... + cnxn + c0.

Пусть можно выразить x1, x2, ... , xr (r < m) через остальные переменные:

{x1 = a'1,r+1xr+1 + ... + a'1nxn + b'1,
{x2 = a'2,r+1xr+1 + ... + a'2nxn + b'2,
{...............................................,
{xr = a'r,r+1xr+1 + ... + a'r nxn + b'r,

где b'1 > 0, b'2 > 0, ... , b'r > 0. Переменные x1, x2, ... , xr называются базисными, а весь набор {x1, x2, ... , xr} - базисом, остальные переменные называются свободными, система ограничений называется системой, приведенной к единичному базису.

Подставляя в линейную форму вместо базисных переменных их выражения через свободные из системы, получим

f = d + dr+1xr+1 + ... + dnxn.

Теперь, полагая все свободные переменные равными нулю, найдем значения базисных переменных: x1 = b'1, x2 = b'2, ... , xr = b'r. Таким образом, решение col(b'1;b'2;...;b'r;0;...;0) системы является допустимым - оно называется базисным.

Для получения базисного решения значение линейной формы fБ = d. Решение задачи с помощью симплекс-метода распадается на ряд шагов, заключающихся в том, что от данного базиса Б переходят к другому базису Б' с таким расчетом, чтобы значение fБ' уменьшилось или, по крайней мере, не увеличилось, т.е. fБ' < fБ.

Реализация симплекс-метода в одном частном случае. Для упрощения дальнейших записей будем считать, что имеется всего пять неизвестных x1,x2,x3,x4,x5< /nobr> и система ограничений приведена к единичному базису {x1, x2, x3}:

{x1 = A4x4 + A5x5 + A,
{x2 = В4x4 + В5x5 + В,
{x3 = Г4x4 + Г5x5 + Г,

(где А > 0, В > 0, Г > 0),

а целевая функция к виду - f = d + d4x4 + d5x5.

Решается задача минимизации f при соответствующих огрничениях и условиях x1 > 0, x2 > 0, x3 > 0, x4 > 0, x5 > 0.

Положим все свободные переменные равгыми нулю (x4 = 0, x5 = 0). и найдем из системы значения базисных неизвестных: x1 = А, x2 = В, x3 = Г. Полученное решение системы col(А;В;Г;0;0) будет неотрицательным и является базисным решением, отвечающим базису {x1, x2, x3}.

Для этого решения значение функции f равно fБ = d.

Возможны три случая.

1) Все коэффициенты при свободных неизвестных в выражении для f неотрицательны, т.е. d4 > 0, d5 > 0.

Тогда для любого неотрицательного решения системы имеем d4x4 > 0, d5x5 > 0. Значит, f = d4x4 + d5x5 + d > d. Таким образом, min f = d, т.е. базисное решение оптимально и задача решена.

2) Имеется свободное неизвестное, коэффициент при котором в выражении f отрицателен, а все коэффициенты при этом неизвестном в уравнениях системы - положительны.

Пусть, например, d4 < 0, А > 0, В > 0, Г > 0. Тогда, отправляясь от базисного решения col(А;В;Г;0;0), будем увеличивать значение x4, не меняя x5 = 0. Значения базисных переменных также будут меняться, получим

x1 = A4x4 + A > A > 0,
x2 = В4x4 + В > В > 0,
x3 = Г4x4 + Г > Г > 0,

т.е. допустимое решение col(x1;x2;x3;x4;0) будет оставаться неотрицательным. При этом f = d4x4 + d с ростом x4 будет неограниченно уменьшаться, так как d4 < 0.

Значит, в этом случае min f = - оо на X, т.е. задача не имеет решения.

3) Имеется свободное неизвестное, коэффициент при котором в неотрицателен, но и среди коэффициентов при этом неизвестном также есть отрицательные.

Тогда производим шаг, а именно, от базиса Б переходим к новому базису Б', с таким расчетом, чтобы значение fБ' уменьшилось или, по крайней мере, не увеличилось, т.е. fБ' < fБ.

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

Опишем подробно содержание шага. Пусть, например, в случае d4 < 0 имеем А4 < 0, В4 < 0, а Г4 > 0.

Так как А4 < 0 и В4 < 0, то значения x1 = A4x4 + A и x2 = В4x4 + В будут уменьшаться при увеличении x4, а значение x3 будет оставаться неотрицательным (x3 > Г). При увеличении x4 наступит момент, когда одно из неизвестных x1 или x2 обратится в нуль: для x1 таким моментом будет x4 = -(A/A4), а для x2 будет x4 = -(В/В4). Выберем из этих соотношений -(A/A4) и -(В/В4) наименьшее. Пусть, например, это будет -(A/A4) = p. Тогда увеличение x4 возможно только от 0 до р. При x4 = p неизвестное x1 обратится в нуль, а при дальнейшем увеличении x4 неизвестное x1 станет уже отрицательным, что недопустимо. Полагая в системе x4 = p и x5 = 0, получим неотрицательное решение

x1 = 0,
x2 = В4р4 + В,
x3 = Г4р4 + Г,
x4 = р,
x5 = 0,

для которого значение функции f будет d4p + d < d поскольку d4 < 0 и p > 0.

Таким образом, с ростом x4 первым из базисных переменных обращается в нуль переменное x1. Тогда базис Б = {x1;x2;x3} заменяем на базис Б' = {x4;x2;x3}, а именно: из старого базиса удаляется неизвестное x1 и вместо него в базис вводится из числа прежних свободных неизвестное x4.

Смена базиса влечет за собой перестройку системы. Из первого уравнения для x1 выражаем x4:

x4 = (1/A4)x1 - (A5/A4)x5 - A/A4. Подставляем это выражение в остальные два уравнения системы. Получим систему вида

{x4 = а1x1 + а5x5 + а,
{x2 = b1х1 + b5x5 + b,
{x3 = c1x1 + c5x5 + c,

с базисным решением

x1 = 0,
x2 = b,
x3 = с,
x4 = a,
x5 = 0.

Как видно из самой системы, двух разных значений с x1 = 0, x5 = 0 быть не может, и, значит, является неотрицательным.

Новое значение целевой функции f равно

fБ' = d4p + d


и, таким образом, с учетом d4 < 0 имеем fБ' < fБ.

Итак, с переходом от базиса Б к Б' система ограничений сохранила допустимую форму, где а <, b <, c <, а значение функции f для базисного решения уменьшилось или осталось прежним.

Переход от базиса Б к новому базису Б' и означает шаг, который делается в случае 3. Процесс продолжаем до тех пор, пока не придем к одному из случаев 1 или 2. Тогда процесс заканчивается.

Пример. Найдем минимум линейной формы f = x4 - x5 при ограничениях: x1 + x4 - 2x5 = 1, x2 - 2x4 + x5 = 2, x3 + 3x4 + x5 = 3 и условиях xi > 0, i = 1,2,3,4,5.

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

x1 = 1 - х4 + 2x5,
x2 = 2 + 2х4 - x5,
x3 = 3 - 3x4 - x5.

Линейная форма f = x4 - x5 через свободные переменные уже выражена. Теперь при x4 = 0, x5 = 0 найдем значения базисных переменных: x1 = 1, x2 = 2, x3 = 3. Таким образом, первое допустимое решение системы уравнений есть col(1;2;3;0;0). При найденном допустимом решении имеем fБ = 0.

Теперь попытаемся уменьшить значение f. Увеличение x4 увеличит f, так как перед x4 стоит положительный коэффициент, а увеличение x5 дает уменьшение f. Увеличим величину x5 так, чтобы x1, x2, x3 не стали отрицательными, оставив x4 = 0. Из второго уравнения следует, что x5 можно увеличить до 2. Таким образом, получаем следующие значения переменных: x1 = 5, x2 = 0, x3 = 1, x4 = 0, x5 = 2 или col(5;0;1;0;2).

Значение целевой функции при этом допустимом решении равно fБ' = -2, т.е. уменьшилось.

Далее, примем за свободные переменные x2 и x4, т.е. те переменные, которые в новом базисе имеют нулевые значения. Тогда

{x1 = 5 - 2х2 + 3x4,
{x3 = 1 + х2 - 5x4,
{x5 = 2 - x2 + 2x4.

f = -2 + x2 - x4.

Для уменьшения значения f будем увеличивать x4. Из второго уравнения системы вытекает, что при условии неотрицательности x3 значение x4 можно увеличивать до x4 = 1/5. При этом условии новое допустимое решение есть col(28/5;0;0;1/5;12/5). Значение линейной формы fБ' = -11/5.

Выразим теперь x1, x4, x5 через свободные переменные x2 и x3:

{x1 = 28/5 - (3/5)х3 - (7/5)x2,
{x4 = 1/5 - (1/5)х3 + (1/5)x2,
{x5 = 12/5 - (2/5)x3 - (3/5)x2.

f = -11/5 + (1/5)x3 + (4/5)x2.

Так как в последней линейной форме обе свободные переменные входят с положительными коэффициентами, то наименьшее значение f достигается при x2 = 0, x3 = 0. Значит, решение col(28/5;0;0;1/5;12/5) является оптимальным и min f = -11/5.

Свои вопросы присылайте по адресу mathematician@home.tula.net.

Математика для экономистов на базе Mathcad.
Урок 2

Индексы матриц и векторов в Mathcad могут принимть целые неотрицательные значения. Начало индексации (нумерации) строк и столбцов матриц задается системной переменной ORIGIN. Например, ORIGIN:=0 означает, что нумерация строк и столбцов начинается с нуля. По умолчанию значение переменной ORIGIN равно нулю.

Ввод элементов матрицы аналогичен вводу координат векторов (см. Урок 1). Пусть, к примеру, нало ввести матрицу

|| 1 2 ||
mat= || 3 4 || .
|| -5 8.2 ||

В нужном месте рабочего листа введите имя матрицы mat и знак присваивания :=. Затем выведите диалоговое окно Вставить матрицу (Insert Matrix). В поле Строк (Rows) этого окна надо задать число строк 3, а в поле Колонок (Columns) - число столбцов 2. После щелчка кнопкой ОК справа от знака присваивания появится шаблон матрицы с метками для ввода ее элементов.

Чтобы извлечь элемент матрицы, находящийся на позиции (i,k), необходимо набрать имя матрицы с индексами i, k (индексы - через запятую) в случае равенства ORIGIN единице или с индексами i-1, k-1 в случае равенства ORIGIN нулю. Рассмотрим, например, элемент 8.2 матрицы mat, который находится на позиции (3,2). Предположим, что ORIGIN равно нулю. Для извлечения элемента 8.2 наберите имя матрицы mat, затем комбинацией клавиш <Ctrl>+<[> перейдите в режим ввода индексов. Введите на месте метки индексы 2, 1. Клавишей <=> введите знак равенства, справа от которого появится искомый элемент: mat2,1=8.2.

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

Стандартные функции rows(M) и cols(M) определяют соответственно число строк и столбцов матрицы М. Например, rows(mat)=3 и cols(mat)=2.

Задача 1. Предприятие выпускает m видов продукции с использованием n видов сырья. Нормы расхода сырья даны в матрице А, в которой на позиции (i,k) находится число, равное количеству расходуемого сырья (кг) k-го вида на производство единицы продукции i-го вида. Плановый объем выпуска продукции дан в векторе-строке Q, в которой i-й элемент равен количеству единиц продукции i-го вида. Вектор-строка S задает себестоимость единицы сырья каждого вида, а вектор-строка t задает транспортные расходы на единицу сырья каждого вида (k-е элементы этих векторов соответствуют k-му виду сырья). Пользуясь только умножением матриц, найти: количество сырья каждого вида для выполнения планового выпуска продукции; производственные и транспортные затраты на сырье, расходуемое на производство единицы продукции каждого вида; затраты на все сырье, необходимое для выполнения плана.

|| 2.5 8.2 3 5.3 13.2 25 1.1 ||
|| 1.5 8.2 2 7.1 15.8 21 0.9 ||
А = || 7 8 6 11 2.4 8 0.5 || ,
|| 4 9.1 2 5 3.2 15 0.3 ||
|| 3 8.5 12 3.5 1.8 17 0.4 ||

Q = (160, 125, 140, 311, 83),
S = (150, 22, 13, 15, 81, 211, 400),
Q = (8, 2, 3, 3, 2, 4, 1).

Задача 2. Данные о дневной производительности 6 предприятий, выпускающих 5 видов продукции, приведены в матрице

|| 15 14 13 17 16 13 ||
|| 21 28 23 24 0 0 ||
А = || 82 0 91 85 85 90 || ,
|| 0 0 3 0 3 3 ||
|| 38 37 38 39 34 43 ||

в которой на позиции (i,k) находится дневная производительность (изделий в день) k-го предприятия по i-му виду продукции. Нормы расхода сырья трех видов даны в матрице

|| 2 4 3 ||
|| 3 6 5 ||
B = || 4 5 4 || ,
|| 5 8 6 ||
|| 12 14 11 ||

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

r = (250, 222, 175, 124, 140, 140),
S = (0.5, 150, 124).

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

Решение. Ввести исходные данные: матрицы А, В, векторы-строки r, c. Определить годовую производительность каждого предприятия по каждому виду продукции:

ORIGIN:=1 n:= cols(A) k:=1;n C<k>:=A<k>*r1,k

(в матрице С на позиции (i,k) будет число, равное годовой производительности k-го предприятия по i-му виду продукции).

Определить годовую потребность каждого предприятия по каждому виду сырья: D:=BT*C (в матрице D элемент на позиции (i,k) будет равен годовой потребности k-го предприятия в i-м виде сырья).

Определить годовую сумму кредитования каждого предприятия для закупки сырья, необходимого для выпуска всей продукции d:=c*D (в вектор-строке d k-й элемент равен сумме, которая необходима для закупки сырья всех видов k-м предприятием).

Свои вопросы, решения задач 1 и 2 присылайте по адресу mathematician@home.tula.net.

Анализ безубыточности.
Часть 1

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

Определение объема выручки, обеспечивающего покрытие всех затрат

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

Сумма покрытия, средняя величина покрытия, коэффициент покрытия

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

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

Под средней величиной покрытия понимают разницу между ценой товара и средними переменными издержками. Средняя величина покрытия отражает вклад единицы изделия в покрытие постоянных затрат и получение прибыли.

Коэффициентом покрытия называется доля суммы покрытия в выручке от реализации или (для отдельного товара) доля средней величины покрытия в цене товара.

Использование этих величин помогает быстро решать некоторые задачи, например определение размера прибыли при разных объемах выпуска.

Пример 1. Фирма выпускает и продает товар, средние переменные издержки на производство и сбыт которого составляют 100 руб./шт. Товар продается по цене 120 руб. Постоянные затраты фирмы в месяц составляют 60 тыс. руб. Рассчитаем, какую прибыль может получить фирма в месяц, если она продаст даного товара 4000, 5000, 6000 шт.

Поскольку постоянные затраты фирмы не зависят от объема выпуска, найдем сумму покрытия и прибыль (как разность суммы покрытия и постоянных издержек) для всех трех вариантов (cм табл. 1).

Таблица 1. Прибыль фирмы при различных объемах выпуска, тыс. руб.

Показатели Объем выпуска, шт.
4000 5000 6000
Выручка от реализации 480 600 720
Переменные издержки 400 500 600
Сумма покрытия 80 100 120
Постоянные издержки 60 60 60
Прибыль 20 40 60
Средняя величина покрытия, руб. 20 20 20

Так как величина покрытия одинакова для всех трех вариантов, расчет прибыли можно упростить. Определим прибыль фирмы при любом объеме выпуска. Для этого:

1) умножив среднюю величину покрытия на объем выпуска, получим сумму покрытия;

2) от суммы покрытия отнимем постоянные издержки.

Например, какую прибыль получит фирма, если произведет и продаст 4560 шт. товара?

Сумма покрытия: 20 руб. * 4560 = 91,2 тыс. руб.

Прибыль: 91,2 тыс. руб. - 60 тыс. руб. = 31,2 тыс. руб.

Пример 2. Фирма производит и продает одновремено два товара: А и Б. Данные об объемах продаж, ценах и затратах приведены в табл. 2.

Таблица 2. Объемы продаж, цены товаров А и Б и издержки производства.

Показатели Товар
А Б
Объем продаж в месяц, шт.
Цена реализации, руб.
Переменные издержки на единицу товара, руб.
сырье и материалы
заработная платы
переменные производственные накладные расходы
переменные сбытовые накладные расходы
6000
52

20
14
5
5
4000
90

35
20
10
12
Постоянные издержки в месяц, тыс. руб.
административные
производственные
сбытовые

18
50
22

Предположим, что требуется определить:

1) размер прибыли, получаемой фирмой за месяц;

2) среднюю величину покрытия для каждого товара;

3) коэффициент покрытия для каждого товара;

4) размер прибыли, который получит фирма, если расширит продажу товара А до 7000 шт., а товара Б - до 4500 шт.

Для ответа на поставленные вопросы все необходимые данные сведены в табл. 3.

Таблица 3. Порядок расчета средней величины и коэффициента покрытия, а также размера прибыли фирмы.

Показатели Товар Всего
А В
Объем выпуска, шт.
Переменные издержки, тыс. руб.:
сырье и материалы
заработная плата
переменные производственные накладные расходы
переменные сбытовые накладные расходы
6000

120
84
30
30
4000

140
80
40
48
10 000

260
164
70
78
И т о г о переменных издержек
Выречка от реализации, тыс. руб.
Сумма покрытия, тыс. руб.
Постоянные издержки, тыс. руб.
Прибыль, тыс. руб.
Средняя величина покрытия, тыс. руб.
Коэффициент покрытия
264
312
48


8
0,154
308
360
52


13
0,144
572
672
100
90
10


Итак, за месяц фирма зарабатывает 10 тыс. руб. прибыли. Средняя величина покрытия для товара А составляет 8 руб. (коэффициент покрытия 0,154), для товара Б - 13 руб. (коэффициент покрытия 0,144).

При расширении объема продаж фирма получит:

1) сумма покрытия от продажи товара А: 8 руб.*7000 = 56 тыс. руб.;
2) сумма покрытия от продажи товара Б: 13 руб.*4500 = 58,5 тыс. руб.;
3) сумма покрытия от продажи товаров А и Б: 56 тыс. руб. + 58,5 тыс. руб. = 114,5 тыс. руб.;
4) постоянные издержки фирмы: 90 тыс. руб.;
5) прибыль фирмы: 114,5 тыс. руб. - 90 тыс. руб. = 24,5 тыс. руб.

Пример 3. Компания производит и реализует один товар, переменные затраты на единицу которого приведены ниже, руб.:

Сырье и материалы: . . . . . . . . . . . . . . 20
Заработная плата:  . . . . . . . . . . . . . . 16
Переменные производственные накладные расходы:  8
Переменные сбытовые накладные расходы: . . . .  4
-------------------------------------------------
И т о г о  . . . . . . . . . . . . . . . . . . 48

Товар продается по цене 60 руб. за 1 шт., постоянные затраты составляют 136 тыс. руб. Определим, какое количество товара должна продать компания, чтобы обеспечить получение 32 тыс. руб. прибыли?

1. Для решения этой задачи найдем сумму покрытия. Ее можно определить как разницу между валовой выручкой и переменными затратами, а также как сумму постоянных затрат и прибыли:

136 тыс. руб. + 32 тыс. руб. = 168 тыс. руб.

2. Зная сумму покрытия, найдем его среднюю величину как разницу между ценой товара и средними переменными издержками:

60 руб. - 48 руб. = 12 руб.

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

168 тыс. руб. : 12 руб./шт. = 14 тыс. шт.

Пример 4. Фирма желает продать 20 тыс. шт. товара. Средние переменные издержки на производство и реализацию составляют 15 руб. Постоянные издержки - 250 тыс. руб. Фирма планирует получить прибыль в размере 50 тыс. руб. По какой цене следует продавать товар?

1. Найдем сумму покрытия, прибавив к постоянным издержкам планируемый объем прибыли:

250 тыс. руб. + 50 тыс. руб. = 300 тыс. руб.

2. Найдем среднюю величину покрытия, разделив сумму покрытия на количество продаваемых товаров:

300 тыс. руб. : 20 тыс. шт. = 15 руб./шт.

3. Найдем цену товара, прибавив к средней величине покрытия средние переменные издержки:

15 руб. + 15 руб. = 30 руб.

Свои вопросы присылайте по адресу mathematician@home.tula.net.

Содержание рассылки зависит и от Вас: чем активнее Вы проявляете свою заинтересованность в той или иной теме, задаете те или иные вопросы - тем полезнее рассылка будет для каждого из Вас! Пишите: mathematician@home.tula.net.



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное