A Web-Based Approach for Visualizing Interactive Decision Maps

: This research expands the applicability of the Feasible Goals (FGoal) Pareto frontier multiple criteria method to display the Edgeworth–Pareto hull using interactive decision maps (IDMs). Emphasis is placed upon the development of a communication architecture to display the Pareto frontiers, which includes a client device, a web server, and a dedicated computation server implemented with sockets. A standalone application on the latter processes client-server requests and responses to display updated information on the client. Speciﬁcally, the dedicated computation server is responsible for calculating the information needed to generate the Edgeworth–Pareto hull. This is delivered to the web server to generate the IDM to be displayed on the client device. The key innovation of this work is a tool that is developed to aid decision-makers with a network-based computational architecture that includes a computational server constantly in communication with a web server for fast responses to client requests to represent IDMs. Results show that this innovation avoids time-consuming communication, and this approach to represent IDMs on the web facilitates collaboration among decision-makers because they can analyze several complex problems in different browser windows and decide which problem and solution better correspond to their aims.


Introduction
Considerable advances in the evolution of interactive decision maps (IDMs) have occurred-beginning at the end of the 20th Century and extending to the present time-due to improvements in the processing speed of personal computers and devices and, at same time, the increasing need to visualize tradeoffs on Pareto frontiers to aid decision-makers with multicriteria decision analysis [1]. Forest science, and environmental sciences more generally, are important contexts that can benefit from decision-making, using IDMs to support planning and multicriteria optimization, because decision-makers in natural resource management typically have to deal with multiple tradeoffs in their multicriteria optimization problems, including, for example, many possible combinations of ecosystem services and products. These tools target the increase in the efficiency and the effectiveness of forest management decision support system (DSS) tools and address the trends identified by Reynolds et al. [2] and Borges et al. [3]-namely, the need to consider multiple decision criteria and, at the same time, to be capable of responding to multiple stakeholders with conflicting interests [4]. Currently, stakeholders tend to have a more active role in the participatory process. Therefore, contemporary DSS development tends to be linked to stakeholder involvement [5][6][7][8][9]. Web-based decision tools have been developed in order to help stakeholders and researchers in their decision tasks, making remote access to advanced decision methods and techniques possible [10]. The forestry literature reports several examples of DSSs to address multicriteria analysis and the management of ecosystem services [2,3,[11][12][13][14][15][16][17]. Nevertheless, few are dedicated to the development and visualization of Pareto frontiers to support further collaborative management planning processes targeting the supply of several ecosystem services.
Some examples of multicriteria optimization problems involving tradeoff analysis include [18][19][20] and more recent studies carried out at the School of Agriculture (University of Lisbon) in collaboration with the University of Évora [7,8,[21][22][23]. In the latter studies, the IDMs were either encapsulated in decision support systems as standalone packages or desktop application tools or used as application tools for building and showing Pareto frontiers on devices such as laptops and smart phones. Other web-based Pareto frontier decision tools related to forest and environmental sciences have been built, although using other methodologies, as in the work of Tóth et al. [4]: ECOSEL: an auction mechanism for forest ecosystem services.
All the web-based applications of IDMs mentioned above can be classified into two types of system architectures. On the one hand, there are systems that encapsulate a stand-alone tool developed in C++ in PHP code to communicate with the client computer, responding to its requests for calculations, to develop the visualization of Pareto frontiers for a client. On the other hand, there are systems in which a Java applet on the server computer performs all needed calculations and visualizations to be shown in the client by means of XHTML pages. Both types of applications are examples of web applications that implement remote rendering. Nevertheless, these systems are built on an architecture distributed over one or two machines. The main objective of this work is to show the possibility of communication between the client and PHP server to receive and respond to the requests of a client server. The PHP server is responsible for communicating with a dedicated computation server to generate the vertices and constraints of the Edgeworth-Pareto hull. This communication is performed using sockets [24] among the web server and computation server with a common free port and the computation server's Internet Protocol (IP) address. After the Edgeworth-Pareto hull is built, the web-based graphical user interface (wgui) with IDMs is displayed on the client computer and updated according to the communications (sequences of requests and responses between the three computers). This is an innovation of the former architectures for building IDMs in forest management as it distributes calculations over three computers in the network, one of which is dedicated to generating the Edgeworth-Pareto hull.
The decision tool architecture of this research is thus motivated by the need to efficiently and effectively address collaborative management planning processes targeting the provision of several ecosystem services. By combining a client, a PHP server, and a computational server, it becomes very feasible to build IDM representations of problems with numerous constraints and decision variables for the client in close to real time. Moreover, it takes advantage of the network to perform the calculations and representation of IDMs instead of having an application running standalone on a personal computer. For collaborative decision-making in forest management, this architecture offers significant advantages to stakeholders as the tool is free and does not require the purchase of expensive hardware or software. The computation server is a particularly important element of the architecture because it enables solutions to very large IDM problems in close to real time in situations such as workshop settings.
This work aims to present: (a) an approach to develop web-based decision maps that allows decision-makers to develop their tradeoff analyses (how much they are able to sacrifice one objective to improve other objectives) more easily and promoting collaboration among decision-makers who have formulated their decision problem as a linear programming problem; (b) a computational architecture capable of dealing with complex linear programs with a great number of decision variables and constraints by running the iterative algorithm for generating IDMs, displaying the Pareto frontiers and the solution chosen by decision-makers in a short period of time; (c) a flexible decision tool that can be used to analyze several concurrent problems at the same time in different Google Chrome (for which it is optimized) windows, providing the decision-makers with a good number of tools to make an informed decision concerning their main objectives.
The structure of this work encompasses: the Introduction that characterizes the stateof-the-art technology and provides the motivation for this research; the Materials and Methods, which include subsections to describe the optimization and visualization processes (Optimization and Visualization of Interactive Decision Maps) and to present implementations of these processes (Implementations); the Results section presents some outcomes of the use of the decision tool and includes a subsection with a forest management application; the Discussion section is dedicated to the discussion of our work; the Conclusion makes some final remarks about our decision tool.

Optimization and Visualization of Interactive Decision Maps
The methods of multicriteria linear programming can be classified according to the degree of decision-maker intervention [25][26][27]. According to these classifications, the multicriteria methods can be divided into three types: (i) the decision-maker chooses their preferences a priori; (ii) the decision-maker chooses their preferences in a previous dialogue phase and there is a sequence of computation phases and dialogue phases during the decision process in order to calculate new efficient solutions; (iii) the decision-maker takes their a posteriori decisions, before the set of proposed solutions is generated, from which the decision-maker will make their choice. The Pareto frontiers method shown in our IDMs falls into the third type.
To display the solution space for more than one criterion, a two-or three-dimensional graph needs to be use. The types of graph visualization include: (a) the representation of a set of efficient solutions in two or three dimensions as proposed by Tóth et al. [10]; (b) the representation of solutions for two to three criteria in a triangle as proposed by Climaco and Antunes [28]; (c) a Pareto frontier representation using IDMs, with the third criterion represented by colored sliders, each one with a different value associated to the third criterion. In the remainder of this paper, we focus on the representation of IDMs for a bicriterion Pareto frontier, which was first developed by Gass and Saaty [29] using standard parametric linear programming.
The representation using standard parametric linear programming is not an easy task if there are more than two criteria to be shown. Zeleny [30] and Steuer [27] demonstrate how linear multicriteria methods, based on the idea of Gass and Saaty [29], can be used to construct the list of all nondominated vertices. However, sometimes the vertices are not located regularly on the Pareto frontier, in which case they may fail to accurately represent the Pareto frontier. As a result, the nondominated faces are provided as well, and they are an analogue to the line segments for bicriterion Pareto frontiers. Although the access to all multidimensional information such as faces and vertices are relevant for representing the multidimensional convex hull, sometimes it is hard to formulate a decision from a very complex visualization. Then, decision maps are very useful in order to simplify the visualization and analyze such information, as we describe below.
For three criteria, we can efficiently construct a bicriteria tradeoff curve by fixing the third criterion within a range of values. However, for four or more criteria, and with hundreds or thousands of decision variables, it can take a lot of computational time to construct a decision map. Therefore, for the latter higher dimensional problems, some preprocessing work is needed to speed up the computations needed to generate the decision maps. A useful preprocessing algorithm developed by Lotov et al. [20] is based on approximating the Edgeworth-Pareto hull (EPH) for all chosen criteria (see reference [20] for additional details).
The set X (feasible solutions set) is mathematically defined for the linear case by the following expression: The EPH is the non-negative convex set in the space R m (m ≥ 2), delimited by the nondominated frontier, which is composed by the set of weakly nondominated criteria points and straight-line segments that connect these points. A point z ∈ Z is considered a weakly nondominated point when there is not another feasible point which satisfies z i z i (i = 1, . . . , m), ∨z ∈ Z ∧ z = z . We assumed the linearity of the system of inequalities due to the given matrix H and given vector h. Setting f (x) = Fx, where F is a given matrix, the EPH we want to find is [20]: where Q * is the multidimensional set of feasible solutions on the decision space. The matrix D * and the vector d * need to be found. Given x ∈ X, all feasible values for decision variables, and z ∈ Z, all feasible values for the criteria, we can define the graph Thus, all we need is to construct the projection of Y * onto R m , the set Z * . This set can be found using convolution methods. The process is described in reference [20] (pp. 201-202). Figure 1a-e illustrates the process used for visualizing and generating Pareto frontiers with two or three criteria. The convex hull of the decision variables X (Figure 1a) was transformed into the criteria's convex hull Z (Figure 1b) by matrix F. Figure 1c shows in purple the set of nondominated solutions from set Z (supposing only one value for the third criterion, k), while Figure 1d extends this set to the axis and, finally, Figure 1e represents the frontiers for some values of the third criterion (k). In the case of four or five criteria, the graphical representation will be similar to (e), but with sliders on the bottom of the decision map for the user to choose the values to be fixed for the fourth and fifth criteria, and in this way change the representation of Pareto frontiers.
The optimization process in this decision tool lets the decision-maker interact with dynamic and web-based graphical decision interfaces (e.g., iterative decision maps). Based on the selected decision criteria, the decision-maker can analyze the results of the dynamic interactions that optimize his/her preferences. The concept of gamification [31] applies here to the conception and development of this decision tool, which focuses on graphical representation, dynamic interfaces, and real-time information.
The decision-maker can maximize or minimize criteria to be considered together in the multicriteria mathematical programming problem. The interface for generating the convex hull encompasses the criteria to be optimized, the maximum and the minimum values to be shown in the Pareto frontiers (or more correctly, Edgeworth-Pareto hull) and, finally, for generating the Edgeworth-Pareto hull set (an iterative process that is graphically represented). In the interface of the EPH, the decision-maker can visualize and interact with the graphical representation of tradeoff frontiers for the chosen set of concurrent criteria and choose the point on the frontier that satisfies his/her objectives.
To draw the EPH, the values of two criteria are considered, while the values for all other criteria are fixed. An algorithm, based on the Gift-Wrapping Algorithm for building Convex hulls [32], was implemented in PHP to sort the two-dimensional vertices of each slice of the EPH in the criteria space.
transformed into the criteria's convex hull (Figure 1b) by matrix . Figure 1c shows in purple the set of nondominated solutions from set (supposing only one value for the third criterion, k), while Figure 1d extends this set to the axis and, finally, Figure 1e represents the frontiers for some values of the third criterion (k). In the case of four or five criteria, the graphical representation will be similar to (e), but with sliders on the bottom of the decision map for the user to choose the values to be fixed for the fourth and fifth criteria, and in this way change the representation of Pareto frontiers. The optimization process in this decision tool lets the decision-maker interact with dynamic and web-based graphical decision interfaces (e.g., iterative decision maps). Based on the selected decision criteria, the decision-maker can analyze the results of the dynamic interactions that optimize his/her preferences. The concept of gamification [31] applies here to the conception and development of this decision tool, which focuses on graphical representation, dynamic interfaces, and real-time information.
The decision-maker can maximize or minimize criteria to be considered together in the multicriteria mathematical programming problem. The interface for generating the convex hull encompasses the criteria to be optimized, the maximum and the minimum values to be shown in the Pareto frontiers (or more correctly, Edgeworth-Pareto hull) and, finally, for generating the Edgeworth-Pareto hull set (an iterative process that is graphically represented). In the interface of the EPH, the decision-maker can visualize and interact with the graphical representation of tradeoff frontiers for the chosen set of concurrent criteria and choose the point on the frontier that satisfies his/her objectives.
To draw the EPH, the values of two criteria are considered, while the values for all other criteria are fixed. An algorithm, based on the Gift-Wrapping Algorithm for building Convex hulls [32], was implemented in PHP to sort the two-dimensional vertices of each Although the process of acquiring a solution based on the graphical representation of the EPH is conceptually quite simple, the computational process is complex. The decisionmaker identifies a feasible goal directly on the IDM, first selecting a point on the map that maximizes his/her preferences. Before choosing that point, all criteria except two are fixed. The two criteria (û,v) are fixed when they click on the map and the goal vectorẑ = (û, v,ŵ) is identified (ŵ is the vector of other criteria that the user can change by moving the sliders among the minimum and maximum values). The multicriteria optimization of the point chosen by the decision-maker is obtained as the solution of the following problem, where X is the set of feasible solutions of the original problem, the goalẑ is the reference point ( [33]), ε i represents small positive numbers, and m is the number of criteria Information 2021, 12, 9 6 of 16 considered. So, without loss of generality, we can define this problem as the following optimization problem: solutions [34]. The results (e.g., a strategic plan for forest management purposes) are shown in a CPLEX XML format or simply in a CSV flat file representing all basic variables of the last optimization interaction.
The next section describes which tools and computational architectures were developed in chronological order to program and display the IDMs with Pareto frontiers in the client.

Standalone Implementation
Currently, most web browsers do not allow Java applets, and, for large linear programming problems (e.g., >1 GB of information), it is not computationally practical to run the problems in real time in any case. Instead, the standalone application Feasible Goals (FGoal) [21] can be run ahead of time to save the set of Pareto frontiers that have been optimized for a problem in order to be available when needed for decision-makers, stakeholders or other users. This standalone application, which evolved over the last few decades of the 20th century, has already proven very useful when there is limited access to the internet, or the optimization problem requires dealing with big linear programming files. The standalone application, in which users can develop and explore Pareto frontiers tradeoffs in real time or run and save a set of solutions ahead of time, to be shown later to decision-makers, has proven very useful for assisting with analysis and negotiation before decision-makers arrive at a consensus about which final solution will be chosen.

Java Applets Implementation
The first web-based implementation of Pareto frontiers was based on a client-server structure ( Figure 2). The IDM technique separates the phase of approximation of the EPH from the phase of visualization. Thus, the server is used to approximate the EPH, and the Java applet is responsible for visualization of the Pareto frontiers. The server software was usually coded in C++ and Java, while Pareto frontiers were shown on client devices using XHTML and the Java Applet.

PHP Implementation
In this application, all the computational work required to generate all the vertices and constraints defining the EPH in each request from the client's device is performed by the computational server with algorithms written in C++. Subsequently, the EPH is built using the PHP programming language (PHP version 5 and JavaScript version ECMAScript 2015) in the PHP server, and the results are finally displayed on the client side (Figure 3).
In this configuration (Figure 3), communication uses the Transmission Control Protocol (TCP), and only needs an internet protocol (IP) address and a port to make commu-

PHP Implementation
In this application, all the computational work required to generate all the vertices and constraints defining the EPH in each request from the client's device is performed by the computational server with algorithms written in C++. Subsequently, the EPH is built In this configuration (Figure 3), communication uses the Transmission Control Protocol (TCP), and only needs an internet protocol (IP) address and a port to make communication possible between the server and client. We defined a free port to communicate data between the two servers and a source address to permit the correct communication. In our case, the source address is our server PHP IP. Based on this source address, the socket is used to send and receive data from the computation server to generate the vertices and constraints of a mathematical programming problem, generating the EPH. This schema of communication is definitely convenient to acquire solutions and improve decision-making, because mathematical programming problems supporting forest management and planning typically need to be analyzed in real time by decision-makers. The computational flow supported by our architecture (Figure 3) is best explained with a unified modeling language (UML) flowchart ( Figure 4). The user starts the decision tool by entering, in the site, information in Google Chrome. The user uploads their formatted linear programming problem (problem.lp) that can be read with CPLEX, and which includes a table at the end of the flat file for identifying the criteria that will be used in the decision problem (initial wgui in PHP). The users choose the criteria to maximize or minimize the decision problem. They can impose some constraints for the minimum or maximum value for each criterion. After that, they submit the information provided and this starts the iterative process for generating the EPH. The algorithms used to generate the hull are described in Lotov et al. [20]. The convergence process stops when the discrepancy is less than 0.1 or the number of vertices in the hull is 64. This process runs in In this configuration (Figure 3), communication uses the Transmission Control Protocol (TCP), and only needs an internet protocol (IP) address and a port to make communication possible between the server and client. We defined a free port to communicate data between the two servers and a source address to permit the correct communication. In our case, the source address is our server PHP IP. Based on this source address, the socket is used to send and receive data from the computation server to generate the vertices and constraints of a mathematical programming problem, generating the EPH. This schema of communication is definitely convenient to acquire solutions and improve decisionmaking, because mathematical programming problems supporting forest management and planning typically need to be analyzed in real time by decision-makers.
The computational flow supported by our architecture (Figure 3) is best explained with a unified modeling language (UML) flowchart ( Figure 4). The user starts the decision tool by entering, in the site, information in Google Chrome. The user uploads their formatted linear programming problem (problem.lp) that can be read with CPLEX, and which includes a table at the end of the flat file for identifying the criteria that will be used in the decision problem (initial wgui in PHP). The users choose the criteria to maximize or minimize the decision problem. They can impose some constraints for the minimum or maximum value for each criterion. After that, they submit the information provided and this starts the iterative process for generating the EPH. The algorithms used to generate the hull are described in Lotov et al. [20]. The convergence process stops when the discrepancy is less than 0.1 or the number of vertices in the hull is 64. This process runs in the computational server, which is communicating with the PHP server. A wgui was developed for the PHP server with the PHP and JavaScript languages, and with the available criteria and a progress bar to show the convergence. The PHP server reads the information provided by the computational server (vertices and constraints), sorts the vertices according to a Gift-Wrapping Algorithm [32], and makes all the calculations and configurations in order to show the IDMs in the client. When any changes in choices are made on the client side, the client communicates with the PHP server, the PHP server recreates the IDM and displays it on the client again (the Pareto hull is already generated). The wgui was developed with PHP and JavaScript. Finally, the users (on the client) choose one point in the IDM, and the optimization algorithm developed with PHP and CPLEX projects the solution to the closest point on the closest Pareto frontier using a Chebyshev distance. This is the final solution that can be stored in a CPLEX XML file or in a CSV file.
in order to show the IDMs in the client. When any changes in choices are made on the client side, the client communicates with the PHP server, the PHP server recreates the IDM and displays it on the client again (the Pareto hull is already generated). The wgui was developed with PHP and JavaScript. Finally, the users (on the client) choose one point in the IDM, and the optimization algorithm developed with PHP and CPLEX projects the solution to the closest point on the closest Pareto frontier using a Chebyshev distance. This is the final solution that can be stored in a CPLEX XML file or in a CSV file.

Results
In order to demonstrate our decision tool, we present an environmental decision problem that builds from the description by Lotov et al. (reference [20], pp. 32-34). It involves a region with a lake and a river that is used for intensive agricultural production. The water resources are used for irrigation and managers are concerned with the environmental impacts of the application of chemical fertilizers as well as with shortages of water in the lake. In our application, we considered the variables: totcrop (the sum of agriculture production in two zones of the region in percentage of the maximum), leveldrp (the level of the lake in percentage of the maximum), and lakepol (the additional water pollution in the lake in mg L −1 ).
After uploading the *.lp file in the predefined format, we chose which criteria to maximize, minimize, or ignore for the construction of the EPH. Data were entered in the wgui ( Figure 5) to run the iterative process to generate our Edgeworth-Pareto hull. In this example, we chose to maximize totcrop, and minimize leveldrp and lakepol. A constraint was introduced in the criterion totcrop (totcrop ≤ 80%), and all other criteria were uncon-Information 2021, 12, 9 9 of 16 strained. The generation of the EPH ran in a few seconds, and its approximation was built with an associated error of 0.09649937 (discrepancy = 0.09649937 < 0.1; discrepancy reflects the error associated with the representation error of the real Pareto hull in the iterative process). The EPH is represented by 11 facets (polytope's features, line segments in 2D, triangles in 3D, etc.) and 15 tops (which are a generalization of slicing a reflexive polytope; a formal definition can be found in Bouchard and Skarke [35]). After the communication between the PHP server and the computation server, the EPH was defined and was ready to be represented in the IDMs as the known Pareto frontiers. production in two zones of the region in percentage of the maximum), leveldrp (the level of the lake in percentage of the maximum), and lakepol (the additional water pollution in the lake in mg L −1 ).
After uploading the *.lp file in the predefined format, we chose which criteria to maximize, minimize, or ignore for the construction of the EPH. Data were entered in the wgui ( Figure 5) to run the iterative process to generate our Edgeworth-Pareto hull. In this example, we chose to maximize totcrop, and minimize leveldrp and lakepol. A constraint was introduced in the criterion totcrop (totcrop ≤ 80%), and all other criteria were unconstrained. The generation of the EPH ran in a few seconds, and its approximation was built with an associated error of 0.09649937 (discrepancy = 0.09649937 < 0.1; discrepancy reflects the error associated with the representation error of the real Pareto hull in the iterative process). The EPH is represented by 11 facets (polytope's features, line segments in 2D, triangles in 3D, etc.) and 15 tops (which are a generalization of slicing a reflexive polytope; a formal definition can be found in Bouchard and Skarke [35]). After the communication between the PHP server and the computation server, the EPH was defined and was ready to be represented in the IDMs as the known Pareto frontiers.

Forest Management Application
In this section, we provide a small example of an application in forest management. The reader is referred to [36] for a detailed description of the case study area. The tool was used to support a collaborative planning process involving several stakeholders and targeting the provision of several ecosystem services over a 90-year planning horizon. Indeed, a version of this application of our decision tool is included in wSADfLOR [36]. Figure 8 shows the wgui used for the user to choose the criteria and additional constraints they want to include, for example, maximum and minimum limits for each criterion. Given that input, the EPH is generated. The criteria considered were: total wood volume harvested and thinned for all forest species considered (TOTTIMBesc, measured in 10 6 m 3 ); standing volume at the end of the planning horizon or volume of ending inventory (90 years), (Vol_Per9esc measured in 10 6 m 3 ); the average carbon sequestration during the planning horizon (CTOTALesc, measured in Mg year −1 ); net present value (NPV, resulting from the silvicultural operations and value of cut wood in the planning horizon, measured in 10 8 EUR). Definitions of discrepancy, facets, and tops are the same as in the previous example.     the silvicultural operations and value of cut wood in the planning horizon, measured in 10 8 EUR). Definitions of discrepancy, facets, and tops are the same as in the previous example. The IDM representation and the tradeoffs between the criteria are shown in Figure 9. They can be analyzed using the Pareto frontiers, one for each different value of colored scale (CTOTALesc), considering a given value of NPV = 0.64 × 10 8 EUR. In this example, if the user wants to analyze only a specific value of CTOTALesc, this is also an option as shown in Figure 10.  The IDM representation and the tradeoffs between the criteria are shown in Figure 9. They can be analyzed using the Pareto frontiers, one for each different value of colored scale (CTOTALesc), considering a given value of NPV = 0.64 × 10 8 EUR. In this example, if the user wants to analyze only a specific value of CTOTALesc, this is also an option as shown in Figure 10.

Discussion
There are various ways to show tradeoffs in multicriteria decision analysis. Moreover, the visualization of IDMs may be supported by programming languages other than PHP with XHTML, (e.g., JavaScript or C++, R, Python) [4,28]. Some authors analyze the tradeoffs by using an explicit tri-dimensional visualization and can only infer the outline of Pareto frontiers as the tool only shows the vertices of the nondominated solutions [4]. Moreover, in order to analyze the tradeoffs among more than three criteria, we need to use another kind of representation for the nondominated solutions. The decision maps generated by the decision tool described in reference [28] are limited to a maximum of three criteria. The decision space is represented by a triangle and the tradeoff analysis was performed by analyzing the topologic relations among vertices and edges that belong to the solutions, which are represented by polygons inside the triangle. Our general computational methodology builds from earlier approaches [18][19][20] to increase the efficiency of the generation of IDMs. This web-based approach has a limitation of five criteria, while the standalone approach can deal with seven criteria, but it is easily extensible to deal with more than five criteria.
The development and visualization of the Edgeworth-Pareto hull is not a simple task. Reference [4] used a different method to visualize its points in a tridimensional space, whereas in the present work, as in previous works developed at the Forest Research Centre of the School of Agriculture in collaboration with University of Évora, we have used IDMs. Our representation of Pareto frontiers shows several two-dimensional frontiers, each one delimiting a space with a different color, representing different values of a third criterion for the values on the x-and y-axes of the first and second criteria. Responses to additional criteria can be represented by varying sliders at the bottom of the IDMs.
Currently, the decision tool presented in this study can handle variations in up to five criteria and is an interesting approach to visualize multiple color Pareto frontiers that makes it easier for decision-makers to select a point on the frontier. Further work on visualization and analysis with web-based IDMs is continuing to make the tool presented here more user friendly for decision-makers.
The current work demonstrates a new architecture for computing the Edgeworth-Pareto hull, based on sockets communication between the PHP server and the computation server ( Figure 1). This architecture is very convenient, because, in this case, we have a powerful server dedicated to the computational effort of this task, thus making it possible to represent Pareto frontiers in a few seconds on the client device. Furthermore, the client can change the IDM built by the PHP server to be shown in the client device in a few seconds as well. Decision-makers, who want to make decisions and identify new feasible solutions in a short time, can benefit from this tool. Due to the fast processing time to display the IDMs, the decision-maker can run the tool in various tabs in the same Google Chrome session, and compare the different solutions and strategic plans resulting from these solutions. In terms of decision analysis, this is a positive point.
This web-based tool was built to run on the Google Chrome browser. Although we have partially tested it in Microsoft's Edge and in Apple's Safari with good performance results, it has not been fully tested, and some wguis may not respond as expected or may respond with some limitations. Thus, additional effort is needed to develop this tool, making it more responsive for other web browsers. A very similar tool has been integrated into the wSADfLOR forest and natural resources decision support system [36], and the latter has already been tested using an encapsulated standalone C++ package to generate the EPH. Akin to wSADfLOR, there are other works that have used encapsulated Pareto frontier tools as packages in C++ or Java, or Pareto frontiers developed with other architectures and methodologies, web-based or not. Other applications include those by references [4,7,8,[21][22][23]. The present work is a result of experience gained in previous projects developed at the Forest Research Centre of School of Agriculture in collaboration with the Mathematics Department of the University of Evora, on developing and analyzing Pareto frontiers.
Our web-based decision tool is freeware and based on PHP web programming that continues to evolve with the evolution of web browsers, and the feedback of decisionmakers and researchers. A very similar version, but without sockets, is already successfully implemented in wSADfLOR, but this current decision tool can easily be integrated into other decision support systems. Its architecture makes it easier to interact with IDMs from other places around the world with internet access. It has essentially been developed to serve the needs of analysis and planning for forest and natural resources management, but it can be useful in other fields as well. Reference [20] presents some examples of successful applications to environmental problems, real estate, and automobile businesses, but the method of building Pareto frontiers with the present architecture can easily be applied to any decision problem that can be formulated as a mathematical programming problem. It only needs a *.lp flat file, ready to be compiled by CPLEX or GLPK, and with the additional ScreenVariables block at the end of the file.
Finally, another important aspect to take into account is the user friendliness of the tool and helping decision-makers to be comfortable with their decisions. In these respects, decision-makers not only need good decisions, but transparent decisions [11]. This aspect of transparency in decision processes continues to drive the design of decision tools and decision support systems in business and science.

Conclusions
The architecture that we describe in this work makes it possible to deal with very high dimensional mathematical programming problems (e.g., numerous variables and constraints), because all computational effort needed for construction of the Edgeworth-Pareto hull is performed by a dedicated server. On one hand, this architecture supports faster responses to the client, and consequently faster visualizations of the requests for changes by the client, with close-to-real-time responses. On the other hand, some problems were previously impossible to solve in reasonable times because of their complexity, but, with the proposed architecture, now the tradeoffs of Pareto frontiers can be shown and updated in almost real time even in the worst cases. This improved capacity enables a faster decision process and permits the use of the decision tool in any geographic location with internet access and at any time, with few or no limitations. The mathematical programming problem needs to conform to a predefined format in order to be well interpreted by the web Pareto frontier decision tool. This format is very similar to the traditional CPLEX or GLPK format, with a few more lines of code at the end of the file for the wgui to easily identify the criteria to be used in the optimization process.
Finally, while the decision support tool presented here represents a significant advance in evaluating tradeoffs on Pareto frontiers for high-dimensional decision problems posed by contemporary forest management, and the architecture described makes it quite feasible to handle such problems in real time in collaborative settings such as workshops, there are also additional opportunities to enhance the system with additional features to improve the quality and effectiveness of forest management decision-making, namely by extending it to address more than five criteria.