古諾雙寡頭模型MATLAB求解(博弈論)

古諾雙寡頭模型MATLAB求解(博弈論)

基本概念

古諾競爭模型(也稱古諾模型)是早期的寡頭壟斷模型。它是法國經濟學家古諾於1838年提出的。html

古諾模型的假定是:市場上有A、B兩個廠商生產和銷售相同的產品,他們的生產成本爲0;他們共同面臨的市場的需求是線性的,A、B兩個廠商都準確地瞭解市場的需求曲線;A、B兩個廠商都是在已知對方產量的狀況下,各自肯定可以給本身帶來最大利潤的產量,即每個廠商都是消極地以本身的產量去適應對方已肯定的產量。函數

設市場需求函數爲:
優化

D=D(p1+p2)=ab(p1+p2)D=D(p1+p2)=a−b(p1+p2)

其中 p1p1 p2p2分別是兩個企業的產量。假設兩企業的成本函數相同,都爲 C=c0pC=c0p(p爲產量),則企業1在預測企業2的產量爲 p2p2的狀況下,尋求使本身利潤最大化的最優產量 p1p1,即
maxp1[ab(p1+p2)]cp1maxp1[a−b(p1+p2)]−cp1

上面優化模型中的最優解的 p1p1顯然是 p2p2的函數 p1=f(p2)p1=f(p2)

一樣企業2在以預測企業1的產量爲P1P1的狀況下,尋求使本身利潤最大化的最優產量p2p2,即
spa

maxp2[ab(p1+p2)]cp2maxp2[a−b(p1+p2)]−cp2

上面的優化模型中的最優解 p2p2顯然是 p1p1的函數 p2=g(p1)p2=g(p1)

同時知足下面方程的(p1,p2)(p1,p2)稱爲古諾平衡:
code

{p1=f(p2)p2=g(p1){p1=f(p2)p2=g(p1)

根據最優化條件能夠獲得均衡時:
p1=p2=ac3bp1=p2=a−c3b

古諾競爭模型應用實例

設市場的需求函數爲D=61.210(p1+p2)D=61.2−10∗(p1+p2),兩企業的成本函數都是C=1.2pC=1.2p,求古諾均衡時兩企業的產量。htm

:由優化模型獲得blog

企業1的優化模型爲:
get

maxp1[61.210(p1+p2)]1.2p1maxp1[61.2−10(p1+p2)]−1.2p1

其最優產量爲: p1=6p22p1=6−p22

企業2的優化模型爲:
產品

maxp2[61.210(p1+p2)]1.2p2maxp2[61.2−10(p1+p2)]−1.2p2

其最優產量爲: p2=6p12p2=6−p12

則古諾均衡時兩企業的產量爲:p1=p2=61.21.2310=2p1=p2=61.2−1.23∗10=2it

MATLAB實現

clear
clc
syms x;
i=1;

y=6*rand;   %初始化企業2的產量
z=6*rand;   %初始化企業1的產量
for iter=1:10000 
    z_old=z;
    y_old=y;

    y1=-x*(61.2-10*(x+y_old))+1.2*x;    %企業1
    vdpf = matlabFunction([y1],'Vars',{x}); %將符號表達式轉化爲函數句柄!!!
    [v1(i),fval1(i)]=fminsearch(vdpf,0);
    z=v1(i);

    y2=-x*(61.2-10*(x+z_old))+1.2*x;    %企業2
    vdpf = matlabFunction([y2],'Vars',{x});
    [v2(i),fval2(i)]=fminsearch(vdpf,0);
    y=v2(i);

    if abs(z-z_old)<0.0001 && abs(y-y_old)<0.0001
        break;
    end

    i=i+1;
end

figure(1);
plot(v1,-fval1,'b*-',v2,-fval2,'ro-');
legend('企業1','企業2');
grid on

須要注意的是第13行將符號表達式轉換爲函數句柄,變成函數句柄後才能方便調用fminsearch函數,具體參考http://blog.sina.com.cn/s/blog_66faf9cf0101ckuu.html

相關文章
相關標籤/搜索