How to Run id
and Link to the User's Manual
Timothy C. Haas
School of Business Administration
University of Wisconsin -- Milwaukee
P. O. Box 742
Milwaukee, WI 53201
haas@uwm.edu
Vita
Declaration and Disclaimer
I, Timothy C. Haas, Associate Professor at the School of Business
Administration, University of Wisconsin at Milwaukee, Milwaukee, WI 53201
(haas@uwm.edu) wrote the software package, id which is
embodied in the Java^(TM) computer language source files contained in the
file "idsrce.zip." I hereby declare this program to be in the public
domain effective today, November 14, 1999.
No warranties expressed or implied are made by
the author for the use of this software. Consequences resulting from the
use of this software are entirely the responsibility of the user.
Introduction
id is a web-based program for constructing,
estimating, and evaluating an Influence Diagram (ID) model. This software
is experimental. Java^(TM) class and source files are available for
downloading as described below.
cheetah_emt
describes a web-based, shared decision support system for
ecosystem management, called an Ecosystem Management Tool (EMT).
An important aspect of the proposed open EMT concept is the development of
ecosystem analysis software that is easier to
use by a larger spectrum of public and private sector
employees and private citizens than current packages.
id is such a software system.
See idtutrl.pdf for a tutorial on
Influence Diagrams.
Distribution
Zip files containing the
executable byte-code (*.class}) files
and source code files are available through ftp download. Zip files
containing all files needed to run several id analyses are
also on this site.
Anonymous ftp can be used to download the files.
To connect from a unix machine connected to the internet, type:
ftp ftp.uwm.edu
Use "anonymous" as the login name, and your email address
as the password. When you get an ftp prompt, type each of the following
commands at the ftp prompt:
cd pub/haas
prompt
mget *.*
You can also use your web browser to do this download at
ftp site.
In either case, download all files in the directory.
I used "zip" on unix to create all downloadable files.
Use "unzip" or "pkunzip" to unzip these files on a windows PC.
The *.class files for id
are in id.zip. These class files are binary so don't do
anything special for carriage returns.
Description of Files Available for Download
- id.zip: Java^(TM) .class files for executing
id
- idsrce.zip: Java^(TM) source code (.java files) for
id
- batfiles.zip: DOS batch files that make running
id easier.
- ancova.zip: Example of using id
to perform an Analysis of Covariance (ANCOVA).
- spatialpred.zip: Example of using id
to perform a spatial statistical analysis (cokriging) with observations on
wet $NO_3$ deposition and precipitation in the conterminous U.S.
- ecosys.zip: The Ecosystem Management Tool
(EMT) example for cheetah conservation in Kenya described in Haas (2004).
Unless the Java^(TM) standard development kit (SDK) is installed on your
machine, the Java^(TM) Runtime Environment (JRE) will be needed to
run id. The JRE can be downloaded and installed from
JRE site.
The Jini(TM) toolkit is also needed and can be downloaded from
Jini(TM) site.
Running id
id can be run in three different modes: single process
batch, interactive Windows, and cluster computing batch. To run
id in any of these modes, you will need to first
download and unzip all files, and then edit the batch file "idalone.bat" to
reflect the directories on your system that contain these JAVA class and
source code files.
Single Process Batch Mode
To run id on the ANCOVA example input file
(see below), type the command:
idalone ancova.id
at a DOS prompt or
sh idalone.bat ancova.id
at a unix prompt.
If you get an "OutofMemoryError," java's memory can be increased through
the "-mx" option. For example
-mx200m
requests 200 megabytes of virtual memory.
Cluster Computing Mode
id can be run as a JavaSpaces(TM) distributed computing
application. To do this, a javaspace needs to be
started before the master version of id or any client
versions are started. Using the batch files included in the
distribution, this is done
on a Windows 2000 network as described next.
Assume that a Windows network connects a single ``Remote-PC'' that may
or may not have a static IP address, a ``Master-PC'' that has a static
IP address, and one or more ``client-PCs'' that all have static IP
addresses. Using the DOS batch files, boot.bat, javaspace.bat, httpr.bat,
runrmidr.bat, jspacer.bat, startmstr.bat, id.bat, startc.bat, and
startcs.bat, execute the following steps:
-
From Remote-PC, reboot Master-PC and all client-PC's.
For example, if Master-PC is named n219-01 and all clients are n219-02
through n219-48, run the following command from Remote-PC to reboot all
of these machines:
boot
"Administrator Lite" privilege is needed for this command. "boot.bat"
uses the freeware command "psexec.exe" by Mark Russinovich (see
www.sysinternals.com/Utilities/PsExec.html). I have found that when
a machine needs to be rebooted, "rcmd" fails to connect to that machine
but "psexec" is successful so I use "psexec" in boot.bat instead of "rcmd."
-
From Remote-PC, start the http server, remote method invocation
server, lookup service, and finally the javaspace on Master-PC with:
javaspace "network-password" "master-PC_name"
This .bat file calls "httpr.bat," "runrmidr.bat," and "jspacer.bat."
Each of these .bat files start their own DOS window and then hang
in this window. Therefore, do not combine these .bat files into
one .bat file.
-
From Remote-PC, run the master program on Master-PC with:
startmstr "network_password" "master-PC_name" "id_input_file."
-
Start all client-PCs with:
startcs "network-password" "id_input_file."
Notes:
-
You may need to use Remote Desktop to issue the DOS command:
cscript c:\reboot.vbs
directly on Master-PC itself when network connections are blocked such
that "psexec" cannot establish connections.
One way this can happen is when "httpr.bat" is running the http service
and the network connection to Master-PC is occupied -- resulting in the
failure a Remote-PC invocation of "boot.bat."
-
The port number in "httpr.bat" must be the same as in "jspacer.bat"
and "id.bat."
-
The Master-PC's URL and IP address may be incorrectly mapped
using the Unix "nslookup" command. In this case, one way to discover the
correct IP address is to use the local machine name in a local call to
"ping." For example, say the local machine name of Master-PC is N219-01.
At a DOS prompt on any computer on the local network, typing:
ping N219-01
will result in the correct IP address being returned. If the
mapping is discovered to be incorrect, the IP address instead of
the URL of Master-PC will have to be used in the files
"SpaceAccessor.java," "id.bat," and "jspacer.bat."
-
The master PC's IP address must be entered in "jspacer.bat" (2
places), "id.bat" (2 places), and in "SpaceAccessor.java" (recompile).
AND, "startcs.bat" must be edited so that the new master PC is not told
to start as a child.
-
To achieve a six-times speed-up over the sequential algorithm,
there needs to be 27 workers and 1 master PC. Hence, if there are 48
PCs in a classroom, no more than $48 - 28 = 20$ PCs can be broken.
Interactive Windows Mode
id can perform Geographical Information Systems (GIS)
operations. These operations are best executed in an interactive,
graphical environment. To begin such a session, create a .id file
with the ``report'' qualifier ``gis_tools.'' Then, run this command
file in single process batch mode (see above). When this command
executes, an interactive window will appear on the users's computer screen.
The interactive GIS operations are described in the id
Users Manal (see below).
User's Manual
The User's Manual for id is at
idusers.pdf.
This manual gives the syntax of id's command language
and technical descriptions of its algorithms.