Habplan3 UpGrade

  Download Complete Version
  Habplan documentation
Recent upgrades for Habplan can be downloaded from this location.   The upgrades only include enough class files to upgrade an existing COMPLETE Habplan installation.  To determine if you need to upgrade, run your current version of Habplan and check the version date under the OPTIONS menu.  If it's older than the most recent upgrade posted here, then you need to upgrade.

NOTE:   You might find it worthwhile to read the comments that go with several of the recent upgrades to find out what capabilities have been added recently.  However, you only need to download the most recent upgrade to be brought up to date.  Also, go here to see if you have the most recent Java Runtime Environment.


1)  Click below next to the latest upgrade and allow your browser to unzip the file inside of the same directory that contains the Habplan3 directory.     Don't unzip it inside of the Habplan3 directory.  Allow the unzip process to write over any pre-existing files.  This will only change files inside of the old Habplan3 directory. If your browser won't allow you to write over the pre-existing files, you'll need to save the upgrade zip file and unzip it with another program.

You can back out of an upgrade by installing an older upgrade.  The newest upgrade accumulates all earlier upgrades.   If you can't unzip the file, it may have been corrupted during the download.  Try downloading again, and if that doesn't work ask for the file to be emailed


October 18, 2012  Upgrade ==>:  Click Here
CCFlow and Block components printed out numerous error messages if the polygons were not in the same order as for the parent flow component. Now order won't matter. There were also some meaningless error messages that printed when reading the data for multi-district problems. These were eliminated.

September 27, 2010  Upgrade ==>:  Click Here
An error was corrected in how the BIO2 component computes the maximum possible value for situations where the BIO2 component includes fewer allowed regimes than the other components. Most users would never have encountered this problem.

December 1, 2009  Upgrade ==>:  Click Here
The output menu in Habplan allows you to save the current schedule. Subsequent schedules are appended to the file with a new sequence number, so the results for each schedule can be identified. Previously, the schedule sequence always began at 1 for a new Habplan run. This could result in repeats of sequence numbers if you appended to a previously existing file. Now this is fixed.

March 25, 2009  Upgrade ==>:  Click Here
On some XP machines, you could not read a project XML file if there was any white space in the path. This is fixed now. If it happened to you it would have been a deal breaker. Otherwise, you won't notice that anything has changed.

March 12, 2009  Upgrade ==>:  Click Here
  A minor feature was added. When starting Habplan3, you can add either 1 or 2 arguments to the command line. If 2 arguments, the first is interpreted as the directory where xml project files are found, and the second is the xml project file. If 1 argument, it is interpreted as the project file, which should be in the standard Habplan project directory. Habplan will then automatically read the supplied project file and you just need to push the start button to begin running.

July 28, 2006  Upgrade ==>:  Click Here
  This upgrade includes several minor bug fixes, but no noticeable enhancements.  However, it would be wise to incorporate this upgrade before you rediscover an already fixed bug.

February 2, 2006  Upgrade ==>:  Click Here
  A line was added to the project xml file to control the noModel checkbox status.  It was inadvertantly left out.  Now when you save a run, the flow components will reopen in the appropriate noModel state.  This is a true or false tag called isModel in the xml file.

January 11, 2006  Upgrade ==>:  Click Here
This fixes a bug in how output dialog paths are handled.  This fix relates to the import option checkbox on the output dialog (select "Output" under the File menu).  When "import" is checked, the output dialog will automatically save flow and block output files when you save a run and answer "Yes" to the question about saving for later import.  This was a new feature in the January 2 upgrade.  Saving for later import causes Habplan to open with everything set up as it was when the save was done.  This will save time when you want to return to a Habplan job that you previously worked on.

January 2, 2006  Upgrade ==>:  Click Here
Habplan now stores its saved project settings in an XML file.  Formerly, it used an undocumented internal format.  The new xml format can store everything Habplan needs to restore a previously saved run.  This includes the schedule of regime assignments and the GISViewer settings.  Habplan will still read the legacy format, but it will  write all project files in the new XML format.   The new XML format contains everything you need to write a report generator for Habplan.  For more information, see the manual subsection on "Habplan Project Files" under the section on "Comments on Preparing Input Data".  Note that Habplan will now default to the project directory when you select open or save under the "File" menu.  It will also filter out everything except  .xml files.  You can select the "hbp" filter in the file browser  and then change directories to access old .hbp files.

