Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

17.1 Software Available

Halfon (2006) reviews available software. We summarize and update the review for the convenience of the reader:

  • RANA, Pavan (2003)

  • DART, Manganaro et al. (2008)

  • PRORANK, Pudenz (2005) and Voigt et al. (2006)

  • CORRELATION, Sørensen et al. (2005)

  • WHASSE, Bruggemann et al. (1999)

  • POSAC, Shye (1994) and Borg and Shye (1995); see also http://ca.huji.ac.il/bf/hudap-Info.pdf

  • POSET, Patil et al. (2009, personal communication (POSET-ranking))

  • PyHasse, Bruggemann et al. (2008a, b), Bruggemann and Voigt (2009), and Voigt et al. (2008a, b)

  • VB-RAPID, Joshi et al. (2010)

If formal concept analysis is included then the list above can be extended; see the home page: http://www.upriss.org.uk/fca/fcasoftware.html:

17.2 Brief Characterization of Some of the Software

Some software packages may be presented briefly. The selection is subjective and does not reflect any quality or importance.

PRORANK (programming language: JAVA): Still under development, intends to include multivariate statistics as far as possible. It already has tools to edit the graphics and to handle subsets of objects and indicators. In comparison with the software WHASSE, data handling is greatly facilitated.

CORRELATION (programming language: DELPHI): The very idea is to examine two partial orders and how far a “correlation” can be found on the basis of these two posets.

WHASSE (programming language: DELPHI): Includes down sets, antagonism, object selection wizards, matrix W, linear extensions and applications to calculate rank frequency distributions, averaged ranks and mutual probabilities, and CAM (called P(IB)). WHASSE is professionally programmed, has a well-developed graphical user interface, and can be delivered as a stand-alone package, i.e., it is not necessary to use Internet for installing the software.

DART (programming language C++): Includes multivariate procedures like PCA and KMEANS clustering and several functions to provide linear orders and also has some facilities for posetic approaches.

POSAC: In SYSTAT.

POSET (programming language: C++): Development at Penn State Center for Statistical Ecology and Environmental Statistics. It provides linear ranks on the basis of linear extensions.

PyHasse (programming language: PYTHON): Major software used in the monograph. Therefore, we describe PyHasse in more detail later (Section 17.3).

VB-RAPID (VISUAL BASIC): Developed by Joshi et al. (2010). It is described in more detail in Section 17.4.

17.3 PyHasse

17.3.1 Overview

PyHasse is based on the free downloadable PYTHON programming software, version 2.6. PYTHON programs can be used on different platforms and under different operating systems; there are many specific and powerful free downloadable libraries available.

Graphical user interfaces (GUIs) can be programmed by Tkinter, which is available together with PYTHON and is based on Tk/Tcl. PYTHON supports testing and can be considered as an “experimental software,” allowing the programmer to quickly gain experience in programming work and, more important, to test and efficiently program new theoretical tools.

17.3.2 General Principles of PyHasse

First of all, PyHasse should be considered as a test version. It actually consists of more than 30 programs (called “modules”) and is still pretty dynamically under development. An overview with status of March 2009 can be found in Bruggemann and Voigt (2009).

The modules are independently written programs, so new ideas can be easily programmed without having to take care of already used variable names. All modules are related to two libraries, written by Bruggemann, which contain basic procedures and basic classes of object-oriented programming: rmod2 and raioop2. Some modules have interfaces by which results can be interchanged.

One of the modules is “pyhassemenue7,” the central platform from where general information can be obtained (for example a tutorial) and from where actual interesting modules can be selected.

The appearance of the modules (i.e., their user interfaces) is similar as far as possible. Each module has a “help” function. This help function informs about

  • aim of the module,

  • prerequisites (especially how to handle Excel® data files as input),

  • usage (or steps),

  • known bugs or difficulties, and

  • recommended example files (provided with the PyHasse software).

In many cases, there is also an “about” button, which informs about the status of the module and gives background information, for example, about important literature.

