陶曉靜+楊雄
摘 要:在高職數(shù)學(xué)建模的教學(xué)中,會遇到一些博弈問題,稍簡單的問題尚可用理論推斷,手動計算,一旦數(shù)據(jù)量增加,就對MATLAB等軟件的使用提出了更高的要求。文章從一個經(jīng)典的博弈問題出發(fā),探討了MATLAB循環(huán)語句的使用實踐,對數(shù)學(xué)建模教學(xué)起到了良好的促進作用,也增強了高職學(xué)生學(xué)習(xí)數(shù)學(xué)軟件的興趣與信心。通過軟件處理含有復(fù)雜數(shù)據(jù)的數(shù)學(xué)問題,實現(xiàn)了從課堂走向?qū)嵺`的可能。
我們知道博弈論對現(xiàn)代社會的深遠影響,并且了解它在現(xiàn)代數(shù)學(xué)中的重要地位。它是連接數(shù)學(xué)與現(xiàn)代社會的紐帶與橋梁。而其中權(quán)力指數(shù)是我們常見的博弈論問題,也十分重要。在實際研究中人們不但要進行定性分析,也要對相關(guān)問題進行定量分析,而大量的數(shù)據(jù)阻礙了很多人對大數(shù)據(jù)問題的研究。MATLAB在教學(xué)過程中打開了一種新的局面,培養(yǎng)了學(xué)生處理數(shù)據(jù)的能力。
本文從權(quán)力指數(shù)這個問題入手,通過一個例題展示數(shù)學(xué)建模課程中使用MATLAB軟件的一些技巧與心得。
一、博弈問題的描述
1.博弈論概述
博弈論也稱為對策論(Game Theory),是現(xiàn)代數(shù)學(xué)的一個重要分支,屬于運籌學(xué)的一部分。博弈論研究公式化的激勵結(jié)構(gòu)之間的相互作用,是研究斗爭或競爭性現(xiàn)象的數(shù)學(xué)理論與方法。可考慮個體的預(yù)測行為和實際表現(xiàn),進一步研究個體的改進策略,為個體決策提供理論依據(jù)與量化指標。
2.權(quán)力指數(shù)的概念
公司在做出決策的時候,需按股權(quán)分量進行表決。在通常情況下,大股東的意志對決策有著巨大影響。具體來說,設(shè)一共有n個股東,C1,C2,…Cn,股權(quán)分量不一,某決議的通過表決時有以下幾種可能。
(1)若C1離場,C2,C3…Cn能否直接做出決定?
(2)若C2離場,C1,C3…Cn能否直接做出決定?
(3)同理,若 Ci,i>2,離場,情況會怎樣?
否定其他股東預(yù)決議的能力稱為他的權(quán)力指數(shù)。
二、權(quán)力指數(shù)在投票表決中的應(yīng)用
表決時,為了體現(xiàn)己方的表決意志,必須獲得足夠多的票數(shù)。通過權(quán)力指數(shù),我們可以方便地了解某人在表決過程中的重要程度,并由此做出相應(yīng)的決策。
案例1 某公司有A、B、C、D、E五個股東,決策原則遵循“一股一票”。他們的股份分別為:A擁有36股,B擁有16股,C擁有16股,D擁有16股,E擁有16股。
若A暫時離場,由B、C、D、E對于某項決議進行初步的表決,我們稱之為預(yù)決策。預(yù)決策時,共有24=16種情形。
解:%ABCDEF的權(quán)力指數(shù)計算語句
a=input('please input a');
b=input('please input b');
c=input('please input c');
d=input('please input d');
e=input('please input e');
f=input('please input f');
A=a+b+c+d+e+f;%計算票數(shù)的和
k=0;
%如果要計算其他人的權(quán)力指數(shù)只需在這里將a與其他變量進行一個交換。
%其交換語句如交換a與b,以計算b的權(quán)力指數(shù)為:a=m;a=b;b=m;
forC2=0∶1
for C3=0∶1
for C4=0∶1
for C5=0∶1
for C6=0∶1
sum=C2*b+C3*c+C4*d+C5*e+C6*f;
if sum>b+c+d+e+f-sum
if sum k=k+1; end elseif sum+a>b+c+d+e+f-sum k=k+1; end end end end end end fprintf('quanlizhishuwei %6.2f',k) 輸入36 16 16 16 16,得a 的權(quán)力指數(shù)為14,如此進行替換后,可計算得b、c、d、e權(quán)力指數(shù)都為2。 案例2 議員名額的分配 某國家有人口數(shù)量不等的六個地區(qū)。國家議員人數(shù)按地區(qū)分配如表1所示: 議員的總?cè)藬?shù)是31。雖然地區(qū)a地區(qū)、b地區(qū)、c議員都不足以單獨左右議會決議,但這三個地區(qū)中任何兩個地區(qū)的票數(shù)之和都已經(jīng)超過了議會的半數(shù)。有人動議將議員人數(shù)變更為12、10、8、3、3、2,請分析權(quán)力指數(shù)與比重的變化以及為各個地區(qū)給出決策。對上例程序稍微修改就能得到如下解: 解:a=input(‘please input a); A=a(1)+a(2)+a(3)+a(4)+a(5)+a(6); k=0;M=[0 0 0 0 0 0];n=1; for C2=0∶1 for C3=0∶1 for C4=0∶1 for C5=0∶1 for C6=0∶1 sum= C2*a(2)+ C3*a(3)+ C4*a(4)+ C5*a(5)+ C6*a(6); if sum>a(2)+a(3)+a(4) +a(5)+a(6)-sum if sum k=k+1; end elseif sum+a(1)>a(2)+a(3)+a(4)+a(5)+a(6)-sum k=k+1; end