Автор: Пользователь скрыл имя, 21 Января 2013 в 21:40, лабораторная работа
Цель работы: построить график функции в среде разработки Visual Basic.NET.
Будем считать, что на рынке одного товара функция спроса и функция предложения – линейные функции цены на момент времени или цены предыдущего момента времени.
Составить программу, которая:
1. Изображает кривую спроса и кривую предложения на плоскости, по оси абсцисс которой отложена цена , а по оси ординат – количество сделок.
2. Вычисляет начальное предложение исходя из начального значения цены на момент времени .
3. Изображает маршрут "изменение цены → изменение числа сделок", который имеет вид "паутины", повторив несколько раз процессы.
Хотя предмет теории производства иной – проблемы производственной деятельности предприятий, ход рассуждений здесь очень близок к теории потребления. Функциям полезности и кривым безразличия, описывающим потребление, соответствуют производственные функции и изокванты, описывающие производство. Более того, свойства этих функций и формы кривых одинаковы. Следовательно, в программах построения графиков кривых безразличия и приближенных вычислений по методу численного дифференцирования, составленных нами для исследования потребления, достаточно поменять лишь заголовки, названия переменных и определения функций, чтобы применить весь арсенал уже имеющихся у нас средств для анализа производства. Прежде чем обратиться к программе, сделаем небольшие пояснения по поводу производственных функций и изоквант, и тогда все сказанное выше сразу станет понятным.
Начнем с того, что определим производственную деятельность как процесс, в ходе которого предприятия затрачивают различные ресурсы – вещественные блага и услуги (факторы производства), например труд и капитальное оборудование, и в результате выпускают разнообразную, ориентированную на рынок продукцию (продукты производства). Отправной точкой теории производства является идея о том, что технологически эффективная производственная деятельность предприятия, в ходе которой для выпуска, например, одного вида продукции Y затрачивается два вида ресурсов может быть описана с помощью производственной функции . Если для фиксированного выпуска Y изобразить на плоскости все возможные сочетания необходимых ресурсов , мы получим кривую, называемую изоквантой. Так же как и для функций полезности и кривых безразличия, можно выделить по крайней мере четыре типа производственных функций и изоквант.
1. Функции с полным
.
2. Неоклассическая
.
3. Функции с полным
.
4. Функции смешанного типа, например,
.
Нетрудно заметить, что формы этих функций полностью совпадают с формами функций полезности. Если говорить о неоклассической производственной функции, то понятию предельной полезности из теории потребления в теории производства соответствует понятие предельной производительности , которое является здесь одним из ключевых. Законы же убывающей предельной полезности и убывающей предельной нормы замещения потребительских благ в теории производства сформулированы как закон убывающей предельной производительности и закон убывающей предельной нормы взаимного замещения ресурсов. Первый из них гласит, что при росте затрат одного из ресурсов (первого или второго) его предельная производительность, или , падает. Если представить этот факт в виде формулы, то мы получим
Предельная норма замещения (MRS) ресурсов – это предельное отношение замены первого ресурса вторым, – , в ситуации, когда при постоянном выпуске Y сокращение затрат первого ресурса на – dX1 компенсируется ростом затрат второго ресурса на dX2. Подобно теории потребления, это отношение равно отношению частных производных производственной функции, т. е. предельных производительностей ресурсов:
Изокванты неоклассической производственной функции, также как и кривые безразличия, являются гладкими вогнутыми кривыми, а предельная норма замещения ресурсов MRS постепенно убывает.
Как уже говорилось, для графического представления изоквант, предельных производительностей и предельной нормы замещения, а также для выполнения численного дифференцирования вполне достаточно применить те же средства, которые использовались нами в теории потребления. Чтобы получить программу построения изоквант, необходимо в программе построения кривых безразличия поменять старое название графика на «Изокванты» и переименовать переменные U, Y1, Y2 и В на Y, X1, Х2 и А соответственно (попробуйте мысленно представить себе кривые безразличия как изокванты).
Поскольку предельные вычисления в теории производства играют очень важную роль, мы рассмотрим здесь исправленный вариант написанной нами ранее программы, которая выполняет аналогичные вычисления.
Задача
Составим программу, позволяющую при фиксированном значении производственной функции вычислить предельную производительность каждого из ресурсов, а также предельную норму замещения ресурсов. В качестве конкретной производственной функции возьмем функцию Кобба-Дугласа:
Список переменных:
X1 = X1 ; X2= X2 ;
MR = MRS – предельная норма замещения;
D1 =
Н – шаг дифференцирования (h).
Комментарии
2. Производственная функция
Кобба-Дугласа – самая
Предельная производительность труда: .
Предельная производительность капитала: .
Предельная норма замещения: .
Рекомендуем вам сравнить результаты, полученные путем численного дифференцирования, с результатами вычислений по этим формулам.
3. Подобно тому, как предельная
норма замещения в теории
Предпосылкой для такого вывода является то, что предприятия составляют свои производственные планы (Y, X1, Х2), руководствуясь прежде всего принципом максимизации прибыли. Если обозначить через р, q1 и q2 соответственно цены продукции, первого и второго ресурсов, то оптимальным производственным планом для предприятия будет решение ( ) задачи максимизации прибыли П = при ограничении Y = F(X1, X2). Выполнив необходимые подстановки, имеем П = . Продифференцировав это выражение по каждому из факторов производства, мы получим формальное подтверждение сделанному ранее выводу. Иными словами, поскольку
то, сократив p, мы убеждаемся, что
Используя краткосрочную производственную функцию неоклассического типа, изобразим изокванты и изокосты, а также графики средних и предельных затрат и проиллюстрируем таким образом основы теории производства.
Задача
Составим программу, которая один за другим строит графики, изображающие следующие кривые.
,
где C0 – фиксированные издержки.
Список переменных и функций:
Т – переменная выбора номера графика;
А(I) = –– коэффициенты производственной функции ;
Y – выпуск;
Х(I) = Хi – затраты i-го ресурса;
Q(I) = qi – факторная цена i-го ресурса;
С – издержки;
С0 = С0 – фиксированные издержки;
C1, C2, С3 – начальная, конечная величина издержек и величина шагового прироста издержек;
где , а – –– точка касания изокванты и изокосты;
где
1. Параллельные прямые
линии, отражающие отношение
2. Издержки производства на единицу выпуска, C/Y, называют средними затратами (АС). Возьмем следующие производственную функцию и функцию издержек:
и
.
Учитывая, что dX2/dX1=q1/q2, после сокращения в этих формулах X1 и X2 получим
где .
В отличие от средних затрат предельными затратами (МС) называется производная совокупных издержек по выпуску, dC/dY. Для выбранных нами производственной функции и кривой затрат
Учитывая, что точка пересечения АС и МС определяется по формуле
можно построить и кривую предложения, являющуюся частью кривой предельных затрат.
«Краткосрочная
Программа
' ТЕОРИЯ ПРОИЗВОДСТВА
Option Explicit
Dim X0, Y0, XX, YY, SX, SY, X1, AD, XP, BB, C0
Dim A(2), X(2), Q(2)
Private Sub Form_Load()
ScaleMode = 3 ' устанавливаем измерение в пикселях.
X0 = 100 'ось Y от левого края
Y0 = 800
XX = 400
YY = 400
X1 = 1
XX = 500
YY = 500
SX = XX / (600 - X0)
SY = YY / (Y0 - 16)
FontSize = 10 ' устанавливаем размер фонта.
FontName = Screen.Fonts(5) 'устанавливаем фонт Sans Serif
A(0) = 1: A(1) = 0.15: A(2) = 0.2
Q(1) = 6: Q(2) = 4: C0 = 20
AD = A(1) + A(2)
End Sub
'ИЗОКВАНТЫ
Private Sub Command1_Click()
Dim C, C0, C1, C2, C3, I, Y
'Dim I, IT, I1, I2, I3, YZ
'Dim Y(2)
Call Osi(X0, Y0)
CurrentX = 300
CurrentY = 20
Print "ИЗОКВАНТЫ"
CurrentX = 300
CurrentY = 40
Print "Y ="; A(0); " *Х(1)^"; A(1); "*Х(2)^"; A(2)
C0 = 6: C1 = 500: C2 = 2000: C3 = 500
For C = C1 To C2 Step C3
For I = 1 To 2
X(I) = C * A(I) / Q(I) / AD
Next I
BB = X(1) ^ A(1) * X(2) ^ A(2)
For XP = X1 To XX Step SX
Y = (BB / XP ^ A(1)) ^ (1 / A(2))
PSet (XP / SX + X0, Y0 / 2 - Y / SY / 2), 1
Next XP
Next C
End Sub
'ИЗОКВАНТЫ ИЗОКОСТЫ
Private Sub Command2_Click()
Dim C, C0, C1, C2, C3, I, Y
Call Osi(X0, Y0)
CurrentX = 300
CurrentY = 20
Print "ИЗОКВАНТЫ ИЗОКОСТЫ"
CurrentX = 300
CurrentY = 40
Print "ИЗДЕРЖКИ"; Q(1); "*Х(1)+"; Q(2); "*Х(2)"
C0 = 6: C1 = 500: C2 = 2000: C3 = 500
For C = C1 To C2 Step C3
DrawWidth = 2 ' Толщина линий
Line (X0, Y0 / 2 - C / Q(2) / SY / 2)-(C / Q(1) / SX + X0, Y0 / 2), 1
For I = 1 To 2
X(I) = C * A(I) / Q(I) / AD
Next I
BB = X(1) ^ A(1) * X(2) ^ A(2)
For XP = X1 To XX Step SX
Y = (BB / XP ^ A(1)) ^ (1 / A(2))
PSet (XP / SX + X0, Y0 / 2 - Y / SY / 2), 1
Next XP
Next C
For C = 400 To 2100 Step 5
For I = 1 To 2
X(I) = C * A(I) / Q(I) / AD
Next I
BB = X(1) ^ A(1) * X(2) ^ A(2)
Y = (BB / XP ^ A(1)) ^ (1 / A(2))
PSet (X(1) / SX + X0, Y0 / 2 - X(2) / SY / 2), 1
Next C
End Sub
'ИЗДЕРЖКИ
Private Sub Command3_Click()
Dim C, C0, C1, C2, C3, I, Y, AA
Call Osi1(X0, Y0)
CurrentX = 300
CurrentY = 20
Print "ИЗДЕРЖКИ"; Q(1); "*X(1)+"; Q(2); "*Х(2)+"; C0
X1 = 0.3
XX = 3
YY = 40
SX = XX / (600 - X0)
SY = YY / (Y0 - 16)
'КРИВАЯ СРЕДНИХ ИЗДЕРЖЕК
AA = A(0) * (A(2) / A(1) * Q(1) / Q(2)) ^ A(2)
C0 = 6
For XP = X1 To XX Step SX
Y = (Q(1) * AD / A(1) * (XP / AA) ^ (1 / AD) + C0) / XP
PSet (XP / SX + X0, Y0 / 2 - Y / SY / 2), 1
Next XP
'КРИВАЯ ПРЕДЕЛЬНЫХ ИЗДЕРЖЕК
C0 = 2
For XP = X1 To XX Step SX
Y = Q(1) / A(1) / AA * (XP / AA) ^ (1 / AD - 1)
PSet (XP / SX + X0, Y0 / 2 - Y / SY / 2), 1
Next
'КРИВАЯ ПРЕДЛОЖЕНИЯ
X1 = AA * (A(1) / (1 - AD) * C0 / Q(1)) ^ AD
C0 = 5
DrawWidth = 2 ' Толщина линий
ForeColor = QBColor(5) ' Set pen color.
For XP = X1 To XX Step SX
Y = Q(1) / A(1) / AA * (XP / AA) ^ (1 / AD - 1)
PSet ((XP + 0.005) / SX + X0, Y0 / 2 - Y / SY / 2)
Next XP
End Sub
Private Sub Osi(X0, Y0)
Cls
DrawWidth = 1
Line (X0, 16)-(X0, 450), 1
Line (10, Y0 / 2)-(650, Y0 / 2), 1
CurrentX = 60
CurrentY = X0 / 8 - 3
Print "X(2)"
CurrentX = 600
CurrentY = Y0 / 2 + 10
Print "X(1)"
End Sub
Private Sub Osi1(X0, Y0)
Cls
DrawWidth = 1
Line (X0, 16)-(X0, 450), 1
Line (10, Y0 / 2)-(650, Y0 / 2), 1
CurrentX = 60
CurrentY = X0 / 8 - 3
Print "C"