17.3.3 List of Modules

In PyHasse, three types of modules are available:

  • M: Basic PyHasse Analysis Tool

  • D: Simple versions of decision support systems

  • H: Supporting modules (interfaces, tutorial writers) (Table 17.1)

Table 17.1 PyHasse modules, alphabetically sorted (status November 2009)

The module mainHD19 is the main working module and can be used to analyze transformed data matrices of the modules discretiz1.py and palg4.py. Additionally mainHD19 provides data formats such that the graph theoretical program graphviz (see http://4webmaster.de/wiki/Graphviz-Tutorial) can be applied to obtain readable directed graphs. The user interface of mainHD19.py is shown in Fig. 17.1.

Fig. 17.1
figure 1

Graphical user interface of mainHD19.py

There are four areas in the graphical user interface:

  1. 1.

    informal part and the access to different data

  2. 2.

    characteristics of a poset can be obtained as well as the Hasse diagrams

  3. 3.

    navigation within a Hasse diagram

  4. 4.

    linear or weak orders by LPOM or Bubley Dyer algorithm

Some buttons are only activated if the needed information is provided.

Table 17.2 lists the use of PyHasse in the theoretical part of the monograph.

Table 17.2 Use of PyHasse in the theory part of the monograph

17.4 RAPID

17.4.1 Standards

Under the auspices of the USNSF project for digital governance and hot spot geoinformatics for monitoring, etiology, early warning, and sustainable management and development at the Penn State Center for Statistical Ecology and Environmental Statistics, G.P. Patil, Principal Investigator, effort has been in progress for methodology and software development for ranking and prioritization information delivery (RAPID).

The software “RAPID” has been under development to clearly encompass features of some well-known programs and more, such as

  • WHASSE

  • POSET

  • POSAC

  • PyHasse

17.4.1.1 Steps of Developing RAPID

RAPID is developed in several steps. RAPID0 provides the Hasse diagram and basic tools to analyze it. RAPID1 will contain additional features arising from the partial order context.

Of most importance is that a tool of getting linear or weak orders out of a poset is available. The general concept is explained in Fig. 17.2.

Fig. 17.2
figure 2

RAPID-ranking, a combination of the Bubley Dyer and the cumulative rank frequency (CRF) algorithm; see Chapter 9

There are several crucial steps:

  1. a)

    The starter for the Monte Carlo Markov chain calculation (MCMC) after Bubley Dyer,

  2. b)

    Sampling of the final subset of linear extensions, and

  3. c)

    Defining conditions in the decision mark.

Especially (c) still uses some heuristics.

The programming language is VISUAL BASIC at present.

17.4.2 Modules and Facilities of VB-RAPID

In contrast to PyHasse, VB-RAPID 1 consists of one single program and the access to different tools of partial order follows by menus and submenus. The main menus are

  • File: Open and save data

  • Functions: Basic information about the data matrix

  • HASSE Diagram: Hasse diagram in two possible orientations

  • Results: Access to partial order tools (see below)

  • Help: Context specific help texts written in HTML

The menu “Results” pops up to the following submenu:

  1. 1.

    Level population

  2. 2.

    Cover matrix

  3. 3.

    Down sets and up sets

  4. 4.

    Intervals

  5. 5.

    Maximal, minimal, and isolated elements

  6. 6.

    Structural details (predecessors, successors, and incomparable elements)

  7. 7.

    Sensitivity, based on the matrix W (W(X,IB(i),IB(j)))

  8. 8.

    LPOM

  9. 9.

    D-matrix (which we did not consider in the monograph)

  10. 10.

    Minimum rank graph

  11. 11.

    Articulation points

  12. 12.

    Bubley Dyer simulation (combined with CRF)

Information in (3)–(5), (6), (8), (9), (11) is rendered in textual form, all others display a graphic additionally, like, e.g., in (12) height probability graphs.

In contrast to PyHasse, VB-RAPID provides a graphical editor (menu HASSE Diagram), by which the number of crossings can be manually reduced.