没有合适的资源?快使用搜索试试~ 我知道了~
PyOPAsolver:基于Python的顺序优先级方法工具
软件X 20(2022)101226原始软件出版物PyOPAsolver:一个基于Python的工具,用于顺序优先级方法操作和规范化Abdesadik Bendaraga, Jamal Bakkasb,Mohamed Haninec,Omar Boutkhoumd一辆L.M.C.实验室,萨菲多学科学院- UCAM,萨菲,摩洛哥b摩洛哥萨菲UCAM技术 研究生院LAPSSII实验 室c 摩 洛 哥 贾 迪 达 Ch ou a ib Do u kkali 大 学EN SALTI实验室d摩洛哥El Jadida Chouaib Doukkali大学理学院LAROSRI实验室ar t i cl e i nf o文章历史记录:接收2六月2022收到修订版2022年9月16日接受2022年关键词:OPAMCDMPyOPASolverPythona b st ra ct序优先法是一种新的决策方法,它根据一个或多个专家的经验,根据一组属性在一组方案中确定最佳方案。OPA经常被用于各种研究,如项目组合选择,可持续供应商选择,供应商的绩效评估和可持续建设,以及其他多准则决策问题(MCDM)。尽管这种MCDM技术很有用,但没有免费的开源软件用于OPA并具有完整的分析扩展。因此,本文演示了一个基于Python的工具PyOPAsolver,允许研究人员使用BSD-3-Clause许可证对OPA方法进行操作。这个工具主要被设计成一个包,集成到使用OPA方法的Python程序中。其方法的多样性和丰富性为开发人员提供了非常灵活的开发。©2022作者(S)。由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)中找到。代码元数据当前代码版本v0.1用于此代码版本的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-22-00144Code Ocean compute capsule法律代码许可证BSD-3条款使用的代码版本控制系统无软件代码语言、工具和服务使用Python3,编译要求,操作环境依赖性tkinter,random,ctypes,matplotlib,pulp,pyplot如果可用开发人员文档/手册链接N/A问题支持电子邮件a. uca.ac.ma软件元数据当前软件版本v01此版本可执行文件的永久链接https://github.com/abendarag/-ElsevierSoftwareX-/tree/main法律软件许可证BSD-3条款计算平台/操作系统Linux,Microsoft Windows,iOS安装要求依赖项tkinter,random,ctypes,matplotlib,pulp,pyplot如果可用,请链接到用户手册-如果正式出版,请在参考列表中引用该出版物N/A问题支持电子邮件a. uca.ac.ma1. 动机和意义*通讯作者。电子邮件地址:a. uca.ac.ma(Abdesadik Bendarag)。https://doi.org/10.1016/j.softx.2022.101226最著名的决策学科之一是多标准决策(MCDM)[1]。本主题涉及创建计算和数学2352-7110/©2022作者。 由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softxAbdesadik Bendarag,Jamal Bakkas,Mohamed Hanine等软件X 20(2022)1012262ijkijkijkijkIJ根据建议的标准对给定的备选方案进行主观评价的方法[2]。备选方案是供决策者考虑的许多选项,这些选项经过优先级排序和评估。目前已提出了几种用于方案排序的MCDM技术,包括ANP、PROMETHEE、AHP、ISM、VIKOR、TOPSIS、TODIM和OPA [3,4]。这些方法被用于各个领域,例如商业分析[5],电力和能源系统[6],分析和评估影响区块链在可持续供应链管理中实施的障碍[7],发展中国家的智慧城市发展评估[8]和地理空间商业智能选择[9]。提出了不同的软件/工具来实现各种MCDM方法。附录B中的表B.1提供了MCDM技术可用软件的全面列表[10在提出的技术中,普通优先级方法(OPA)用于各种研究领域[13,14]。OPA根据许多标准和许多专家的参与选择最佳替代方案[15]。OPA方法由Ataei、Mahmoudi、Feylizadeh、Li在2019年[16]开发,基于Asghar- pour [17]在2003年提出的方法,并已用于MCDM情况,包括施工分包商的绩效评估[15]、Megapro中的可持续供应商选择[18]、项目组合选择[13,19]和评估医疗中心的供应商[14]。OPA比其他方法更受欢迎,因为(i)它适用于大量的标准和替代方案;(ii)如果问题被公式化为– 一:专家索引– j:属性– k:备选方案索引– Z:目标函数– Wr:第i个专家在等级r处基于第j个属性j的备选方案k– Wi:专家i的权重– Wj:属性j的权重– Wk:备选方案k算法1:伪码格式1. 输入:(a) 具有专家偏好(b) 具有标准偏好(c) 对于每个专家Ei,读作姓名和级别(d) 对于每个标准Cj,读取名称(e) 对于每个备选方案Ak,读作名称2. 属性排名:对于每个专家,根据他的偏好的顺序对属性进行排序,其中可以忽略标准和/或对两个或更多个给予相同的排名:C r其中r是第j个标准的排名对于第i个专家。3. 对备选方案进行排序:对于每个专家和每个标准,根据以下顺序对备选方案进行排序:数学模型;(iii)其逻辑和可编程行为;(iv) 其承担一组决策者的能力;以及专家偏好:Ar,其中r是第k个(v) 没有两两比较的替代品排序。尽管OPA在各个领域都有广泛的应用,但作者根据第i个专家的第j个4. 模型的制备和解析不知道有任何基于Python的免费开源软件可以实现这种新颖的方法 , 特 别 是 具 有 彻 底 的 分 析 后 扩 展 。 因 此 , 本 文 描 述 了PyOPAsolver,ide(jdc(rda(Wr-Wr+1)Z(1)一个基于Python-3的OPA工具,在Microsoft Windowspn m和Linux,并根据伯克利软件分销许可简单的图形用户界面,用OPA方法解决复杂的MCDM问题。在文献中,已经提出了两个软件包用于使用OPA解决MCDM问题,例如基于Web的OPASolver [20]和基于Excel的OPASolver[21]。第一个是基于Web的MCDM∑Wijk=1(2)我JK其中Z是目标函数,de、dc、da分别是专家、准则和备选方案的偏好度。5. 找出备选方案、标准和专家的权重。模型,然而,(i)它缺乏后分析能力,(ii)它是un-nm能够支持的程度的偏好,和(iii)它是给定的Wi=∑ ∑Wijk(3)一个私有的,非开放访问代码许可证。第二个工具包j kOPA分析需要Microsoft Excel,无法解析p m由于Excel对约束数量的限制,显然,可用的工具在以下方面有限制:Wj=∑ ∑Wijk(4)决策矩阵和中的属性和备选方案是i k要么不开放获取,要么依赖于另一个营利性软件包比如微软Excel。 PyOPASolver旨在提供一个开源的Wk =∑ ∑Wijk(5)和自由软件替代OPA与一个重大的决定i j矩阵2.OPA方法描述OPA(Ordinary Priorities Approach)是一种基于专家经验的多属性决策方法。该方法包括:(i)确定专家和他们的优先级的基础上,他们的经验,(ii)由专家的属性排序,(iii)排序的每个专家的基础上,每个属性和子属性的替代品。它的主要目的是根据一组属性,由专家计算决策方案的数值权重。算法1使用以下指数和变量总结了该方法的主要步骤:6. 基于Wk值的3. 软件构架该工具由两个不同的类组成,OPASolver类和OPAWindow类 。 OPAWindow 类 是 工具 的图 形 界面 , 如图 所 示 。 1 , 而OPASolver是实现OPA方法的类。这种分离旨在提供两种类型的工具使用。直接使用,允许决策者通过其图形界面使用该工具。另一个用 途是允许使用 OPA 方法的工 具开发人员直 接集成tion(BSD)-3-Clause license.PyOPASolver的开发旨在提供Abdesadik Bendarag,Jamal Bakkas,Mohamed Hanine等软件X 20(2022)1012263OPASolver解析类Abdesadik Bendarag,Jamal Bakkas,Mohamed Hanine等软件X 20(2022)1012264==-==-==-==-而不使用图形界面。OPASolver考虑到一组特殊情况。因此,该工具处理专家决定忽略一个属性或对多个属性给予相同等级的情况此外,它允许修改专家,属性和替代品的默认偏好程度(默认情况下de=dc=da=1)。4. 软件功能4.1. OPAWindow如图所示。1、OPAWindow是PyOPASolver工具的图形界面它由四个模块组成,三个输入模块和一个输出模块。第一个输入框允许输入专家数量、属性、备选方案及其偏好程度。第二输入块根据第一输入块生成。它允许输入姓名或名称专家与他们的排名,属性名称和替代名称。第三输入块是根据前两个块生成的,并且由两个子块组成一个允许对每个专家的属性进行排序,另一个允许每个专家根据属性对备选方案输出块显示权重Wijk、目标函数Z Eqs。(1)、(2),专家权重WiEq.(3)、属性权重WjEq.(4)和替代权重WkEq.(五)、此外,该块有三个按钮,用于绘制专家、属性和备选权重的条形图,如图1和图2所示。 2、3和4。4.2. OPASolver这个类提供了OPA技术的一个完整而简洁的实现它包括一组属性和方法,涵盖了从获取开始的所有技术步骤从线性模型的创建和解析到结果的交付。此外,该类还提供了绘制各种图形的方法。附录A显示了类的主要方法。OPASolver方法可以分为四类:第一类包括输入获取方法。这些方法获取:(i)专家、属性和备选方案的偏好程度,(ii)专家的姓名及其等级,属性名称和备选名称,(iii)输入还包括每个专家的属性的等级以及每个专家的每个属性的备选方案的等级。第二类方法涉及输入的准备。实际上,在获取输入之后,OPA方法需要通过专家对属性进行排序的步骤和根据每个属性对每个专家的备选方案进行排序的对于这些步骤中的每一个,OPASolver都提供了一个特定的方法。线性数学模型Eqs.(1)、(2)由第三类方法保证,主要的方法是solve()方法。由该方法提供的结果是权重Wijk、目标函数Z、专家权重Wi、属性权重Wj和备选权重Wk。根据这些权重对属性尤其是备选方案进行分类。最后一类是专门提供不同形式结果的方法,包括图形形式。OPASolver类主要设计为一个包,用于集成到使用OPA方法的Python程序中。其方法的多样性和丰富性为开发人员提供了非常灵活的开发。表1每个专家的属性排名。专家PSFY213X112Z321表2根据每个专家的属性对备选方案进行排序专家属性一BCS132YP321F231S132XP321F312S123ZP231F3215. 说明性示例为了说明PyOPASolver的使用,我们使用[16]中的第二个例子。这个例子的目的是做出一个客观的决定,对三辆车A、B和C进行排名。C.决策者X、Y和Z是参与评估的具有不同经验水平的专家。他们必须根据三个属性选择汽车,即价格(P),安全性(S)和油耗(F)。专家根据其意见的重要性的排名1)、X(等级2)和Z(秩3)。每个专家都提供了他喜欢的属性排名。表1显示了专家对属性的排序,表2显示了每个专家根据其偏好对每个属性的备选方案的排序。在这个例子中,我们考虑专家、属性和备选方案对默认值的偏好程度等于1。一旦完成了本例的所有输入,如图所示。1,该工具计算权重Wijk,其用于计算专家的权重WiEq. (3)、属性的权重WjEq.(4)和备选项的权重WkEq. (五)、基于这些权重的属性和方案进行分类。工具的最后一个块表示结果。因此,获得的结果如下:专家的重要程度,通过与该专家相关的权重之 我们得到以下值:Wx 0。338346,Wy 0. 496241,Wz 0. 165414. 的按钮“Plot expert Weights graphs”允许绘制图的图形。 2一个属性的重要程度,由与该属性相关的权重之和得到。我们得到以下值:WS0。451128,Wy0. 300752,Wz 0.24812. 按钮“Plot criteria Weights graphs”允许绘制图的图形。3 .第三章。一个备选方案的重要程度,由与该备选方案相关的权重之和获得。因此,我们得到以下值:WA0。356725,WB0. 212615,WC 0。43066.按钮“Plot alternative Weights graphs”允许绘制图的图形。 四、6. 影响PyOPAsolver已被用于解决多标准决策问题,以选择[22]中提出的适当软件开发。这种方法基于许多标准选择最好的软件开发来优化其管理Abdesadik Bendarag,Jamal Bakkas,Mohamed Hanine等软件X 20(2022)1012265Fig. 1. PyOPASolver的图形界面图二. Wi:专家权重。以 及 由 参 与 该 过 程 的 所 有 级 别 的 专 家 指 定 的 子 标 准 。PyOPAsolver计算备选方案软件的分类及其反演概率。此外,它还提供了多个模拟中的方案、准则和专家的平均值和权重,这对决策者来说是一个PyOPAsolver是第一个基于Python的工具,专门用于MCDM的OPA(顺序优先级方法)方法它的优点是有两种不同类型的用途:它图三. W j:属性的权重。由于易于理解的图形界面允许输入方法的所有参数并以数字和图形形式提供结果,因此来自不同领域的用户可以使用该工具来根据属性和专家意见对备选方案做出决策。第二个用途为研究人员和Python开发人员提供了通过导入OPASolver包将OPA求解器集成到他们的项目中的可能性这个软件包提供了一组用于输入获取、问题解决和结果输出因为它有一个非常人性化的Abdesadik Bendarag,Jamal Bakkas,Mohamed Hanine等软件X 20(2022)1012266见图4。 Wk:备选方案的权重。图形界面,PyOPASolver也可以在BSD许可证下的教育机构中使用,作为操作研究课程中的MCDM问题。此外,这个拟议的软件可能会引起决策者的兴趣,他们使用具有许多替代方案和标准的真实大数据集。7. 结论目前的研究提出了基于Python的工具PyOPA-Solver,用于一种名为OPA的新MCDM方法该工具可以直接由最终用户使用,通过其图形组件OPAWindow解决与多标准决策相关的不同问题,也可以由希望通过集成OPASolver包将OPA求解器集成到其工具中的Python开发人员使用PyOPASolver考虑了所有特殊情况,例如专家决定不考虑某个属性或对多个属性给予该工具的大多数功能都通过数值示例进行了说明,文档在附录A中作为补充材料提供。所建议的工具具有足够的适应性,无需修改即可适用于其他应用程序,并在评估中包括几个标准作者预计,这一工具将有助于学者和从业人员选择和评估广泛的替代品使用的标准,将改善决策支持环境,在他们的工作系统。此外,PyOPASolver工具也被证明是一个强大的决策支持解决方案,在检查各种多标准问题时。在未来的研究方向中,PyOPASolver用户提供的不同反馈将在改进最终版本时得到考虑。 此外, MCDM的几种方法,如TODIM,ANP和AHP可以集成在这个工具中,并可以探索结果的比较。也许,数值成对比较的OPA方法似乎不足以正确地呈现决策者的判断,这是一个严重的缺点。关于这个项目,PyOPA-Solver工具将集成模糊环境。竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作数据可用性文章中描述的研究未使用任何数据确认作者要感谢总编辑和匿名审稿人提供了令人难以置信的有见地的意见,有助于提高本文的质量附录A. OPASolver的主要方法本附录提供了一个简短的文档OPA-求解器包。这个包包含一个主类OPASolver,它有超过32个方法。我们在本附录中引用了主要的。addExpert(name,rank):允许通过提供专家的姓名和等级来添加专家。addCriteria(name):允许添加属性addAlernative(name):允许添加替代项getExperts():以字典列表的形式返回专家列表。示例:‘‘Dupond’’,‘‘rank’’:2,‘‘weight’’:0.234, . . ]的一种getCriterias():允许你获取属性列表作为字典列表。示例:‘‘name’’:‘‘power’’,‘‘rank’’:2,‘‘weight’’:0.121, . . ]的一种getAlternatives():允许以字典列表的形式获取备选项列表。示例:='' name '':'' Fiat '','' rank '':2,'' weight '':0.215,. . . ]setPreferenceDegreeExpert(d=1):改变专家的偏好程度(默认为1)setPreferenceDegreeCriteria(d=1):改变属性的偏好程度(默认为1)setPreferenceDegreeAlternative(d=1):改变备选项的偏好程度(默认为1)getPreferenceDegreeExpert():返回专家的偏好程度getPreferenceDegreeCriteria():返回属性getPreferenceDegreeAlternative():返回备选方案expertRank(name):返回参数中传递的专家等级solve():该方法通过计算Wijk来setCriteriaRanks():根据属性的权重计算属性的等级。setAlternativeRanks():根据备选方案的权重计算备选方案的排名。getExpertsWeights():以字典getCriteriasWeights():以字典getAlternativesWeights():以字典列表的形式返回备选项的权重drawExpertWeights():绘制专家权重的条形图drawCriteriasWeights():绘制属性权重的条形图drawAlternativesWeights():绘制备选权重的条形图drawWeights():绘制传入参数的权重的条形图附录B见表B.1。Abdesadik Bendarag,Jamal Bakkas,Mohamed Hanine等软件X 20(2022)1012267表B.1MCDM可用软件的简要列表系统/软件免费开放获取MCDM方法Criterium Decision PlusYN智能层次分析法决策实验室YN普罗米修斯-盖亚专家选择NNAHPHIPREYNMAVT-AHP决策表YYELECTREE方法JSMAAYYSMAA-2-SMAA-TRI(MAVT-ELECTRE-TRI)DecernsMCDANNAHP-MAVT-MAUT-PROMETHEE-FlowSort-TOPSIS-ProMAA-FMAA-F-MAVTHiView 3YNMAVT-MAVF-麦克白逻辑决策Y(从v8.02021)NMAVT-MAVF-AHP麦克白NN麦克白MakeltRationalYNAHPOnBalanceYNMAVT-MAVF明智的决定NNMAVT-MAVFVISA 决定NNMAUT-MAVT超级决策YNANPRightChoiceYNMAUT视觉PROMETHEEY(限于10个备选方案)NPROMETHEEElectre III-IV软件YNELECTRE III-IVDEA软件YYDEA超级决策YNAHP-ANP皮托普斯YYTOPSIS引用[1] 三角叶多准则决策方法。多标准决策方法:比较研究。Springer; 2000,p. 5-21[2] ZavadskasEK,TurskisZ,KildienestecS. MCDM/MADM方法概述的最新调查。Technol Econ Dev Econ 2014;20(1):165[3] 放大图片作者:J.多准则决策分析。第37卷。Springer;2016.[4] Mardani A,Jusoh A,Nor K,Khalifah Z,Zakwan N,Valipour A.多重多 准 则 决 策 技 术 及 其 应 用 --2000 - 2014 年 文 献 综 述 。 Econ Res EkonIstraživanja2015;28(1):516-71.[5] Yalcin AS,Kilic HS,Delen D.多标准决策方法在商业分析中的应用:综合文献综述。TechnolForecast Soc Change2022;174:121193.[6] Bohra SS,Anvari-Moghovic A.多目标决策方法在电力能源系统中的应用综述。Int J Energy Res2022;46(4):4088-118.[7] Boutkhoum O,Hanine M,Nabil M,El Barakaz F,Lee E,Ruidon F等,摩洛哥可持续供应链管理中影响区块链实施的障碍的分析和评估:综合IFAHP-DEMATEL框架。数学2021;9(14):1601。http://dx.doi.org/10的网站。3390/math9141601。[8] Hanine M,Boutkhoum O,El Barakaz F,Lachgar M,Assad N,RuhanF等人,发展中国家智能城市发展评估的直觉模糊方法:摩洛哥背景。数学2021;9(21):2668. http://dx.doi.org/10.3390/math9212668网站。[9] HanineM,Boutkhoum O,Aghout T,Tikniouine A. 一种新的集成方法,使用改进的德尔菲模糊层次分析法,地理空间商业智能选择。Inform Syst E-BusManag2017;15(4):897-925.[10] 国 际 多 准 则 决 策 学 会 。 与 MCDM 相 关 的 软 件 / 工 具 。 2022 年 , 在 线https://www.mcdmsociety.org/content/software-related-mcdm-0/。[2022年9月10日[11]Hanine M,Boutkhoum O,Tikniouine A,Aghoun T.一种新的基于网络的模糊多准则群决策框架开发。 SpringerPlus 2016;5(1):1-18.[12]Yadav V,Karmakar S,Kalbar PP,Dikshit AK. PyTOPS:基于Python的TOPSIS工具。SoftwareX2019;9:217-22.[13]Mahmoudi A,Abbasi M,Deng X.一种新的项目组合选择框架--面向组织复原力的工作:鲁棒顺序优先方法。专家系统应用2022;188:116067。[14][10]杨文,李文,李文. 大规模群体决策(LSGDM)的医疗建设项目绩效评估:顺序优先方法。Appl Intell 2022;1[15]Mahmoudi A,Javed SA.应用序贯优先法评估建筑分包商之绩效。评估程序计划2022;91:102022。[16]李 德 飞 , 李 德 飞 , 李 德 飞 .多 属 性 决 策 中 的 序 优 先 法 。 Appl SoftComput2020;86:105893.[17]Asgharpour MJ.运筹学中的群决策与博弈论。德黑兰出版物;2003年。[18]Mahmoudi A,Deng X,Javed SA,Zhang N.大型工程可持续供应商选择:灰色序贯优先法。巴士战略环境2021;30(1):318-39。[19]Mahmoudi A,Abbasi M,Deng X.稳健的项目组合选择,以提高组织复原力:后COVID视角。专家系统应用2021;116067.[20]OPAsolver1.2 版 : 多 标 准 决 策 分 析 软 件 。 2022 年 , 在 线https://ordinalpriorityapproach.com/opasolver.html。[2022年9月[21] 马 哈 茂 迪 OPA 求 解 器 : 多 属 性 决 策 问 题 的 求 解 器 Zenodo; 2021 年 ,http://dx.doi.org/10.5281/zenodo.4453887。[22]Bendarag A,Hanine M,Bakkas J.使用OPA技术选择适当软件开发的多标准决策方法。2022年(出版)。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功