decnet User’s Manual and Tutorial Version 1.0, January 2005

advertisement
decnet User’s Manual and Tutorial
Version 1.0, January 2005
Prepared for the USDA Forest Service by
Associate Professor Timothy C. Haas
School of Business Administration
University of Wisconsin at Milwaukee
P. O. Box 742, Milwaukee, WI 53201
(414) 229-4360, haas@uwm.edu
1
Introduction
decnet (for decision network) is a Windows program written in Java that supports forest
management decision making by running the USDA Forest Service’s Forest Vegetation
Simulator (FVS) software package as necessary to create cases that are used to train an
existing Netica decision network of a forest management problem. decnet graphically
displays management plan impacts on the forest as computed from this trained network.
Netica uses the word network to refer to both Bayesian belief networks (BBNs) and
influence diagrams (IDs). The literature typically refers to a network that contains no
decision option (management plan) nodes as a BBN versus one that does as an ID. Here,
the word network will be used throughout.
2
2.1
decnet Operation
Running and Quitting decnet
After placing all decnet distribution files some directory, say decnetdir, click START
> RUN and enter decnetdir\run Decnet. Or, at a DOS prompt in the directory
decnetdir, type run Decnet to start decnet’s main window. The batch file, run.bat
is:
set PATH=C:\Program Files\Netica\NeticaJ_221\bin;%PATH%
java -classpath ".;C:\Program Files\Netica\NeticaJ_221\bin\NeticaJ.jar;
F:\polbio\ncssf\code"
-Djava.library.path="C:\Program Files\Netica\NeticaJ_221\bin" %1
Change the class path and library path arguments to point to where you have placed the
Netica .jar file, the decnet .class files, and the Netica executable files.
1
To close decnet, select File > Quit.
2.2
decnet Menus
Table 1 gives all decnet menus and their associated items.
Menu
File
Data
Items
Open a Netica network file
Display network
Quit
Create cases by reading FVS output
Create cases by first creating FVS output
Train the network from cases
Assess
Compute impacts of options
Single node (Display impacts)
Multiple nodes (Display impacts)
Description
Opens and loads a Netica .dne file.
Draws the opened network to the screen.
Closes decnet.
Reads existing FVS output files.
Runs FVS over multiple stands and
reads each stand’s output file.
Runs a Netica API program to train
the network on the FVS-based case file.
Solve the network to compute the impact
(nodal distribution) of each management
option. Writes these distributions
to a geo-referenced ASCII file.
Distribution of a single node.
Distribution of multiple nodes.
Table 1: decnet menu structure.
3
FVS Interface
3.1
Overview and Terminology
The hierarchy of geographic terms used in FVS documentation is as follows. A location
contains one or more stands. A stand contains one or more inventory plots. An inventory
plot contains one or more trees.
FVS variants require a tree data file to be provided as input to the variant run
command. decnet calls FVS to project only one stand at a time. This stand is always
associated with the tree data file that is read when the FVS variant is executed. A
variant is the FVS model tuned to a specific forest region. See below for details of how
decnet runs an FVS variant.
Suppose (see Forest Management Service Center (2004)) is a Windows program that
writes the FVS keyword file and runs FVS. Suppose is designed to be an easy to use and
graphical preprocessor to FVS. Suppose has two file types of its own – not recognized by
FVS. These are a stand list file, and a locations file. Suppose expects one or more tree
2
data files, one or more stand list files, and one locations file. The stand list file associates
each tree data file with a stand, and the locations file associates each stand list file with a
geographic location. Note that Suppose will not produce a keyword file unless tree data
files, stand list files, and a locations file exist prior to starting Suppose.
FVS Writer (Van Dyck 2004) is another standalone Windows program that gives the
user a graphical interface for creating FVS-acceptable tree data files, Suppose-acceptable
stand list files, and a Suppose-acceptable locations file.
In summary, Suppose is a preprocessor and graphical host for FVS; and FVSWriter
is a Suppose preprocessor.
decnet requires a stand list file but does not use a locations file. If a keyword file
created by Suppose can be saved to a file that is accessible by decnet, then Suppose
can be used to build the initial keyword file before decnet is run.
Let a collection of management activities over a span of years applied to a group of
stands be called a management plan. FVS allows such a plan to be given an identification
code (ID). decnet allows the user to associate a set of management plans with the values
of a decision node in a network. Then, FVS is used to produce the necessary cases to
train the network under each plan so that the expected effects of each plan on this group
of stands can be assessed.
Additionally, decnet gives the user the option of simulating a fire on every stand at
the beginning of the first cycle.
3.2
Cases from FVS Runs
A fundamental assumption of case-based learning is that there are multiple cases to be
learned from. In other words, replication of the phenomenon that the network is representing is possible. Within FVS, replication can be simulated in three ways: a) for
simulations involving random numbers, multiple runs each with different random number
generator seeds, b) replication over stands wherein differences between stands are either
explained by stand characteristic variables that can be read from the FVS output, or it is
assumed that stand differences are due to noise only, and c) replication across years, i.e.,
there are no temporal trends. This last source of replication is not relevant for studying
the temporal effects of different management options on a forest and hence is not allowed
3
in this method. The current version of decnet only allows stand replication.
To allow geographic variation, stands are partitioned by the user within decnet into
replication groups. Such a group contains stands (tree data files) that the user considers
to be different only due to random differences. Typically, such stands will share approximately the same elevation and other site specific characteristics.
3.3
FVS Structural statistics Table
Under a particular management plan, decnet creates a Netica case file by translating
multiple FVS Structural statistics Tables from the projection output on these stands –
one stand yields one case. This Table in the FVS output was chosen for translation
because it was developed by FVS personnel to support wildlife habitat and watershed
assessments (Dixon 2003, p. 62). The keyword STRCLASS needs to be in the FVS keyword
file that was read-in by decnet for this Table to be written by FVS. For time i, i = 1, . . . ,
number of cycles, FVS Structural statistics variables are given in Table 2. Also included
in this Table are the names used in decnet dialog boxes for these FVS variables.
FVS Variable
Nominal DBH (Diameter
at Breast Height)
Crown Base Height
Nominal Tree Height
Shortest Tree Height
Tallest Tree Height
Percent Canopy Cover
First Major Species
Second Major Species
Stand Classification
decnet name
nominaldbhTi
Units
inches
crwnbasehghtTi
nominalghtTi
shortestTi
tallestTi
prcntcancovTi
species1Ti
species2Ti
standclassTi
feet
feet
feet
feet
percentage
species code
species code
stand classification code
Table 2: decnet name, and units of FVS Structural statistics Table variables.
The Stand Classification variable takes on the values given in Table 3.
3.3.1
FVS Stratum Determination
For a particular stand and time point, there can be as few as one stratum and as many as
three strata. This is because FVS identifies strata by application of several heuristics to
the distribution of tree height and crown cover within a stand and year. Because the num-
4
Stand Classification
Symbol
Bare Ground
BG
Stand Initiation
SI
Stem Exclusion
SE
Understory Reinitiation
UR
Young Forest Multistrata
YM
Old Forest Single Stratum
OS
Old Forest Multistrata
OM
Table 3: FVS Stand Classification variable values.
ber of strata can vary across stands (decnet’s replication dimension) in an unpredictable
way, no stratum-specific nodes are supported in decnet.
The user selects a stratum aggregation rule in the FVS Specifications dialog box.
Available rules are topstratum: use values from the highest (tallest) stratum only – note
that this is ALWAYS stratum 1 in FVS; average: average across all strata except use
stratum 1 species for 2 strata or stratum 2 species for 3 strata; middle: use stratum 1
values for 2 strata, use stratum 2 values for 3 strata.
Each FVS output file includes the Structural statistics Table. See the Tutorial
for examples of this FVS output Table.
3.4
Simulated Fires
The dialog box that receives strata aggregation choices also allows the user to set a fire
in each stand at the beginning of the first cycle. This is done with the Fire and Fuels
Extension (FFE) to FVS (see Reinhardt and Crookston (2003)). Specifically, if this option
is selected, decnet adds the commands
Fmin
SimFire
End
to the keyword file just before the PROCESS keyword.
3.5
Associating FVS Variables with Network Nodes
A Netica .dne file has been read previously by decnet so that the number of network
nodes and their identities are available to decnet. The user has entered the FVS output
5
file name in the FVS output file dialog box, and the Netica case file name in the case file
dialog box.
decnet only supports discrete nodes. There are three association algorithms between
FVS variables and network nodes. These association algorithms follow.
3.5.1
FVS Management Plan
decnet finds all management IDs by reading the FVS keyword file. These four character
alphanumeric ID strings must be exactly the same as the values of the decision node
states. A particular management plan’s ID will be written as the decision node’s value
for all cases (one per stand) created by decnet under that management plan.
3.5.2
String-Valued FVS Variables
String-valued FVS variables such as “Stand Classification” can only be associated with
a single “chance” node. The integer value of the FVS variable is the node’s discrete
value. It is assumed that the user has defined the node’s states to correspond exactly and
exhaustively with the possible values of the associated FVS variable.
3.5.3
Multiple Continuously-Valued FVS Variables
Several continuously-valued FVS variables are mapped to a chance node by forming a
weighted sum. Let m be the number of states of the node that these variables will be
mapped to. The interval 0 to 200 feet, 0 to 70 inches, or 0 to 100% is divided into m
equal-width subintervals. If a case’s weighted sum on a node falls into subinterval i, state
i is assigned to the node for that case.
3.6
FVS Keyword File Requirements
The keyword file given to decnet must have the following characteristics.
1. The file needs to be partitioned by management ID (keyword MGMTID into management plan groups. Only these management plans will be used to train the network
in a decnet session.
6
2. All stands to be projected need to be listed in the stand list file following the format
of this file (see Van Dyck (2004, Appendix)). For example, the tutorial’s stand list
file is:
A stand1 fvsrun1.tre NoPointData nl
B stand1 1999 20. 30. 1 hab 1999 1. 1. 1. 1. 1. 1. 1 1 1. 1.
c1 10 c2 10 10 1. 1. c3 1 c4 c5 c6
A stand2 fvsrun2.tre NoPointData nl
B stand1 1999 20. 30. 1 hab 1999 1. 1. 1. 1. 1. 1. 1 1 1. 1.
c1 10 c2 10 10 1. 1. c3 1 c4 c5 c6
3. If a set of pre-existing FVS output files are to be read, one for each stand, these must
be listed in a comment block in the keyword file with the format: decnetfvsoutfiles
(each subsequent record containing a single file name). For example, three output
files would be:
decnetfvsoutfiles
fvsrun1.out
fvsrun2.out
fvsrun3.out
4. The keyword STRCLASS must be present in each management plan group.
5. The keywords TIMEINT, NUMCYCLES, and INVYEAR must be present in each management plan group. All fields for these keywords must be filled-in. These keywords
are used by decnet to figure out the time points of the projection cycles.
6. The keyword and unit number REWIND 2 must appear in every management plan
group following the first one (so that the tree data file is re-read for each management
plan following the first one).
3.7
How decnet Runs FVS
The decnet distribution provides the files fvs.bat and fvs.in. The first file runs FVS
using the second file for input. fvs.bat is:
7
c:\fvsbin\ni < fvs.in
exit
This file runs the variant used in the tutorial which is the Northern Idaho (Inland Empire)
variant, ni.exe. Under the default FVS installation, variant executables are located in
C:\Fvsbin\.
FVS is a single stand simulator: a stand is projected (growth is simulated thru time)
when a PROCESS keyword is encountered (Van Dyck 2003, p. 48). All FVS variant
executables expect the user to input file names for the keyword file (.key), tree data
file (.tre), output file (.out), tree list output file (.tls), output summary file (.sum), and
CHEAPO economic analysis file (.chp). This is accomplished in decnet with the file
fvs.in which follows:
F:\polbio\ncssf\decnetkw.key
F:\polbio\ncssf\fvsrun1.tre
F:\polbio\ncssf\fvs.out
F:\polbio\ncssf\fvsrun.tls
F:\polbio\ncssf\fvsrun.sum
F:\polbio\ncssf\fvsrun.chp
Replace fvsrun1.tre with the name of the first tree data file of your set of stands to be
run.
decnet copies the given keyword file to a dummy file named decnetkw.key. See the
Tutorial for a keyword file example. Before each FVS run, decnet automatically edits the
dummy keyword file so that the supplemental record that follows the STDIDENT keyword
is the ID of the stand being projected in that FVS run.
decnet assumes that the user has created one tree data file for each stand to be projected. These stands are projected by running the FVS variant separately on each stand.
Before each of these runs, decnet automatically edits fvs.run to give the associated tree
data file name for the stand to be projected. See the Tutorial for tree data file examples.
4
Network Case-Based Training and Amount Learned
Given a case’s parent values on a node, the probability distribution for the node under
these parent values (called the probability vector in the Netica User’s Manual (Norsys,
Inc. 1997) is modified by the case’s values via the formulas given the the Netica User’s
Manual (see Norsys, Inc. (1997, p. 74). The theoretical justification for these formulas is
given in Spiegelhalter et al. (1993, Section 4).
8
In what follows, let enew be one plus the number of cases that have a particular set
of values on the parents of a node. Netica calls this value the experience value for that
node and that configuration of parent values. For example, if one case is given a weight
of 1 (called the degree in Netica), then, for the last case of enew − 1 cases, the probability
of this last case’s observed state (called here the casestate) under the case’s set of parent
values is:
Pold (casestateC )
Pnew (casestate) = Pold (casestate) +
enew
(1)
where casestateC is any state other than casestate. This formula can be interpreted
as the updated probability of the casestate event being increased by a fraction of the
probability of any other state occurring divided by the accumulated experience, i.e., the
more experience, the smaller the increase in the probability of casestate. For any other
node state (say statei ),
Pnew (statei ) = Pold (statei ) −
Pold (statei )
enew
(2)
which can be interpreted as the probability of each other state being decreased by a
fraction which is becomes smaller as the accumulated experience increases.
For a particular chance node in the network, Netica updates and stores an e value for
each parent value configuration. These sets of e values are maintained for every chance
node in the network and can be displayed by clicking ??
5
Graphical Displays of the ID Solution
decnet offers two graphical displays of an ID solution: the distribution of a node as a
function of the values of a conditioning node, and the distribution of a set of nodes under
a particular value of a conditioning node. The first display is typically used to show how
the distribution of a habitat suitability node changes across management plans.
For networks that use different nodes to represent habitat suitability at different times,
the second display is typically used to show how the distribution of habitat suitability
changes across time under a particular management plan.
9
6
Stand Spatial Location in decnet
6.1
Sources of Geo-Referenced Stand Data
There are two main sources for geo-referenced tree data files: locally-maintained stand
data sets, i.e., plots that are not under the jurisdiction of the USDA Forest Service’s
Forest Inventory and Analysis (FIA) group, and FIA plot data that has been released to
a decnet user through FIA’s Spatial Data Services Center (SDSC). Geo-referenced plot
data (spatial data) from FIA can be requested by a user submitting a request to the SDSC
(see www.fs.fed.us/ne/fia/spatial/charter.html). If the SDSC review board approves this
request and the user signs request-specific nondisclosure agreements, SDSC will provide
the requested plot data.
6.2
Files
The Suppose software package reads a file referred to as the stand list file. This file
describes each tree data file and has fields for the latitude and longitude of each stand’s
centroid. See Van Dyck (2004, Appendix) for documentation of the stand list file’s format.
decnet reads record types A and B of this file to store the spatial location of each stand
used to create cases for the decision network. This approach allows decnet to use a
common, Forest Service-supported file format to acquire spatial location information.
The FVS keyword LOCATE needs to be present in the FVS keyword file read by
decnet and is used to specify the spatial location of a stand during an FVS projection.
For each FVS run, the LOCATE keyword is edited by decnet to give the latitude and
longitude coordinates of the stand being projected.
6.3
decnet’s use of Geo-Referenced Stand Data
Because replication is over stands in decnet, the following procedure is followed to produce spatial output from decnet.
First, a set of replication stands is identified by finding groups of stands that share
similar values on the stand characteristic variables of latitude, longitude, and elevation.
The user enters the desired number of replication groups and associates each stand with
one of these replication groups.
10
Then, when the user selects Compute impacts of options, decnet writes a file called
“solution.dat” of the distribution of each node for each stand under each management
option. All stands in a replication set have the same distribution. Table 4 gives this
file’s format. This ASCII file is readable by a GIS package. Hence, a map of any node’s
Field
1
2
3
4
5
6
7
8
Variable
replication group number
stand ID
stand centroid latitude
stand centroid longitude
management option
node name
node’s number of values
distribution wherein probabilities
are separated by spaces
Table 4: Output file format.
distribution may be created.
7
decnet Tutorial
7.1
Summary
In this Section, a tutorial is given on the use of decnet to assess the impact that forest
management options have on a Critter’s habitat. This example is based on the introductory example in the FVS user’s manual, see Dixon (2003, pp. 19-69).
The tutorial’s network models how a stand’s age distribution, percent crown cover,
and fire risk affect the quality of a critter’s habitat at two different times and under several
management options.
Specifically, the tutorial has the user build a network in Netica, import it into decnet,
create network training cases with FVS, train the network with these cases, compute
management option impacts with this trained network, and finally, graphically display
these impacts.
11
7.2
Tutorial Steps
1. Start Netica by selecting Start > Run and entering C:
netica
netica 1.12
Netica.exe for example. Within this Netica Application session, perform the following:
(a) For times 1, and 2, create nodes to represent the stand characteristics of Age
Distribution, and Percent Crown Cover. For the two Age Distribution nodes,
use the values young, mixed, and old. For the two Percent Crown Cover nodes,
use the values lt30, from30to60, and gt60.
(b) Create a node for representing a crown fire at time 1. Call this node “CrownFire” and give it the values no fire, and fire.
(c) Create Critter Habitat nodes at times 1 and 2 that have values poor, and good.
(d) Create a Time 1 Management Option node with values no thin, and thin.
(e) Use the mouse to draw the following sets of causal links: (a) from the stand
nodes to the Critter Habitat nodes, (b) from the CrownFire node to the stand
nodes, and (c) from the Management Option node to the stand nodes and the
CrownFire node.
The resultant network should be similar to the one in Figure 1. The .dne file for
this network is listed in the Appendix.
2. Read this network into decnet with File > Read Netica network file.
12
Figure 1: Screen shot of the Critter habitat network.
13
3. To verify that decnet read the .dne file correctly, display this network with File >
Display network.
4. Run FVS to create training cases for this network by selecting Data > Create
cases by first creating FVS output. The required pre-existing keyword file,
fvsrun.key is listed in the Appendix along with its associated tree data files. This
keyword file runs FVS over 10, 10-year cycles starting in 1990. Therefore, the time
points in the network are 1990 and 2090. decnet creates the FVS variable names
as given in Table 2.
After decnet reads this file, the screen should be appear as in Figure 2.
Give decnet a case file name to use when it creates cases from FVS output.
5. Select a method for aggregating strata and click Finish.
14
Figure 2: Screen after the keyword file has been read.
15
6. Next, FVS output variables need to be associated with nodes. This is done by
responding to the list boxes that appear after a case file name has been entered.
Use the associations and weights given in Table 5 to respond to each node’s list box.
For example, Figure 3 shows how to respond to the first node’s list box.
Node
CrownCovert1
AgeDistt1
CritHabt1
CrownFire
CrownCovert2
AgeDistt2
CritHabt2
Associated FVS variable Weight
prcntcancovt1
1.0
standclasst1
N/A
(none)
(none)
prcntcancovt10
1.0
standclasst10
N/A
(none)
Table 5: Node to FVS variable association.
16
Figure 3: Screen with list box for selecting FVS variables to be associated with the
CrownCovert1 node.
17
7. Select Data > Train the network from cases. Figure 4 shows the screen just
after network training.
18
Figure 4: Screen after network training computation.
19
8. Select Assess > Compute impacts of options. The screen should appear as in
Figure 5 after the network has been solved under each management option.
20
Figure 5: Screen after network is solved under each management option.
21
9. Select Assess > Display impacts > Single node to display the marginal distribution of CritterHabitat2 under each management option, see Figure 6.
8
Maintaining and Extending decnet
To modify decnet, the Java Developer’s Kit and the Netica API need to be installed
on the developer’s computer. Assuming this is so, a batch file is provided in the decnet distribution to make the compilation of .class files from source code file (.java
files) convenient. As an example of this file’s use, at a DOS prompt, type compile
FVScalcs.java to compile the decnet source code file, FVScalcs.java. This command
creates the associated Java .class file, FVScalcs.class. The batch file, compile.bat is
as follows:
c:\j2sdk1.4.1_01\bin\javac -deprecation -d . -classpath
"C:\jini\jini2_0\lib/outrigger.jar;
C:\jini\jini2_0\lib\jini-core.jar;C:\jini\jini2_0\lib\jini-ext.jar;
C:\jini\jini2_0\lib\sun-util.jar;.;
C:\Program Files\Netica\NeticaJ_221\bin\NeticaJ.jar" %1
9
decnet Distribution
A list of all files in the decnet distribution appears in Table 10.
File Type
Documentation
Java Source
Java Class
DOS Batch
Tutorial
File(s)
decnet.pdf
Decnet.java, FVScalcs.java, Listwindow.java, Netcalcs.java,
Plotwindow.java, Pltgrphps.java, Rndm.java, Simanel.java,
Plotps.java
Decnet.class, FVScalcs.class, Listwindow.class, Netcalcs.class,
Plotwindow.class, Pltgrphps.class, Rndm.class, Simanel.class,
Plotps.class
fvs.bat, run.bat, compile.bat
critter.dne, fvsrun.key, fvsrun1.tre, fvsrun2.tre, fvsrun.sls, fvs.in
Table 6: Files in the decnet software package.
These files can be obtained over the web by going to www.uwm.edu/∼haas/decnet.html.
22
Figure 6: Screen after the single node graphical display has been selected.
23
Appendix: Tutorial Files
Netica .dne network file:
// ~->[DNET-1]->~
// File created by HaasT at UWisconsin using Netica 1.12
// on Aug 12, 2004 at 12:08:01.
bnet CritterHab {
autoupdate = FALSE;
whenchanged = 1092330462;
visual V2 {
defdispform = LABELBOX;
nodelabeling = TITLE;
nodefont = font {shape= "Arial"; size= 10;};
linkfont = font {shape= "Arial"; size= 9;};
windowposn = (44, 58, 838, 491);
resolution = 72;
drawingbounds = (1080, 720);
showpagebreaks = FALSE;
usegrid = TRUE;
gridspace = (6, 6);
PrinterSetting A {
margins = (1270, 1270, 1270, 1270);
landscape = FALSE;
magnify = 1;
};
};
node Option {
kind = DECISION;
discrete = TRUE;
chance = CHANCE;
states = (no_thin, thin);
parents = ();
probs =
// no_thin
thin
(0.5,
0.5);
title = "Decision Options";
visual V2 {
center = (246, 114);
height = 1;
};
};
node CrownCovert1 {
kind = NATURE;
discrete = TRUE;
chance = CHANCE;
states = (lt30, from30to60, gt60);
parents = (Option);
probs =
// lt30
from30to60
gt60
((0.3,
0.3,
0.4),
(0.3,
0.3,
0.4));
visual V2 {
center = (216, 198);
height = 2;
};
};
// Option
// no_thin
// thin
;
24
node AgeDistt1 {
kind = NATURE;
discrete = TRUE;
chance = CHANCE;
states = (young, mixed, old);
parents = (Option);
probs =
// young
mixed
old
((0.3,
0.3,
0.4),
(0.3,
0.3,
0.4));
visual V2 {
center = (138, 228);
height = 3;
};
};
node CrownFire {
kind = NATURE;
discrete = TRUE;
chance = CHANCE;
states = (no_fire, fire);
parents = (CrownCovert1);
probs =
// no_fire
fire
((0.5,
0.5),
(0.5,
0.5),
(0.5,
0.5));
whenchanged = 1092330462;
visual V2 {
center = (54, 198);
height = 4;
};
};
//
//
//
//
// Option
// no_thin
// thin
;
CrownCovert1
lt30
from30to60
gt60
;
node CrownCovert2 {
kind = NATURE;
discrete = TRUE;
chance = CHANCE;
states = (lt30, from30to60, gt60);
parents = (CrownFire, CrownCovert1);
probs =
// lt30
from30to60
gt60
(((0.3,
0.3,
0.4),
(0.3,
0.3,
0.4),
(0.3,
0.3,
0.4)),
((0.3,
0.3,
0.4),
(0.3,
0.3,
0.4),
(0.3,
0.3,
0.4)));
visual V2 {
center = (50, 114);
height = 5;
};
};
//
//
//
//
//
//
//
25
CrownFire
no_fire
no_fire
no_fire
fire
fire
fire
CrownCovert1
lt30
from30to60
gt60
lt30
from30to60
gt60
;
node CritterHabitatt1 {
kind = NATURE;
discrete = TRUE;
chance = CHANCE;
states = (poor, good);
parents = (CrownCovert1, AgeDistt1);
probs =
// poor
good
// CrownCovert1
(((0.5,
0.5),
// lt30
(0.5,
0.5),
// lt30
(0.5,
0.5)),
// lt30
((0.5,
0.5),
// from30to60
(0.5,
0.5),
// from30to60
(0.5,
0.5)),
// from30to60
((0.5,
0.5),
// gt60
(0.5,
0.5),
// gt60
(0.5,
0.5)));
// gt60
visual V2 {
center = (54, 36);
height = 6;
};
};
node AgeDistt2 {
kind = NATURE;
discrete = TRUE;
chance = CHANCE;
states = (young, mixed, old);
parents = (CrownFire, AgeDistt1);
probs =
// young
mixed
old
(((0.3,
0.3,
0.4),
(0.3,
0.3,
0.4),
(0.3,
0.3,
0.4)),
((0.3,
0.3,
0.4),
(0.3,
0.3,
0.4),
(0.3,
0.3,
0.4)));
visual V2 {
center = (138, 9);
height = 7;
};
};
//
//
//
//
//
//
//
26
AgeDistt1
young
mixed
old
young
mixed
old
young
mixed
old
;
CrownFire
no_fire
no_fire
no_fire
fire
fire
fire
AgeDistt1
young
mixed
old
young
mixed
old
;
node CritterHabitatt2 {
kind = NATURE;
discrete = TRUE;
chance = CHANCE;
states = (poor, good);
parents = (CrownCovert2, AgeDistt2);
probs =
// poor
good
// CrownCovert2
(((0.5,
0.5),
// lt30
(0.5,
0.5),
// lt30
(0.5,
0.5)),
// lt30
((0.5,
0.5),
// from30to60
(0.5,
0.5),
// from30to60
(0.5,
0.5)),
// from30to60
((0.5,
0.5),
// gt60
(0.5,
0.5),
// gt60
(0.5,
0.5)));
// gt60
visual V2 {
center = (216, 36);
height = 8;
};
};
};
27
AgeDistt2
young
mixed
old
young
mixed
old
young
mixed
old
;
FVS keyword file:
stdident
s000000
This is a test stand
*
comment
FVS keyword file ("fvsrun.key") for decnet tutorial.
end
*
invyear
1990.0
numcycle
10.0
*
design
11.0
1.0
stdinfo
118.0
570.0
60.0
315.0
30.0
*
treelist
1
strclass
*
mgmtid
tuid1
thinprsc
1990.0
0.999
*
specpref
2020.0
2.0
999.0
specpref
2020.0
7.0 9999.0
thinbta
2020.0
157.0
*
specpref
2050.0
3.0 -999.0
specpref
2050.0
4.0
-99.0
thinbta
2050.0
35.0
*
thindbh
2060.0
3.0
*
process
*
mgmtid
tuid2
thinprsc
1990.0
0.100
*
specpref
2020.0
2.0
999.0
specpref
2020.0
7.0 9999.0
thinbta
2020.0
157.0
*
specpref
2050.0
3.0 -999.0
specpref
2050.0
4.0
-99.0
thinbta
2050.0
35.0
*
thindbh
2060.0
3.0
*
process
stop
28
34.0
Tree data file for Stand 1:
101
102
102
102
102
103
103
103
103
104
104
105
105
105
105
105
106
106
106
107
108
108
108
109
109
110
110
110
110
111
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
11LP
11WH
31DF
11L
18L
11L
11GF
11L
11LP
11DF
11L
11DF
11DF
16LP
11C
11GF
11DF
11GF
11DF
115
65
1
79
346
80
62
84
95
40
82
12
19
72
1
53
100
61
127
10 73
23 30
2
06 75
11LP
11DF
11LP
11GF
11DF
11C
31GF
11C
11C
11GF
96
104
85
109
94
32
1
58
50
66
05 60 0
09 55 49
0
10 65 0
18 60 0
06 17 0
3 0
10 28 0
10 25 0
14 30 0
07 63
20 38
11 60
20
12 65
11
13
09
10
12
16
2
27
65
38
67
0
0
0
0
0
56
0
0
0
0
0
0
0
0
0
0
0
0
0
0400000000000011
0800000000000011
0600000000000022
0300000000000011
0 10000000000032
0396000000000022
0500000000000011
0400000000000011
0300000000000011
50300000000000011
0550000000000011
42600000000000022
47500000000000022
0 11000000000032
0700000000000022
0700000000000011
0400000000000011
0800000000000011
0400000000000011
80
0300000000000022
0597000000000022
0300000000000011
0700000000000011
0400000000000011
32500000000000022
0700000000000022
0700000000000011
37300000000000011
0700000000000011
Tree data file for Stand 2:
101
102
102
102
102
103
103
103
103
104
104
105
105
105
105
105
106
106
106
107
108
108
108
109
109
110
110
110
110
111
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
11LP
11WH
31DF
11L
18L
11L
11GF
11L
11LP
11DF
11L
11DF
11DF
16LP
11C
11GF
11DF
11GF
11DF
115
65
1
79
346
80
62
84
95
40
82
12
19
72
1
53
100
61
127
10 73
23 30
2
06 75
11LP
11DF
11LP
11GF
11DF
11C
31GF
11C
11C
11GF
96
104
85
109
94
32
1
58
50
66
05 60 0
09 55 49
0
10 65 0
18 60 0
06 17 0
3 0
10 28 0
10 25 0
14 30 0
07 63
20 38
11 60
20
12 65
11
13
09
10
12
16
2
27
65
38
67
0
0
0
0
0
56
0
0
0
0
0
0
0
0
0
0
0
0
0
0400000000000011
0800000000000011
0600000000000022
0300000000000011
0 10000000000032
0396000000000022
0500000000000011
0400000000000011
0300000000000011
50300000000000011
0550000000000011
42600000000000022
47500000000000022
0 11000000000032
0700000000000022
0700000000000011
0400000000000011
0800000000000011
0400000000000011
80
0300000000000022
0597000000000022
0300000000000011
0700000000000011
0400000000000011
32500000000000022
0700000000000022
0700000000000011
37300000000000011
0700000000000011
29
Structual statistics Tables in the FVS Output files:
ACTIVITY SCHEDULE
STAND ID= S248112
MGMT ID= NONE
some comment
Structural statistics for stand: S248112
---------- Stratum1
Rm
---Height
Year Cd
1990 0 9.8 66 75 55 43 26 DF L 2 5.8 30 38 2 7 41 GF C 1 0.0 0 0 0 0 5 --- 0 2 56 3=UR
2000 0 8.8 48 91 29 28 54 GF C 2 0.1 1 4 1 0 7 C WH 1 0.0 0 0 0 0 0 -- -- 0
2 58 3=UR
ACTIVITY SCHEDULE
STAND ID= S248112
MGMT ID= NONE
some comment
Structural statistics for stand: S248112
---------- Stratum1
Rm
---Height
Year Cd
1990 0 9.8 66 75 55 43 26 DF L 2 5.8 30 38 2 7 41 GF C 1 0.0 0 0 0 0 5 --- 0 2 56 3=UR
2000 0 8.8 48 91 29 28 54 GF C 2 0.1 1 4 1 0 7 C WH 1 0.0 0 0 0 0 0 -- -- 0
2 58 3=UR
30
References
Dixon, Gary E. comp. (2003), Essential FVS: A User’s Guide to the Forest Vegetation
Simulator, Internal Report, Fort Collins, CO: USDA Forest Service, Forest Management
Service Center, 193p.
Forest Management Service Center (2004), Suppose Overview,
www.fs.fed.us/fmsc/fvs/description/suppose.php.
Norsys, Inc. (1997), Netica Application User’s Guide, Version 1.05, available from
www.norsys.com.
Spiegelhalter, D. J., Dawid, P., Lauritzen, S. L., and Cowell, R. G. (1993), “Bayesian
Analysis in Expert Systems,” Statistical Science, 8(3): 219-283.
Reinhardt, E. D. and Crookston, N. L. (eds.) (2003), The Fire and Fuels Extension to the
Forest Vegetation Simulator, General Technical Report RMRS-GTR-116, Ogden, UT:
USDA Forest Service, Rocky Mountain Research Station, 209 pages.
Van Dyck, M. G. comp. (2004), User’s Guide to the FVS Writer Data Entry Program,
Internal Report, Fort Collins, CO: USDA Forest Service, Forest Management Service
Center, 12p.
Van Dyck, M. G. comp. (2003), Keyword Reference Guide for the Forest Vegetation
Simulator, Internal Report, Fort Collins, CO: USDA Forest Service, Forest Management
Service Center, 118p.
31
Download