《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 矩陣對(duì)策專用軟件系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)研究
矩陣對(duì)策專用軟件系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)研究
2015年微型機(jī)與應(yīng)用第14期
游文霞1,常俊曉1,蘇良虎2
(1.三峽大學(xué) 電氣與新能源學(xué)院,湖北 宜昌 443002; 2.晶晨半導(dǎo)體上海有限公司深圳分公司,廣東 深圳 518063)
摘要: 矩陣對(duì)策常用于解決對(duì)抗性決策問題,當(dāng)問題復(fù)雜時(shí)人工求解困難。為此,借助計(jì)算機(jī)的信息處理能力,設(shè)計(jì)出具有可視化功能的矩陣對(duì)策專用軟件,分析了矩陣對(duì)策的數(shù)學(xué)模型,給出了系統(tǒng)算法流程和對(duì)偶單純形法算法的計(jì)算步驟,采用Qt圖形視圖框架,借助C++ Boost數(shù)值計(jì)算庫(kù)ublas語(yǔ)言以及QtMmlWidget組件開發(fā)出矩陣對(duì)策專用軟件,以方便決策雙方快速合理地采取策略。運(yùn)行算例表明,該軟件操作方便,能夠公式化地顯示完整的計(jì)算過程,具有跨平臺(tái)特性。
Abstract:
Key words :

  摘  要矩陣對(duì)策常用于解決對(duì)抗性決策問題,當(dāng)問題復(fù)雜時(shí)人工求解困難。為此,借助計(jì)算機(jī)的信息處理能力,設(shè)計(jì)出具有可視化功能的矩陣對(duì)策專用軟件,分析了矩陣對(duì)策的數(shù)學(xué)模型,給出了系統(tǒng)算法流程和對(duì)偶單純形法算法的計(jì)算步驟,采用Qt圖形視圖框架,借助C++ Boost數(shù)值計(jì)算庫(kù)ublas語(yǔ)言以及QtMmlWidget組件開發(fā)出矩陣對(duì)策專用軟件,以方便決策雙方快速合理地采取策略。運(yùn)行算例表明,該軟件操作方便,能夠公式化地顯示完整的計(jì)算過程,具有跨平臺(tái)特性。

  關(guān)鍵詞: 矩陣對(duì)策;對(duì)偶單純形法;Qt圖形視圖框架;Boost

0 引言

  矩陣對(duì)策又稱為二人有限零和對(duì)策,現(xiàn)已得到廣泛研究,在體育比賽和政治經(jīng)濟(jì)談判等對(duì)抗性決策問題應(yīng)用中取得了很大成就[1-2],為制定最有利的行動(dòng)方案提供了理論依據(jù)。

  國(guó)內(nèi)外已經(jīng)開發(fā)出多種計(jì)算矩陣對(duì)策的數(shù)學(xué)工具軟件,有MATLAB[3]、Lingo[4]與Mathematic[5]等,雖然這類軟件功能強(qiáng)大,但比較復(fù)雜,求解矩陣對(duì)策問題前需要先建立數(shù)學(xué)模型,再將原問題轉(zhuǎn)化為線性規(guī)劃問題。參考文獻(xiàn)[6]開發(fā)出用于解決矩陣對(duì)策問題的程序Matrix Game Solver,輸入贏得矩陣,即可計(jì)算出對(duì)策值、局中人Ⅰ和Ⅱ的最優(yōu)決策向量,但不能輸出計(jì)算過程。參考文獻(xiàn)[7]設(shè)計(jì)了用于教學(xué)的矩陣對(duì)策程序,擁有良好的人機(jī)交互界面,可以給出計(jì)算過程,但操作步驟不夠靈活。

  本文借助Qt圖形界面框架、C++ Boost數(shù)值計(jì)算庫(kù),通過QtMmlWidget組件解析數(shù)學(xué)標(biāo)記語(yǔ)言MathML,以實(shí)現(xiàn)對(duì)數(shù)學(xué)公式的渲染,設(shè)計(jì)開發(fā)一款矩陣對(duì)策專用軟件系統(tǒng),方便決策雙方快速采取合理的方案,同時(shí)使其具有跨平臺(tái)特性,操作簡(jiǎn)單且能夠公式化地顯示完整的計(jì)算過程。