File paths for the output dialog are also in the xml file and colors for the GIS viewer are stored in an RGB format.

-November 22, 2005  Upgrade ==>:  Click Here
A  bug was fixed in the CCFlow component.   The ratios shown in the lower graph were not always correct for multi-period regimes.

-November 17, 2005  Upgrade ==>:  Click Here
A few bugs were fixed in the regime editor. If you use the regime editor they could be important.
There are some new error messages when reading flow data to indicate if polygons don't appear in all components.
The weights on Flow components were set to adjust faster on large problems.  This should make things more
responsive when you want to change flow trends.

- -November 4, 2005  Upgrade ==>:  Click Here
This fixes a small bug that was in the November 1st upgrade.
It would cause the GISViewer to sometimes exhibit an annoying flashing effect.
Otherwise, read the comments for November 1st.

- -November 1, 2005  Upgrade ==>:  Click Here
This includes some upgrades to the GIS Editor and Viewer.  You can now select polygons
with the selection tool from the polygon data table and pull them into the Regime Editor.
This makes it easy to select many polygons at once and edit their regimes simultaneously.
You access the Regime Editor by right clicking on a polygon in the GISViewer.
See the subsection on  "INTERACTIVE REGIME EDITING"
under the "GIS VIEWER" section in the Habplan manual  for more details.

- -October 13, 2005  Upgrade ==>:  Click Here
This includes some minor bug fixes. Most of these are to the regime editor.
You access this by right clicking on a polygon in the GISViewer.
SEE SECTION 16.1 IN THE HABPLAN MANUAL for more details.

- -July 6, 2005  Upgrade ==>:  Click Here
This includes some bug fixes and slight improvements to the algorithm.  The BestSchedule control form was not
properly restoring the previous schedule, which was a rarely used feature.  The regime editor had a bug that was
fixed.   The implementation of the Metropolis algorithm was changed slightly.  The weights on flow components
now change more slowly.  This helps prevent the solution from "Freezing" in small problems.  Also,  polygons are
now visited in random order on some iterations.  This may help find better solutions for some problems. 

-June 10, 2005  Upgrade ==>:  Click Here
This fixes a bug in the June 8th upgrade.

-June 8, 2005  Upgrade ==>:  Click Here
An interactive regime editor has been added.  This allows you to right click on a polygon in the GIS Viewer
to pop-up an editor window. You can then edit the data for that polygon and have your edits immediately
applied to the current run.  You can also save the edits so they will be applied to future runs.   This can be used
when you decide that the original regimes for a particular polygon  need to be changed, but you don't want to
redo the original data.  Perhaps a forester in the field has some reason for making these changes that was not
evident when the data were first produced.  SEE SECTION 16.1 IN THE HABPLAN MANUAL for more

-May 24, 2005  Upgrade ==>:  Click Here
It is now possible to use a shorthand notation to indicate clearcut regimes and notBlock regimes for
the CCFLOW and BLOCK components. Previously, it was often necessary to create a file of notBlock
regimes for the block component.  Now if your thinning regimes all start with a T, you can simply specify this as
")T".  The ")" tells the BLOCK component that this is a regime prefix that it should look for.  See the manual for more
details under the CCFlow Component Form and Block Component Form sections.

-May 11, 2005  Upgrade (See comments below if you are not yet using Habplan3) ==>:  Click Here
Habplan now has a new way to deal with stands that were cut just before the start of the planning horizon. This
is an issue because these stands contribute to blocksizes until they have achieved "green-up".  For more on how to
handle this issue, look at the Habplan manual under the data section for FLOW components.  There is a subsection on
"PreCut Stands".  The alternative method for handling this, which has been available in Habplan for  several years,
is to designate certain years as "byGone".  However, you may find the "preCut" stand method to be easier.  Finally,
Habread can generate Flow data that correctly handles precut stands.

-April 7, 2005  Upgrade (See comments below if you are not yet using Habplan3) ==>:  Click Here
Some changes were made that make Habplan more efficient for very large problems (say 10,000 polygons).
The GIS viewer was not always saving settings to the correct location. This is now fixed.  A few other minor
improvements were made.

-March 28, 2005  Upgrade (See comments for previous upgrade if you are not already using Habplan3) ==>:  Shift then click Here
This upgrade should be transparent to users.  Some changes were made so the Habplan BlockSize component will work for
very small problems.  There had been some built in assumptions that caused the BlockSize component to abort for problems with
less than 100 polygons that were highly clustered.

