999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

R語言在幾類優化問題中的應用

2019-08-10 06:45:16高成強
價值工程 2019年17期

摘要:R語言以其免費、開源、靈活、擴展程序包豐富等優點,在工程及科研領域得到越來越廣泛的應用。本文介紹了R語言的基本功能,并利用R語言的lpSolve、Rglpk、igraph擴展程序包來解決運籌學中的線性規劃、整數規劃、運輸問題、最短路問題、最小生成樹問題五類典型優化問題。

Abstract: R language is widely used in engineering and scientific research with its advantages of free, open source, flexible, and rich package. This paper introduces the basic functions of R language, and uses extended program package of lpSolve, Rglpk and igraph to solve four typical optimization problems in operations research, which are linear programming, integer programming, transportation problem, shortest path problem and minimum spanning tree problem.

關鍵詞:R語言;優化問題;程序包

Key words: R language;optimization problems;program package

中圖分類號:TP311.1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文章編號:1006-4311(2019)17-0238-03

0? 引言

當前,在優化問題的科學計算中,使用較多的是商業軟件如Matlab、Mathematica等,這類軟件功能強大、應用方便,但也存在著價格昂貴、體積龐大等缺點。而R作為一款免費的開源軟件,具有編程簡單、體積小巧、數據分析功能強大、擴展性能好等特點,在很多應用場合可以替代商業軟件。

1? R語言簡介

R語言是一種自由軟件編程語言與操作環境,主要用于統計分析、繪圖、數據挖掘等。最初是由新西蘭奧克蘭大學的Ross Ihaka和Robert Gentleman開發,因此稱為R,現在由“R開發核心團隊”負責開發和維護[1]。

R是一個統計分析的環境,由于很多統計方法在估計和求解的過程中都需要用到大量的優化算法,因此R環境中自帶了一些優化求解的函數,比如optim和constrOptim。此外,由于R是開源工具,因此可以借助很多第三方R包甚至其他的開源項目來實現很多優化問題的求解[2]。用戶可以根據自己的需求編寫腳本、R包,即便是沒有任何編程功底,僅僅想使用也可以在CRAN社區(Comprehensive R Archive Network)上找到相對應的R包[3]。

2? 幾類優化問題的求解示例

由于R的基本庫功能有限,優化問題的求解一般要使用擴展程序包,需要到R的CRAN社區下載程序包來擴展R的求解功能[4]。程序包的下載地址為:http://cran.r-project.org。

本文示例中所用到的程序包有lpSolve、Rglpk、igraph。

2.1 線性規劃問題

例1:有一砌塊生產廠家生產兩種砌塊,其中一種是有顏色的。每生產有色砌塊1m3,需要2h機器時間、3h人工和2mm3顏料,利潤是150元/m3;每生產無色砌塊1m3,需要1h機器時間和4h人工,利潤是90元/m3。現共有10h機器時間、24h人工和8mm3顏料,問每一種砌塊生產多少,廠家所得利潤最大[5]。

求解此問題,可設生產有色砌塊x1 m3,生產無色砌塊x2 m3,則此問題的優化模型為:

可使用lpSolve程序包中的lp( )函數進行求解,函數的語法可以參閱lpSolve文件。

求解此問題的R代碼為:

目標函數z取得最大值即當有色砌塊和無色砌塊分別生產3.2m3和3.6m3時,廠家所得利潤最大,最大值為804元。

對于無可行解的線性規劃問題,lp( )函數也會給出提示。例如線性規劃模型:

程序會給出結果Error: no feasible solution found,即認為模型有誤,同時也說明線性規劃問題無可行解。

2.2 整數規劃問題

例2:某商場對售貨員的需求經過統計分析如表1所示。

為了保證售貨員休息時間,要求售貨員每周工作5天,休息2天,且休息的2天是連續的,問應該如何安排售貨員的休息時間,既能夠滿足工作需要,又使售貨員的人數最少[6]

2.3 運輸問題

例3:某食品公司有A1,A2,A3三個面包生產廠,每月產量分別為7t,4t,9t;有B1,B2,B3,B4四個銷售公司,每月銷量分別為3t,6t,5t,6t。從第i個面包生產廠到第j個銷售公司的單位運價(百元/t)如表2所示,問:該公司應如何調運,在滿足各銷售點需求量的前提下,使總運費最少[7]?

此問題為運輸問題中的產銷平衡問題。運輸問題的本質也是一類線性規劃問題,可以利用lpSolve包中的lp.transport( )函數進行求解。求解此問題的R代碼為:

即A1向B1,B3分別調運2t,5t,A2向B1,B4分別調運1t,3t,A3向B2,B4分別調運6t,3t,此時總運費為85百元。需要說明的是,此問題的最優解不唯一。

對于產銷不平衡問題,也可以利用lp.transport( )函數進行求解。

例4:某公司從兩個產地A1,A2將物品運往三個銷地B1,B2,B3,各銷地的銷量以及從產地到銷地的每件物品的運輸單價(元/件)如表3所示。問:應如何組織運輸,使總運輸費用最小?

此問題的求解與前述產銷平衡問題類似,但需要注意的是row.signs和col.signs約束條件的選取,row.signs表示按行(產地)的約束條件,row.signs表示按列(銷地)的約束條件。此問題中,row.signs = rep("=", 2),col.signs = rep("<=", 3)。

2.4 最短路問題

