Decision making software for small and medium enterprises Jiří Mazurek School of Business Administration / Silesian University in Opava (Department of Mathematical Methods in Economics) Univerzitní náměstí 1934/3 733 40 Karviná Czech Republic
[email protected]
Abstract: Multiple criteria or group decision making plays a crucial role in business activities of every enterprise. The aim of this paper is to provide a review of decision making software developed at School of Business Administration in Karvina. OCRP Solver is a tool for group ordinal ranking solution written in Python. DAME is an alternative to Expert Choice, it is an Excel add-in for the analytic hierarchy process. Finally, Decision Adviser, also an Excel add-in, serves as an alternative to Super Decisions software, and it incorporates the analytic network process combined with a fuzzy approach. All three software tools are described and examples of solutions of given problems are provided as well. The software can be used as a support tool for small and medium enterprises, it is free of charge, easy to use and can be downloaded from University website. Keywords: decision making, multiple criteria decision making, small enterprises, software. JEL-codes: C61, C88. 1. Introduction In the recent decades a decision making became more and more complex, which resulted in an advancement of computer tools (software) helping decision makers in many areas of multiple criteria decision making and group decision making. Among the most known commercial products belong Expert Choice, the tool for the analytic hierarchy process (AHP), Super Decisions for the analytic network process (ANP), 1000Minds, DecideIt, modeFRONTIERS, VISA, Athena, IDS and many others, see for instance MCDM Society (2016). However, these products might not be suitable for small and medium sized enterprises (SME) for several reasons. Firstly, the products are rather expensive, and a user must pay for a set of modules even when he or she is interested only in one of them. Secondly, mastering of these products is usually time demanding, and especially small enterprises might find it difficult to assign one or more of their employees to this task. Therefore, the aim of this paper is to provide a review of decision making software developed at School of Business Administration in Karvina, which is free of charge and very simple for users to work with, so it might be considered a more appropriate tool for SME. OCRP Solver is a tool for group ordinal ranking solution written in Python. DAME is an alternative to Expert Choice, it is an Excel add-in for the analytic hierarchy process. Finally, Decision Adviser, also an Excel add-in, serves as an alternative to Super Decision software, and it incorporates the analytic network process combined with a fuzzy approach. Also, the use of the three aforementioned software tools is demonstrated on examples. The paper is organized as follows: sections 2, 3 and 4 provide description and illustrative examples for OCRP Solver, Decision Adviser and DAME respectively, and Conclusions close the article.
2. OCRP Solver 2.1. About the software The OCRP Solver is a command line tool written in Python, so it may run on any computer on which Python is installed, i.e., on computers running Windows, Linux, UNIX or Mac OS X operating systems. Currently the tool is able to compute a solution to an OCRP problem using four methods: Borda-Kendall’s method of marks (BAK), Maximize Agreement Heuristic (MAH), Consensus ranking model (CRM) and Distance-based ideal-seeking consensus ranking model (DCM). Description of these methods can be found in Tavana et al. (2007) or Mazurek (2010). The Solver is free of charge and can be downloaded from http://www.fit.vutbr.cz /~ifiedor/ocrpsolver/ The OCRP problem for the Solver is specified by providing a file containing the description of the problem. The description includes a set of alternatives to be ranked, the number of alternatives that decision makers (DMs) had actually ranked (if they had not ranked all the alternatives), and DMs’ preferences about alternatives in the form of rankings from the best to the worst. The file may contain a description of more than one OCRP problem. In that case, all of these problems will be solved. Another possibility is to let the Solver generate an OCRP problem itself using the Monte Carlo algorithm. This is useful when, e.g., testing new methods for solving the OCRP problem or comparing some properties of various methods. The number of problems which the tool should generate might be specified by a user. Besides the possibility of solving OCRP problems, the tool offers several other capabilities for analyzing the OCRP problems. One is the ability to evaluate the entropy of DMs’ preferences, thus providing information on uncertainty among DMs associated with comparison of alternatives, see Mazurek and Fiedor (2012), and Fiedor and Mazurek (2012). Also, the Solver enables to determine differences (or agreement) between methods’ solutions expressed by Kendall’s coefficient of concordance, see Fiedor and Mazurek (2011, 2012) and entropy of preferences, see Fiedor and Mazurek (2011). At least, but not last, the Solver enables running Monte Carlo of BAK, MAH, CRM and DCM methods. The Solver is an open tool in the sense that other methods for OCRP solution can be added to the Solver by a user himself. To add a new method, the user must create a new Python class derived from the OCRP Method class and implement the new method which computes the solution to an OCRP problem passed to it as an argument. The user may also define the class attribute ALIAS which holds the name identifying the method. This name can be used when specifying the methods which should compute the solution to an OCRP problem. If no alias is defined, the whole name of the class must be given in order to tell the tool to use it. When the method is implemented, the module (a Python file containing the created method’s class) has to be put to the methods subdirectory in the tools directory. The tool will automatically load all methods in this directory. 2.2. Illustrative example Let’s consider the following problem: a set of 8 decision makers (DM1 to DM8) decides about the most suitable location for a new supermarket. There are 6 potential locations (alternatives) denoted as A, B, C, D, E, and F. Each DM gives his ranking of all alternatives from the best to the worst (see Table 1). The goal is to find the overall ranking and the best alternative.
DM1 DM2 DM3 DM4 DM5 DM6 DM7
Table 1: Rankings of all alternatives by all DMs 1. 2. 3. 4. 5. A C F E D C A E F B C E A F B E A C D F C F A D B E F A B D A E C F D
6. B D D B E C B
DM8
F
A
C B Source: author.
E
D
To solve the problem with the OCRP Solver, a user provides a file containing the description of the problem: list of alternatives, the number of alternatives ranked, and all DMs’ preferences in the form of rankings, see Figure 1. Figure 1. Input of the problem alternatives A, B, C, D, E, F decisions 6 rankings A, C, F, E, D, B C, A, E, F, B, D C, E, A, F, B, D E, A, C, D, F, B C, F, A, D, B, E E, F, A, B, D, C A, E, C, F, D, B F, A, C, B, E, D Source: author. For the selection of methods, a user runs the following command: python ocrpsolver.py -m bak,mah,crm,dcm -f example.ocrp The -m argument specifies a comma-separated list of methods used to solve an OCRP problem and the -f argument is used to specify the file containing the description of the problem. The solution of the OCRP problem by the Solver is shown in Figure 2. Figure 2: Solutions to the problem by the Solver bak: [A, C, E, F, B, D], [A, C, E, F, D, B] mah: [A, C, E, F, B, D], [A, C, E, F, D, B] crm: [C, A, E, F, B, D], [A, C, E, F, D, B], [A, C, F, E, D, B] dcm: [A, C, E, F, B, D], [A, C, E, F, D, B] Source: author. As can be seen, all methods produced more than one solution. The alternative A was selected as the best alternative by all four methods, while the alternative C was chosen as the best only by CRM. In this example, solutions of BAK, MAH and DCM methods were identical. 3. Decision Adviser 3.1. About the software Decision Adviser (DA) is a software modification of the analytic network process, where interdependence between criteria is modeled via fuzzy cognitive maps (instead of creating the so called supermatrix in original ANP). The method is described in Mazurek and Kiszová (2012), while the detailed description of Decision Adviser can be found in Mazurek et al. (2013). Decision Adviser is a Microsoft Excel Add-in and it works with all current versions of Microsoft Excel from version 97. It can be downloaded from http://www.opf.slu.cz/kmme/da/, and it consists of four individual files: •
DA.xla – main module with user interface written in Visual Basic for Applications,
•
DA.dll – it contains special functions used by the application, it is written in C#,
• DA.xll – it contains library for linking C# modules with Excel called Excel-DNA (http://exceldna.codeplex.com),
•
DA.dna – configuration file for Excel-DNA module.
All four files must be placed in the same folder and macros must be permitted before running the module (see Excel documentation for details). DA itself can be executed by double clicking on the file DA.xla. After executing the add-in there will appear a new menu item “DA” in the Add-ins ribbon (in older Excel versions the menu item “DA” will appear in the top level menu). 3.2. Illustrative example A new decision problem can be generated by clicking on “New problem” item in the main DA menu, see Figure 3. Figure 3: New problem menu
Source: author. Then there will be shown a form with main problem characteristics, see Figure 4. Figure 4: New problem characteristics
Source: author. The form includes the following basic settings: the number of criteria and the number of variants (alternatives). When the form is submitted, a new sheet is generated. First, the names of criteria and variants are set, see Figure 5. Figure 5: Names of criteria and variants
Source: author. The next step is a comparison of individual criteria using pairwise comparisons matrix with elements saying how much more important is a criterion in a given row than a criterion in a given column. In the pairwise comparison matrix users enter only values above the main diagonal. The values in the lower triangle are reciprocal and automatically calculated. In the very right column weights of individual criteria w are provided, see Figure 6.
Figure 6: Criteria comparison.
Source: author. In the following step, a dependency among individual criteria is evaluated via a pairwise comparisons matrix. In the very right column vector of corresponding weights m is provided, see Figure 7. Figure 7: Criteria dependency
Source: author.
The final step is the evaluation of variants with respect to individual criteria, see Figure 8.
Figure 8: Evaluation of variants
Source: author. In the top right matrix weights of all variants (rows) with respect to individual criteria (columns) are provided. At this stage synthesis is automatically performed and the final weights of variants are shown in Figure 9. A comparison with AHP/ANP can be performed via ExpertChoice/SuperDecisions or another free Microsoft Excel add-in presented in Perzina and Ramik (2012). Figure 9: The final weights of variants (alternatives)
Source: author.
4. DAME 4.1. About the software Decision analysis module for Excel (DAME) is a Microsoft Excel add-in for the AHP method and it works with all current versions of Microsoft Excel from version 97. DAME runs both in Czech and English. It is free of charge and it can be downloaded from http://www.opf.slu.cz/kmme/DAME/en.html. After installation of DAME, Excel spreadsheets appear. In the first step, a user specifies a scenario, a number of alternatives and number of criteria, and whether multiplicative or additive AHP is going to be used. Next, a used specifies a method for obtaining criteria and alternative weights: the eigenvalue method or the geometric mean method. Then, pairwise comparisons of alternatives and criteria take place, and the last table shows the final weights of all alternatives with regard to a goal. The more detailed use of the software is described for example in Perzina and Ramík (2012). Also, a fuzzy extension of DAME was developed, see Perzina and Ramík (2016).
4.2. Illustrative example Let’s consider an AHP problem with 4 alternatives (variants) and 3 criteria. Figure 10 shows pairwise comparisons of all alternatives with regard to all criteria, with corresponding weights provided in the table on right-hand side. The weights were obtained by the geometric mean method. The last table at the bottom (the green one) provides weights of all alternatives with regard to a goal. Figure 10: DAME: pairwise comparisons.
Source: author. Conclusions The aim of this paper was to introduce three software tools for multiple criteria or group decision making developed at School of Business Administration in Karviná, which can be used by small and medium enterprises. The main advantages of presented software include free of charge downloading, their simplicity and friendly user environment. In the future, the software is going to be extended towards uncertainty by incorporating interval or fuzzy numbers. Acknowledgments This paper was supported by the Ministry of Education, Youth and Sports Czech Republic within the Institutional Support for Long-term Development of a Research Organization in 2017.
References FIEDOR, J. MAZUREK, J. (2011). The Evaluation of the Entropy of Decision Makers' Preferences in Ordinal Consensus Ranking Problem. In: Proceedings of the 29th International Conference on Mathematical Methods in Economics. Praha, Professional Publishing, pp. 157-162.
FIEDOR, J. MAZUREK, J. (2012). Optimizing permutation methods for the ordinal ranking problem. In: Proceedings of the 30th international conference Mathematical methods in economics. OPF SU Karviná, pp. 160-165. MAZUREK, J. (2010). Group Decision Making in Ordinal Consensus Ranking Problem. In: Proceedings of the 28th International Conference on Mathematical methods in Economy, České Budějovice, pp. 429-434. MAZUREK, J., KISZOVÁ, Z. (2012). Modeling Dependence and Feedback in ANP with Fuzzy Cognitive Maps. In: Proceedings of the 30th International Conference Mathematical Methods in Economics. OPF SU, Karviná, pp. 558-563. MAZUREK, J., FIEDOR, J. (2012). The Decision Support Tool for the Ordinal Consensus Ranking Problem. In: Conference Proceedings of the International Scientific Conference ICT for Competitiveness. OPF SU Karviná, pp. 184-189. MAZUREK, J., PERZINA, R., KISZOVÁ, Z. (2013). The Evaluation of Weights of Interdependent Criteria With the Decision Adviser: an Alternative Approach to the Analytic Network Process. WERProcedia Information, Technology and Computer Science, vol. 3, pp. 1319-1329. MCDM Society. (2016). http://www.mcdmsociety.org/soft.html. PERZINA, R., RAMÍK, J. (2012). DAME - Microsoft Excel Add-in for Solving Multicriteria Decision Problems with Scenarios. In: Proceedings of the 30th International Conference Mathematical Methods in Economics. OPF SU, Karvina, pp. 697-702. PERZINA, R., RAMÍK, J. (2016). Fuzzy Decision Analysis Module for Excel. In: Conference Proceedings of 34th International Conference Mathematical Methods in Economics. Liberec: Technical University, pp. 663-668. TAVANA, M., LOPINTO, F., SMITHER, J. W. (2007). A Hybrid Distance-Based Ideal-Seeking Consensus Ranking Model. Journal of Applied Mathematics and Decision Sciences, 18 pages.