-February 22, 2005  Upgrade (Habplan3 Starts Here) ==>:  Shift then click Here

This represents a version upgrade.  From now on, its Habplan3.  Numerous small changes have been made.  For example, Habplan3 allows you to group stand into management Units.   All stands in the same unit must be assigned the same management regime.  FLOW components can be linked now so you can control FLOW trends and goals from a single edit form.
To upgrade an existing Habplan2 installation do the following: 1) rename the Habplan2 directory to Habplan3, 2) install the upgrade.

IMPORTANT -  After you upgrade, Habplan won't run unless you have the J2SE 5.x installed.  Downloading the full JDK will definitely work.  You might get away with just downloading the JRE, if you have a way to unzip the xxx.jar file.

-December 27, 2004  Upgrade (Last Upgrade to Habplan2) ==>:  Shift then click Here

This is mainly a usability and appearance upgrade, i.e. Habplan looks better and it should be easier to read things and find files.  This is in preparation for some more significant upgrades to come.  The next upgrade should include the capability to create Management Units.  This will allow you to group stands into units that must be assigned the same management regime.

IMPORTANT -  After you upgrade, Habplan won't run unless you have the J2SE 5.x installed.  Downloading the full JDK will definitely work.  You might get away with just downloading the JRE, if you have a way to unzip the *.jar file.

-December 15, 2004  Upgrade ==>:  Shift then click Here

The GISViewer has a new capability.  Now when you click on a polygon, the corresponding row in the polygonColorTable is highlighted.  This makes it easy to figure out which polygon you're looking at and who its neighbors are.  Also, the polygon table can read dbf files now.  All the tables in Habgen can now read .dbf files, which is handy when working with shapefiles. The dialogs for opening and saving Habplan settings have been modernized.  A few changes were made to make things work better with the newest version of Java (1.5.0).
IMPORTANT -  After you upgrade, Habplan won't run unless you have the J2SE 5.x installed.  Downloading the full JDK will definitely work.  You might get away with just downloading the JRE, if you have a way to unzip the habplan2.jar file.

-April 7, 2004 Upgrade ==>:  Shift then click Here
Linear Programming capability has been added.  This allows you to create an MPS file from within Habplan, run an lp solver, and pull the solution back into Habplan for display.  A free LP solver is included called lp_solve.  The overall capability for LP within Habplan has some limitations.  The MPS file can only contain information from Flow and CCFlow components.  A BIO2 component provides objective function coefficients.  There is no spatial capability.   You should read the user manual for details.

--November, 2003 Upgrade ==>:  Shift then click Here
This is more suble changes.  The weights no longer reach the machine limits.  They are automatically rescaled before  this happens.

--October 13, 2003 Upgrade ==>:  Shift then click Here
This is a minor upgrade that fixes a few bugs.  Most users probably won't notice any changes.
Most of the changes involve multi-threading.  Both XP and Linux have improved handling of
threads.  For one thing, the GIS viewer works better now because it depended on proper
handling of threads.

--April 04, 2002 Upgrade ==>:  Shift then click Here

An extra column was added to the saveBlock output file to give the total size of the block.   An option to reset the Objective function component weights to 1.0 was added under the "Misc" menu.  Habplan will now ask if you want to reset weights to 1.0 when saving the settings under the "File" menu.  Generally, it's good to say "Yes" so you don't start a future run with inappropriate weights.   A bug was fixed that in rare cases crashed the program when regimes had integer names. A few other minor bugs were fixed, too.

--August 7, 2001 Upgrade ==>:  Shift then click Here

A potentially useful enhancement option was added to the BestSchedule window to implement a dynamic weighting algorithm.   This allows the Metropolis algorithm used by Habplan to become more flexible in searching for solutions.

The Output Window for saving schedules was changed so it is more manageable when there are many objective function components.  A bug was fixed that caused problems when doing multi-district scheduling when the districts had different year ranges.

--July 10, 2001 Upgrade ==>:  Shift then click Here

Another minor upgrade.   A number of small bugs were fixed.   The GIS viewer reads the shapefile much faster now.   A fourth example was added to the examples page .

--May 08, 2001 Upgrade ==>:  Shift then click Here