例5:里特城是一個農村的小鎮,它的消防隊要為包括許多農場社區在內的大片地區提供服務。這個地區有很多條路,從消防站到任何一個社區都有很多條路線。因為時間是到達火災發生點的主要因素,所以消防隊隊長希望事先能夠確定從消防站到每一個農場社區的最短路。

圖1示意了連接消防站和其中一個農場社區的道路系統(長度單位為km),O為消防站所在地,T為農場社區所在地,求O到T的最短路徑[8]。

此問題中,O為出發點,T為終點,最短路問題可使用igraph程序包進行求解,首先根據點、邊、權,在程序中構建出網絡,然后利用shortest.paths( )函數和get.shortest.paths( )函數求解最短路徑。

2.5 最小生成樹問題

例6:某單位準備對其所屬的7個值班室聯接局域網,這個網絡可能聯通的途徑如圖2所示,圖中v1、v2,…,v7表示7個分隊值班室,圖中的邊為可能聯網的途徑,邊上的所賦的權數為這條路線的長度,單位為百米。請設計一個網絡能聯通7個分隊值班室,并使總的線路長度為最短。

此問題為最小生成樹問題,常規的解法一般為破圈法或避圈法[6]。此問題可使用igraph程序包中的minimum.spanning.tree( )函數求解。

與例5類似,構建出網絡后,求最小生成樹的代碼如下:

程序運行結果如下:

即找到了組成最小生成樹的6條邊,總長度為1900米。

3? 結束語

R語言最初只是一個統計分析軟件包,在統計學和數據處理方面應用廣泛。近年來,隨著版本的升級和擴展程序包的日益豐富,在優化問題處理方面的應用也逐漸增多。本文示例了R語言及擴展程序包在優化問題中最基本的應用,隨著進一步的開發,R語言在解決優化問題方面的優勢將更加明顯。

參考文獻:

[1]薛毅,陳立萍.R語言實用教程[M].北京:清華大學出版社, 2014.

[2]李艦,肖凱.數據科學中的R語言[M].西安:西安交通大學出版社,2015.

[3]藍洋,何秀,朱誠勖,張玉娟.R語言在生物科學研究繪圖中的應用[J].華東師范大學學報(自然科學版),2019(1):124-135.

[4]薛毅.數學建模:基于R[M].北京:機械工業出版社,2017.

[5]朱杰江.建筑結構優化及應用[M].北京:北京大學出版社, 2011.

[6]韓伯棠.管理運籌學[M].北京:高等教育出版社, 2015.

[7]孟麗莎.管理運籌學[M].北京:清華大學出版社,2011.

[8]弗雷德里克 S.希利爾.數據、模型與決策[M].李勇建譯,北京:機械工業出版社,2015.

作者簡介:高成強(1981-),男,河北邯鄲人,講師,研究方向為工程管理。

主站蜘蛛池模板: 色综合婷婷| 怡红院美国分院一区二区| 在线播放国产一区| 毛片在线看网站| 亚洲成人高清无码| 国产99精品视频| 伊人中文网| 成人亚洲天堂| 片在线无码观看| 曰韩人妻一区二区三区| 成人国产小视频| 亚洲欧美综合精品久久成人网| 蜜芽国产尤物av尤物在线看| 国产十八禁在线观看免费| 亚洲女同一区二区| 国产精品lululu在线观看| 少妇精品久久久一区二区三区| 久久精品国产一区二区小说| 在线视频一区二区三区不卡| 九九热在线视频| 日本在线欧美在线| 国产午夜小视频| 久久久久九九精品影院| 天天爽免费视频| 欧美国产日韩另类| 波多野结衣无码视频在线观看| 一级毛片在线免费视频| 欧美日韩专区| 波多野结衣中文字幕久久| 日本精品视频一区二区| 日韩无码视频播放| 亚洲综合久久成人AV| 国产激情无码一区二区APP| 国产无码制服丝袜| 国产综合精品一区二区| 精品国产一二三区| 婷婷综合色| 免费播放毛片| 国产成人综合亚洲网址| 亚欧美国产综合| 国产96在线 | 毛片三级在线观看| 女人一级毛片| 波多野结衣爽到高潮漏水大喷| 无码福利日韩神码福利片| 毛片视频网址| 国产精品网址你懂的| 精品在线免费播放| 国产幂在线无码精品| 欧美福利在线| 网友自拍视频精品区| 免费无码一区二区| 国产亚洲精品无码专| 欧美日本视频在线观看| 一本大道AV人久久综合| 毛片基地视频| 国产激情在线视频| 激情爆乳一区二区| 久久亚洲欧美综合| 国产在线精彩视频二区| 在线高清亚洲精品二区| 青青青亚洲精品国产| 亚洲成年人片| 国产一区二区精品高清在线观看| 麻豆精选在线| 国产美女人喷水在线观看| 国产免费怡红院视频| 欧美国产日产一区二区| 日韩福利视频导航| 日韩在线欧美在线| 亚瑟天堂久久一区二区影院| 91九色国产在线| av无码久久精品| 欧美激情伊人| 免费视频在线2021入口| 六月婷婷精品视频在线观看| 青青热久麻豆精品视频在线观看| 久久久成年黄色视频| 欧美亚洲国产一区| 青青草a国产免费观看| 天堂岛国av无码免费无禁网站 | V一区无码内射国产|