Note: RRPExplorer was developed by Dr. Benny Raphael. The Intellectual Property of this software is owned by
the National Univesity of Singapore. Cite this paper as the primary reference to the RR-PARETO algorithm:
Raphael B., Multi-criteria decision making for collaborative design optimization of buildings, Built Environment Project and Asset Management, (Emerald publishers), Vol 1, Issue 2, Nov, 2011.
RRPExplorer Version 3
RRPExplorer is a tool for assisting designers and managers in the decision making process through the
exploration of the space of possibilities.
It has a user interface that lets you navigate through a multi-dimensional solution space shown as a parallel axis plot,
apply constraints to remove unattractive
parts of the solution space, select interesting solutions, apply various filtering algorithms and finally arrive at a single
best solution matching your preferences and priorities. The RR-PARETO3 algorithm (version 3 of RR-PARETO) can be used
to select the final solution.
Input data
The input data is read from tab separated text files typically with a file name containing the extension.dat,
for example, HRM.dat.
This data can be prepared using a text editor like notepad. Data
could be copied and pasted from spreadsheets or exported from spreadsheets as tab separated text file.
This data file contains
one solution point on each line. The attributes within a line are separated by tabs. The first line is the header
which contains the description of the attributes. The column names in the header are also separated by tabs.
In addition to the data file containing solution points, some meta-data is required by RRPExplorer.
For example, information related to
what are the objectives and what are ordinary attributes,
what is the order of importance of objectives, what are the values of sensitivities, etc. are required.
All this information can be input through the RRPExplorer interface. This information is saved in a separate file
in XML format and not in the .DAT file.
If you open the .dat file in RRPExplorer, the meta-data is not available and you need to input it again.
Instead, if you open the XML file in RRPExplorer, all the meta-data is loaded. The XML file has a reference
to the .DAT file containing the solution points, but the points themselves are not stored in the XML file.
So you need to keep both XML file and the .DAT file.
An excel spreadsheet called RRP-Explorer.xlsm (macro enabled excel file)
has been provided to assist in the preparation of the initial data. This spreadsheet simply exports all the data into tab separated
text files. In addition, it also prepares the XML file containing meta-data. However, if you add constraints
or make other changes within RRPExplorer, it is not reflected in the excel file. If you make such modifications,
you need to save the .DAT and .XML file in a different name and open it directly from the RRPExplorer file menu
next time.
Output
The output is in the form of parallel axis plots displayed on the screen. There are three ways to get other
types of output.
-
Images can be obtained by taking screen shots
(by pressing "SHIFT-PRINT SCREEN" combination of keys) and
the copy of the image in the clipboard can be pasted into documents.
-
Selected data can be saved
as tab separated files using "File/Save as" menu item. This tab separated text files can be opened in spreadsheets for
further processing.
-
If you have a custom program for viewing selected data, you can call it from the batch file
dataviewer.bat. When you double click on a solution point in RRPExplorer, it calls the
batch file dataviewer.bat after saving the points in
the tab separated text file dataviewer.dat. Your custom viewer should read the solution point(s) from dataviewer.dat
and display it appropriately. By default dataviewer.bat opens the data file in notepad.
Installation
The program was developed using VB.NET and runs only on machines running windows operating system having
.NET framework. Most latest computers running windows operating system
have .NET framework. If you do not have it, go to microsoft website and install .NET.
Search on Google with the keywords "download .NET framework"
in order to locate the microsoft download site.
No separate installation program is provided. Copy the folder RRPExplorer-Release3 to a suitable place on your hard disk.
Double click on RRPExplorer.exe. If you have .NET framework installed on
your computer, the program should run without any problem.
When the program runs for the first time, it pops up a dialog box where you have to input
your name and other details in order to obtain an evaluation license. Once you click on the OK button,
it contacts a server to obtain an evaluation license which is valid for three months.
If this is successful, you will see a file license.dat in the same folder that contains RRPExplorer.exe.
You will also see a file license.txt in the same folder. If you need to extend the license,
you should email license.txt to the developer. Once an evaluation license has been issued for
a particular machine, another evaluation license cannot be obtained automatically. You need
to manually contact the developer.
Running RRPExplorer
There are three ways to invoke RRPExplorer.
- Double click on RRPExplorer.exe
- Click on the button "Run RRPExplorer" in the macro enabled excel file RRP-explorer.xlsm
- Type in the command RRPExplorer.exe with an optional filename as a parameter
In the first method, you do not specify any file name to start RRPExplorer.exe. You will be shown the
main start screen. You can click on the File/Open menu item to open an XML file or
.DAT file. When a file is successfully opened, the solution display window called "RR-Pareto Explorer"
is shown.
If you use the second method, the excel macro code creates the files rrpdata.xml and rrpdata.dat
files containing all the data and then invokes RRPExplorer.exe with the XML file specified at the command line.
In this case, you do not see the main starting screen. the solution display window is displayed straight away.
In the third method also, the XML file (or data file) specified on the command line is opened without showing the
main screen.
Menus in main start screen
File/Open
You can open tab separated text files or XML files containing meta-data using this command.
By default, only .XML files are shown in the file open dialog. Select "all files (*.*)", in the
file type combobox to display .DAT files.
License
This command shows license information and when it expires.
Help
This command loads the help file help.html. The file should be in the same folder containing RRPExplorer.exe.
RR-Pareto Explorer Window
This window shows the solution points in the form of parallel axis plots. You can click on a vertical axis to see the
value of the attribute at this point. If you want to restrict the selection of points to those having a specific
range of values for a particular attribute, a contiguous region should be selected by clicking and dragging with the
mouse. The points that lie outside this range are hidden. However they still remain in the memory and could be
displayed again by selecting the Reset command. Symbolic values are displayed on the screen if there are not too
many symbols to clutter the screen. For mathematical manipulations symbolic values are replaced by numbers
representing the order in which symbols have been read from the data file. The total number of points and the
points currently displayed on the screen are shown at the bottom of the screen.
If there are too many attributes to fit in the screen only the first few are displayed. You can display
remaining attributes by changing the order of attributes in the setup window. In addition, you can also
use the keyboard short cuts "h" and "l" to rotate the order of ordinary attributes to the left or right.
If you click on a vertical axis before pressing h or l, the ordering of all the axis before the clicked one
are unaffected. Only the order of axes from the latest click will be altered.
Menus in RR-Pareto Explorer Window
Note that, most of the menu items can be invoked through keyboard shortcuts indicated within paranthesis in the menu.
The keyboard shortcuts are case sensitive. These are meant to perform operations quickly with a single keystroke
without going through the menu structure.
File/Save
The keyboard short cut is s . If you are selecting this command for the first time,
it shows a dialog for saving the data points (.DAT file) and the meta data (XML file). You
can select the checkbox to opt for saving only selected data which are currently displayed on screen.
If you do not select the checkbox, all the data points are saved including those that are not displayed
on the screen. You can close the dialog box after saving only the data points without saving the XML
file. This is useful if you simply want to output selected points to a tab separated text file to be
processed in spreadsheets or other programs.
Subsequent invocation of this menu item will result in overwriting existing .DAT and XML files without
asking for confirmation.
File/Save As
The keyboard short cut is a .
It shows a dialog for saving the data points (.DAT file) and the meta data (XML file). You
can select the checkbox to opt for saving only selected data which are currently displayed on screen.
If you do not select the checkbox, all the data points are saved including those that are not displayed
on the screen.
Selection/RRP Filter
The keyboard short cut is f .
Performs one set of iterations of the RR-Pareto3 filtering algorithm. You might need to repeat this
a few times in order to get a single solution. The eliminated solutions are not displayed on the screen,
but are still stored in the memory. The points can be restored by selecting the Reset command.
Selection/Pareto Filter
The keyboard short cut is p . It performs conventional pareto filtering to remove dominated solutions.
The eliminated solutions are not displayed on the screen,
but are still stored in the memory. The points can be restored by selecting the Reset command.
Selection/Exclude selected
The keyboard short cut is x .
You have to select this command after clicking on a point on the screen.
The selected point(s) is highlighted when you click on a vertical axis where the
point(s) intersect the axis. The highlighted points are removed from the display.
However, they are still stored in the memory. The points can be restored by selecting the Reset command.
Selection/Include only selected
The keyboard short cut is i .
You have to select this command after clicking on a point on the screen.
The selected point(s) is highlighted when you click on a vertical axis where the
point(s) intersect the axis. Only the highlighted points are shown on the display.
Other points are removed from the display.
However, they are still stored in the memory. The points can be restored by selecting the Reset command.
Selection/Invert
The keyboard short cut is v .
This command will invert the selection. That is, all the points that are hidden will be visible and
all the visible points will be hidden. However, they are still stored in the memory.
The points can be restored by selecting the Reset command.
Selection/Expand neighbourhood
The keyboard short cut is e .
This command is invoked after some filtering and selection of windows. A few more points which
in the neighbourhood of the current set of points are displayed on the screen. This command is
useful to analyse the effects of varying the values of parameters by a small amount.
Selection/Dominating points
The keyboard short cut is d .
You have to select this command after clicking on a point on the screen.
The selected point(s) is highlighted when you click on a vertical axis where the
point(s) intersect the axis. If there are other points which dominate the selected
point, these points are displayed. All other points are hidden, that is removed
from the display.
However, they are still stored in the memory. The points can be restored by selecting the Reset command.
Reset
The keyboard short cut is r .
This command resets the display be showing all the hidden points, that have been eliminated
by selecting windows or applying filtering. However, the points that are eliminated by applying
constraints are still not made visible.
Constraints
Clicking on this menu item will show a dialog box for manipulating constraints.
Unary constraints of the forms
y >= c
y <= c
or binary constraints of the forms
y >= m * x + c
y <= m * x + c
can be input, where y,x are attributes (or objectives) and m,c are constants. For specifying unary
constraints, simply leave the column "x" blank and specify only the value of "c".
New constraints are added by
clicking on the button "New Constraint" at the bottom of the dialog box. It adds a new row to the
table. You can specify the variables "x" and "y" by selecting from the combobox in the respective
columns. The constant values should be typed in and the return key has to be pressed to finish the
editing.
Existing constraints can be temporarily
disabled by clicking on the checkbox in the first column of the table.
If you have added new constraints or modified constraints, you need to click on the button "Apply constraints"
if these constraints have to be saved. Otherwise modifications are discarded when you close the dialog box.
Note that the command "Apply constraints" does not cause the .DAT file or XML file to be rewritten. The
constraints are only saved in the memory. You need manually save the XML file if these constraints are to be
saved permanently.
You can delete existing constraints by selecting the required rows in the table and clicking on the button
"Delete Constraints". The
constraints are only deleted from the memory. You need to manually save the XML file if these constraints are to be
deleted permanently.
Setup
This command displays a dialog box for setting up the decision making problem. You can specify which
are the objectives, which are ordinary attributes, etc. through this dialog box. The table in the dialog
box shows all the attributes and objectives. You can convert an attribute into objective and vice versa by
clicking on the checkbox in the second column. The relative sensitivity and absolute sensitivity for each
objective can be specified by inputting non-zero values in the fourth and fifth columns. If a zero value
is specified in both columns, the sensitivity is unspecified. In this case, the default filtering method
will be used in the RR-PARETO3 algorithm in Stage 2. The default filtering method uses the bisection of the
hypercube according to the order of importance. The last column in the table specifies whether the objective
has to be maximized or minimized.
The order of objectives and attributes can be changed by inputting numbers in the corresponding column
of the table. The objectives are always displayed first followed by ordinary attributes.
You can apply a linear transform to the values of a selected attribute by clicking
on the button "Transform attributes". All the data points will be scaled and/or translated.
You will be asked to specify
the coefficient for multiplying the value of the attribute (for scaling) and the constant value by which the points
are translated. This option is useful for inverting the scale (by multiplying the values of an attribute
by -1). This is a way of converting a maximization problem into a minimization problem.
If you click on the button "Display options", you can fine tune some display parameters. If the vertical
axes are too close by, you can increase the spacing by inputting the width of attributes in pixels. If you
have a custom viewer for displaying selected points (when you double click), the name of the program
can be specified in the dialog box. If the viewer program is not in the current folder, complete path should be given.
Note that if the XML file is copied to another machine, the absolute path may not be correct and the
viewer will fail to load.
You need to click on the "Update" button in order for all the changes to take effect.
Help
This command loads the help file help.html. The file should be in the same folder containing RRPExplorer.exe.
Updates
Check for updates to the documentation and other information here:
http://bennyraphael.com/RRPX/index.html