This is a minor upgrade.   Additional graphical information is now displayed for block components.   This will be useful if you are interested in how much area is devoted to certain sized blocks.   See the Habplan documentation for more information.

--April 18, 2001 Upgrade ==>:  Shift then click Here

GIS display capability has been added.   This uses a standard ArcView shapefile format.   See the Habplan documentation for more information.  You can try this new capability by downloading and installing the examples.jar file.   Open the ex500.hbp example (Example 3 in the documentation), which has the GIS viewer already configured.   There is no shapeFile to go with the old standby example that comes packaged with Habplan.

--February 13, Upgrade ==>:  Shift then click Here

The BlockSize data format was made more flexible.   Now Habplan will read BlockSize data in the original format with 1 polygon per line,  or in a format that has multiple lines per polygon with 1 or more neighbors per line.  This new format will be easier to produce with most GIS software.    See the Habplan documention about Block Data .

--January 2, 2001 Upgrade ==>:  Shift then click Here

Several bugs were fixed that most users (hopefully) never noticed.  The major fixes include:
1) The data reading algorithm is now more robust and gives better error messages.  Prior to this fix some polygon names would not be read properly.   Now any polygon or regime names will be correctly read.   Before, certain characters were causing problems, e.g. @, # and others.
2) Now you can load a different problem and continue without exiting Habplan.  Prior to this some of the settings from the old problem would remain in memory and could have lead to erroneous results.
3)Be sure to check settings that were saved before the upgrade.  They might not be properly read after the upgrade.
4) A new example is available to demonstrate multi-district capabilities.

--September 29, 2000 Upgrade ==>:  Shift then click Here

Several minor bugs were fixed.   For example, there was a problem that occured when the user didn't denote the first year of the schedule as year 1.  Now its OK to denote the first year as something like 2001.

The way the noModel option target values are generated has been changed (improved).  You can enter a few (year,target) values to pin things down and Habplan will internally generate the remaining target values as follows.  The gap between two years is filled via linear interpolation.   After the last year, a free floating spline is used that is influenced by the slope value.   So if you have 50 years and specify 1,100000 and 40,150000 this is what happens:   A straight line is drawn from year 1 to year 40 that goes from 100000 to 150000 for target values.   After year 40 the target is allowed to float somewhat according to your slope and goal settings.

--August 17, 2000 Upgrade ==>:  Shift then click Here

A problem with the graphs was fixed.  The  X-axis and X-grid lines were not properly located.  The capability of reading notBlock options from a file has been added.  See the BlockForm documentation for more information.

--August 1, 2000 Upgrade ==>:  Shift then click Here

Only 1 thing was fixed.  There was a bug in reading Flow data that normally wouldn't
show up.   However, certain combinations of variable length regimes could trigger an
error.   This is now fixed, but is transparent to the user.

--April 10, 2000 Upgrade ==>:  Shift then click Here

A method to have Habplan save the best schedules automatically in now added.  Read the documentation for more information.  Unfortunately, this involved changing the format of the saved settings, so your old files can't be read by this new version.  However, this only affects settings files, not data files, so it's a minor inconvenience.  This upgrade also fixes a few bugs injected during the last upgrade.  For example, the import option is now working properly again.

--March 8, 2000 Upgrade ==>:  Shift then click Here

This is a major upgrade to Habplan2.   The format of the saved settings file has changed, but not the format for input data.  This means that you can't load the settings from jobs you were working on before this upgrade.   However, Habplan will now do a better job of saving all settings at the time you selected  "Save" from the file menu.  Even the current objective function components and the current schedule are saved, so that any saved settings file can be read in with the import dialog to restore the entire state of a former Habplan run.  You may want to install the full download of Habplan in a separate directory, so you can run the old version to cut and paste the settings.   This change to the settings was needed for the parallel processing option.

The other change is that Habplan is now "Network Capable" and can do parallel processing across different machines.   Select the "Remote"  item from the "Option" menu to access this capability.   This feature requires some explanation, which can be found at  the  section on parallel processing .

--November 1, 1999 Upgrade ==>:  Click Here

This upgrade didn't add anything technically important.  The ability to control the number of polygons allowed with passwords is the only additional "feature".  This will be the last upgrade to Habplan1.   All future work will be on Habplan2.

--September 20, 1999 Upgrade. Hold Shift Key and ==>:  hbp092099.jar
Note: If your browser tries to open this file instead of downloading it, go back and do a right-click and select the "save link as..." option.