1 矩陣對(duì)策數(shù)學(xué)模型及求解

  記矩陣對(duì)策兩個(gè)局中人為Ⅰ、Ⅱ,策略集S1、S2如式(1)和式(2)所示,式(3)為矩陣對(duì)策的贏得矩陣A。Ⅰ和Ⅱ分別有m和n個(gè)行動(dòng)策略。

  PU7(@T]G)~04C0JW6`}Q_M3.png

  當(dāng)矩陣A存在鞍點(diǎn)時(shí),其為純策略矩陣對(duì)策,根據(jù)式(4)計(jì)算出純策略下的對(duì)策值及Ⅰ與Ⅱ的最優(yōu)純策略;反之,A為混合策略矩陣對(duì)策,求解時(shí)先分解出兩個(gè)互為對(duì)偶的線性規(guī)劃問題,再采用對(duì)偶單純形法求解出混合策略下的對(duì)策值及Ⅰ與Ⅱ的最優(yōu)純策略[8]。

  P5)S{@DHJ574WW%NWH72HKK.png

2 軟件結(jié)構(gòu)設(shè)計(jì)

001.jpg

  根據(jù)矩陣對(duì)策專用軟件使用簡(jiǎn)單、操作方便的功能需求,以及各模塊間相互獨(dú)立的設(shè)計(jì)思想,將軟件分為程序界面、數(shù)值計(jì)算和結(jié)果、計(jì)算過程顯示3個(gè)模塊。軟件結(jié)構(gòu)如圖1所示,給出了各模塊包含的類以及模塊之間的關(guān)系,通過Qt庫(kù)提供的信號(hào)與槽事件機(jī)制可以快速有效地實(shí)現(xiàn)各個(gè)模塊之間的消息傳遞與事件處理。

3 系統(tǒng)實(shí)現(xiàn)

  3.1 系統(tǒng)設(shè)計(jì)平臺(tái)

  Qt是一種跨平臺(tái)C++圖形用戶界面應(yīng)用程序開發(fā)框架,具有良好的封裝機(jī)制,在保證較高模塊化程度的同時(shí)也維系了很好的擴(kuò)展性,且其豐富的API為該矩陣對(duì)策軟件開發(fā)提供了很大的便利[9]。

  Boost是一個(gè)可移植、開放源代碼的C++準(zhǔn)標(biāo)準(zhǔn)庫(kù),相當(dāng)于C++標(biāo)準(zhǔn)模板庫(kù)STL的擴(kuò)充。對(duì)比STL,Boost包含了更多工具類,更加實(shí)用。

  QtMmlWidget屬于Qt Solutions組件,支持MathML2.0語(yǔ)言,以Unicode字體渲染各種數(shù)學(xué)符號(hào),能夠直接將用MathML2.0語(yǔ)言編寫的數(shù)學(xué)公式對(duì)象移植到Qt程序中。

  該專用計(jì)算軟件以Qt框架提供的窗體、菜單等控件設(shè)計(jì)輸入輸出界面;以C++為編程語(yǔ)言,使用Boost數(shù)值計(jì)算庫(kù)ublas完成矩陣對(duì)策問題的數(shù)值計(jì)算;最后提出公式的描述規(guī)則,借助QtMmlWidget解析MathML,實(shí)現(xiàn)對(duì)數(shù)學(xué)公式的渲染。

  3.2 程序界面模塊

  程序界面包括主界面、贏得矩陣行列、輸入輸出窗口、矩陣對(duì)策窗體及結(jié)果顯示界面,為整個(gè)軟件系統(tǒng)提供與用戶間的交互功能。程序主界面類與選項(xiàng)卡類間為一對(duì)多的關(guān)系,OrtTabWidget與行列輸入對(duì)話框類為一對(duì)一的關(guān)系。因此,系統(tǒng)可以接收多個(gè)行列數(shù)據(jù)的輸入,同時(shí)求解多個(gè)矩陣對(duì)策問題。

  系統(tǒng)采用表格形式接收輸入的贏得矩陣數(shù)據(jù),輸出分為純策略與混合策略兩種情況,再用數(shù)學(xué)公式顯示類將結(jié)果顯示在矩陣對(duì)策窗體類中。純策略下贏得矩陣的解直接根據(jù)式(4)分析矩陣中各元素的值得到,過程簡(jiǎn)單,不生成中間數(shù)據(jù)。混合策略下系統(tǒng)給出單純形法輸出窗體,包括兩個(gè)選項(xiàng)卡:線性規(guī)劃數(shù)學(xué)模型及其標(biāo)準(zhǔn)型和計(jì)算結(jié)果選項(xiàng)卡、迭代計(jì)算生成的單純形數(shù)據(jù)表顯示選項(xiàng)卡。

  3.3 數(shù)值計(jì)算模塊

002.jpg

  數(shù)值計(jì)算模塊實(shí)現(xiàn)矩陣對(duì)策求解功能。根據(jù)贏得矩陣是否存在鞍點(diǎn)設(shè)計(jì)算法流程如圖2所示,對(duì)偶單純形法求解混合策略下矩陣對(duì)策問題的算法步驟如圖3所示。當(dāng)贏得矩陣中存在負(fù)數(shù)時(shí),將各元素減去最小負(fù)數(shù),使矩陣中全部元素值非負(fù)。

  3.4 結(jié)果及計(jì)算過程顯示模塊

  根據(jù)MathML2.0的語(yǔ)法規(guī)則,將數(shù)學(xué)公式分為單節(jié)點(diǎn)元素公式與多層嵌套節(jié)點(diǎn)樹公式。前者為數(shù)字、運(yùn)算符等簡(jiǎn)單公式,后者為矩陣、上下標(biāo)等復(fù)雜公式。定義如下描述數(shù)學(xué)公式的語(yǔ)法規(guī)則:

  (1)單節(jié)點(diǎn)元素公式

  #mx(attr,value,attr,value,…)[data]#

  式中,mx只能為標(biāo)識(shí)符、運(yùn)算符、數(shù)字、文本之一,data為公式的數(shù)據(jù),attr和value為mx的屬性和值。

  (2)多層嵌套節(jié)點(diǎn)樹公式

  #mx<level>(attr,value,attr,value,…)[data]&&mx<level>(attr,value,attr,value,…)[data]&&…#

  其中,各層公式標(biāo)記用&&隔開,level表示公式標(biāo)記的層數(shù),從0開始逐層深入,且第0層元素mx不能為標(biāo)識(shí)符、運(yùn)算符、數(shù)字和文本。

  上述規(guī)則中,數(shù)學(xué)公式以成對(duì)的“#”出現(xiàn)。系統(tǒng)將計(jì)算數(shù)據(jù)按語(yǔ)法規(guī)則描述為字符串形式,再傳遞給FormulaMmlWidget類。該類借助Qt庫(kù)中與XML相關(guān)類與函數(shù)將傳入的字符串轉(zhuǎn)換為符合MathML2.0標(biāo)準(zhǔn)的XML語(yǔ)句,并以字符串的方式傳遞給父類QtMmlWidget進(jìn)行渲染[10]。實(shí)現(xiàn)數(shù)學(xué)公式顯示的步驟如圖4所示。

003.jpg

  由于QtMmlWidget對(duì)MathML2.0支持并非十分完美,在處理不等式對(duì)齊時(shí),采用MathML呈現(xiàn)型標(biāo)記mphantom處理行與列的對(duì)齊問題。經(jīng)渲染后的公式以Qt窗體元件顯示在數(shù)學(xué)公式顯示類與單純形表窗體類控件中,前者可以顯示矩陣對(duì)策的解、矩陣、線性規(guī)劃數(shù)學(xué)模型及其標(biāo)準(zhǔn)型,后者用于顯示迭代過程中生成的單純形數(shù)據(jù)表格。

4 應(yīng)用實(shí)例

  設(shè)式(5)為待計(jì)算的矩陣對(duì)策問題的贏得矩陣,輸入該矩陣后點(diǎn)擊“計(jì)算”按鈕,運(yùn)行界面如圖5所示。

  VLL4WH{}M6@MRQ_S{(SM1$I.png

004.jpg

  從圖5可以讀到局中人Ⅰ與Ⅱ最優(yōu)混合策略分別為(0.25,0.5,0.25)T與(0.25,0.5,0.25)T,且局中人Ⅱ的期望值為0。點(diǎn)擊“顯示”按鈕,得到圖6與圖7所示的對(duì)偶單純形法求解過程與中間數(shù)據(jù)。從圖6可以看出,將輸入的矩陣各元素加5,使其全部非負(fù)。圖7顯示了經(jīng)過4次迭代計(jì)算求出問題的最優(yōu)解,單純形表中用“[]”標(biāo)記的粗體數(shù)字即為主元素。整個(gè)計(jì)算過程可以公式化地顯示在界面中,清晰直觀。

5 結(jié)論

  本文論述了矩陣對(duì)策專用軟件系統(tǒng)的圖形化界面設(shè)計(jì)方法,分析了純策略下與混合策略下矩陣對(duì)策問題的模型及其求解方法,給出了數(shù)學(xué)公式的描述規(guī)則,實(shí)現(xiàn)了文本、矩陣等數(shù)學(xué)公式的顯示。從計(jì)算實(shí)例可以看出,軟件使用簡(jiǎn)單,操作方便,輸出直觀,能夠快速方便地求解出任意的矩陣對(duì)策問題。在此軟件的基礎(chǔ)上,可以加入整數(shù)規(guī)劃等優(yōu)化問題的分析計(jì)算模塊,從而實(shí)現(xiàn)功能更豐富的運(yùn)籌學(xué)優(yōu)化軟件。

  參考文獻(xiàn)

  [1] 楊靛青,李登峰.多目標(biāo)直覺模糊集矩陣對(duì)策的求解方法[J].福州大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,42(2):213-218.

  [2] Li Dengfeng. Mathematical-programming approach to matrix games with payoffs represented by atanassov′s interval-valued intuitionistic fuzzy sets[J]. IEEE Transactions on Fuzzy Systems,2010,18(6):1112-1128.

  [3] 陳杰.MATLAB寶典(第三版)[M].北京:電子工業(yè)出版社,2011.

  [4] 謝金星,薛毅.優(yōu)化建模與LINDO/LINGO軟件[M].北京:清華大學(xué)出版社,2005.

  [5] 陽(yáng)明盛,林建華.Mathematica基礎(chǔ)及數(shù)學(xué)軟件[M](第2版).大連:大連理工大學(xué)出版社,2005.

  [6] THOMAS S, FERGUSON. Matrix game solver[EB/OL].[2014-03-14].(2015-01-10). http://www.math.ucla.edu/~tom/gamesolve.html.

  [7] 劉建永.運(yùn)籌學(xué)算法與編程實(shí)踐——Delphi實(shí)現(xiàn)[M].北京:清華大學(xué)出版社,2004.

  [8] 《運(yùn)籌學(xué)》教材編寫組.運(yùn)籌學(xué)(第4版)[M].北京:清華大學(xué)出版社,2012.

  [9] 李文帆,劉志剛,伍文城,等.基于Qt的電力系統(tǒng)地理接線圖繪制軟件設(shè)計(jì)[J].電力系統(tǒng)自動(dòng)化,2013,37(7):72-76.

  [10] 張光渝,楊秋輝,詹聰,等.開放式XML數(shù)據(jù)的質(zhì)量分析方法[J].計(jì)算機(jī)應(yīng)用研究,2013,30(7):2082-2086.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲区一区二| 欧美一区二区在线| 国产一区999| 国产精品每日更新| 欧美视频一区二区| 欧美精品一区二区视频| 蜜桃av一区二区| 裸体素人女欧美日韩| 久久久免费精品| 久久久亚洲成人| 久久免费的精品国产v∧| 久久久久久久97| 久久精品国产99| 久久久久成人网| 久久男人av资源网站| 久久免费高清视频| 快播亚洲色图| 欧美国产亚洲另类动漫| 欧美喷潮久久久xxxxx| 欧美日韩成人综合在线一区二区 | 国内精品视频在线播放| 国精产品99永久一区一区| 国内外成人在线视频| 一区在线观看| 亚洲精品美女在线观看| 日韩亚洲精品电影| 亚洲一区二区三区三| 欧美一级久久| 亚洲国产日韩欧美在线图片| 亚洲日本免费| 亚洲午夜激情网页| 性久久久久久| 久久躁日日躁aaaaxxxx| 欧美国产精品v| 欧美日韩精品在线| 国产精品一区二区久久| 国际精品欧美精品| 亚洲人精品午夜在线观看| 在线亚洲一区观看| 欧美亚洲色图校园春色| 亚洲国产三级网| 亚洲图片欧美午夜| 欧美在线影院在线视频| 免费视频久久| 国产精品极品美女粉嫩高清在线| 国产精品视频免费观看| 红桃视频国产精品| 日韩图片一区| 久久av老司机精品网站导航 | 日韩午夜激情av| 亚洲免费在线视频| 久久久之久亚州精品露出| 欧美高清hd18日本| 国产精品第13页| 精品成人一区二区| 中文在线不卡视频| 亚洲成色精品| 亚洲专区一二三| 老司机免费视频久久| 欧美日韩一区综合| 激情欧美一区二区| 亚洲视频久久| 亚洲高清视频中文字幕| 亚洲免费在线观看| 欧美国产日本| 国产日韩一区二区| 99在线热播精品免费| 久久精品人人做人人爽| 亚洲一二区在线| 免费日韩成人| 国产日韩欧美在线一区| 日韩亚洲欧美一区| 亚洲福利在线视频| 欧美一区1区三区3区公司| 欧美噜噜久久久xxx| 国产综合色精品一区二区三区 | 一区二区三区四区国产| 亚洲国产成人av好男人在线观看| 亚洲视频一区二区免费在线观看| 久热精品在线视频| 国产欧美一区二区三区在线老狼| 亚洲每日更新| 亚洲国产精品999| 久久国产精品亚洲77777| 欧美日韩一二区| 亚洲福利视频网| 久久激情视频免费观看| 亚洲欧美国产精品va在线观看| 欧美黄色片免费观看| 韩国亚洲精品| 亚洲欧美另类中文字幕| 国产精品99久久久久久有的能看| 免费成人美女女| 国产日韩精品一区二区| 一区二区三区日韩欧美精品| 日韩视频永久免费观看| 欧美14一18处毛片| 红桃av永久久久| 欧美在线欧美在线| 欧美一区二区三区四区视频 | 激情小说另类小说亚洲欧美 | 国产婷婷97碰碰久久人人蜜臀| 妖精成人www高清在线观看| 亚洲精品乱码久久久久久久久| 久久亚洲风情| 国产一区二区三区四区hd| 亚洲专区在线| 亚洲欧美综合| 国产精品久久久久久久第一福利| 亚洲美女av黄| 一区二区三区国产精品| 欧美另类在线播放| 亚洲日韩第九十九页| 亚洲精品久久久久| 奶水喷射视频一区| 在线日韩av永久免费观看| 亚洲国产精品999| 欧美不卡在线视频| 亚洲电影自拍| 亚洲精品影视| 欧美激情视频在线免费观看 欧美视频免费一 | 欧美成人69av| 亚洲人成毛片在线播放| 日韩午夜黄色| 欧美日韩一区二区在线播放| 一区二区三区黄色| 亚洲一区二区动漫| 国产精品久久久久999| 亚洲一区国产视频| 欧美一区二区日韩| 国产视频久久久久| 欧美在线视频在线播放完整版免费观看 | 国产亚洲欧美色| 久久精品视频在线播放| 麻豆精品在线播放| 亚洲黄色三级| 亚洲无限乱码一二三四麻| 国产精品久久久久7777婷婷| 亚洲欧美国产精品va在线观看| 欧美一区免费| 精东粉嫩av免费一区二区三区| 亚洲激情一区二区三区| 欧美剧在线观看| 亚洲视频免费看| 久久久久久色| 最新日韩在线视频| 亚洲自拍偷拍福利| 国产亚洲欧洲997久久综合| 亚洲福利国产| 欧美午夜不卡影院在线观看完整版免费| 亚洲一二三区在线| 久久久久国色av免费观看性色| 亚洲国产天堂久久国产91| 一区二区三区四区精品| 国产免费亚洲高清| 亚洲国产精品久久久久秋霞不卡 | 亚洲欧美成人在线| 欧美1区视频| 亚洲婷婷综合色高清在线 | 亚洲国产精品久久久久秋霞影院 | 91久久精品一区| 欧美日韩在线免费视频| 性欧美video另类hd性玩具| 欧美成人国产一区二区| 在线视频精品一| 久久深夜福利免费观看| 亚洲日本成人| 欧美在线一级视频| 亚洲清纯自拍| 久久激情网站| 亚洲免费观看| 久久综合亚州| 亚洲视频一区二区免费在线观看| 久久久之久亚州精品露出| a4yy欧美一区二区三区| 久久免费高清| 亚洲图片在线| 欧美二区在线| 亚洲欧美日韩视频一区| 欧美精品九九| 欧美一站二站| 国产精品v欧美精品∨日韩| 亚洲国产欧美国产综合一区| 欧美午夜一区二区三区免费大片 | 日韩天堂在线视频| 久久一二三四| 亚洲综合精品一区二区| 欧美国产视频日韩| 欧美在线日韩精品| 国产精品免费一区二区三区观看| 亚洲伦理精品| 国语自产在线不卡| 亚洲欧美日韩第一区| 91久久精品国产| 久久亚洲精品一区二区| 亚洲网站视频福利| 欧美日韩高清免费| 亚洲国产精品www| 国产欧美一区二区精品仙草咪| 中文亚洲免费|