The notBlock option entry area is now more forgiving.   You can include  regimes as notBlock regimes that don't appear in the current Flow Data, but may occur in a future version without getting an error message.   This allows for more flexibility but you won't be automatically warned about typos.   Click on the notBlock textarea for a list of valid and unknown notBlock options after they are entered.  Make sure the unknown options are not just typos.

A rank of 0 in the Bio-2 input data no longer means that this regime is not allowed.  Now it means that the regime IS allowed and its rank is 0.  So zero is just another rank, which is bigger than -1 but less than 1, etc.  This means you need to check old Bio-2 data sets to make sure any 0 rankings that formerly meant the regime isn't allowed are removed.  Now the only way to disallow a regime for Bio-2 is to not include it for the polygon.  This is consistent with how Flow data are constructed.

--August 6, 1999 Upgrade. Hold Shift Key and Click ==>:  hbp080699.jar

The byGone years options was formerly global.  It is now local to each Flow component and therefore to the flow subComponents, i.e. CC-Flow and BlockSize components.  The global approach to ByGone years could potentially cause problems if flow components have different x-axes, which is often the case.   If you want to salvage saved settings in the Habplan1/hbp directory (or elsewhere) do the following:  The old format had line 3 in the .hbp file holding the byGone yrs.  Now byGone years should be specified on the second line following the Flow Data File name.  So delete the old line 3 and put byGone years into the new position.  If this sounds too complicated, just fill out the component edit forms again and resave them.

--July 20, 1999 Upgrade. Hold Shift Key and Click ==>:  hbp072099.jar

Some minor fixes were made to the killSmallBlocks option so that it will work better on blocks that include polygons managed in byGone years.  The capability to control the acceptable range on the flow Goal has been increased by adding a new input field on the flow form called "Goal +/-".   The old hard-wired default was .05, now you can specify any value.  See the on-line manual under Flow Form or more comments.  This change will cause your old files with saved settings to be read incorrectly, because the flowform settings need another number now.   You can fix this by editing the saved files.  Open the saved file (probably in the Habplan1/hbp directory) and find the line containing the data file that each Flow component reads.  Count down 3 additional lines from the file line and then insert a line containing the number ".05".   Alternatively, go ahead and read the file without fixing it, straighten out the numbers on the component forms, then save the results.

Also, a brief license agreement has been added that will pop-up when you first run Habplan.

--June 10, 1999 Upgrade. Hold Shift Key and Click ==>:  hbp061099.jar

This upgrade eliminates the ICM option, which didn't work well.  It also includes a few fixes to the Biological Type I component.   Some changes are made so the graphs are more efficient.  A future upgrade will include a complete overhall of the graphics to incorporate new JAVA2D capabilities.  One goal will be to allow the user to send graphs to the printer.

--March 15, 1999 Upgrade. Hold Shift Key and Click ==>:  hbp031599.jar

This upgrade makes some changes in the way minimum blocksizes are attained.  Now the desired minimum is attained in small steps.   For example, if you want the minimum to be  100: Habplan starts off with an internal minimum of 5, when this is attained it trys for 10, then 15, etc.   The advantage of this approach becomes evident when the desired minimum (say100) can't be attained in combination with the other components goals.  Then you will see that Habplan can't get past a certain minimum because other components goals can no longer be attained.   Previously, you only knew that Habplan could not converge on yourdesired minimum.

When Habplan is running you will see the current Min and Max (over all years) displayed at the bottom of the BlockSize edit form.  The Target Min value being displayed is the current minimum that Habplan is trying for.   Note: 1) the killSmallBlocks button effects blocks smaller than the Target Min, 2) The incremental approach is not used if the goal is less than 1, and will not be used if you temporarily move the goal away from 1.

--February 25, 1999 Upgrade. Hold Shift Key and Click ==>:  hbp022599.jar

There are 2 major changes in this upgrade. (1)  The BIO-2 component is now more flexible.   Read about that under the BIO II Form section.   The changes to BIO-2 make it more functional for both maximizing NPV and dealing with qualitative rankings.  (2) The BlockSize component now has a button to push to eliminate small blocks when all else fails.  Look at the Block Form section.    I will probably eliminate the ICM algorithm in a future upgrade.  Basically, it's not working and there are theoretical reasons why it's undesirable to fix it.