Partial list of more important changes. Smaller bug fixes and interface enhancements not listed.
Added Heteroscedastic Weighting to Linear Regressions
(2019.2.6) Heteroscedasticity is a term that describes residuals of a linear regression having non constant variance over their measurement range. Ordinary least squares regression methods assume there is no heteroscedasticity or that the variability of errors is constant over the range of measurements. If the variance is not constant, then a model of the error variance itself can be used to correct for heteroscedasticity. Applying a model for error does not bias estimates of linear regression coefficients. For example, the error in tree height measurements is expected to increase with height because taller trees are more difficult to measure accurately than shorter trees. As a result, height measurements of taller trees show greater variability of error than do smaller trees. When estimating a scaling factor for a height model, (called sub sampling in Assisi), the residuals often exhibit heteroscedasticity. A weighting factor such as 1/DBH can be used to decrease error variance for taller trees. The result is a statistically similar scaling factor, but with much smaller standard error.
In the example above, the weighted linear regression (right) shows a large improvement to SE: 23 vs 3 so we can have more confidence in the corrected linear regression’s slope. The difference in the slopes themselves, .88 vs .86, is statistically insignificant because correcting for heteroskedasticity does not itself bias a result. However, if the sample errors have a relationship to DBH, then applying 1/DBH would bias the result. Height of course is dependent on DBH, but the sample error itself is assumed to be independent of DBH. This version of Assisi applies a 1/DBH weighting factor for lowering linear regression heteroscedasticity for total, merch, sawlog and crown height model calibrations.
Regress Scaling Factors Relative to BH
(2019.2.6) Many height equations estimate heights relative to breast height, not ground. For these equations it’s appropriate to regress scaling factors during Assisi’s Sub Sampling process also relative to breast height. Assisi has been regressing all heights relative to ground up to this version. Regressing scaling factors relative to breast height will produce slightly different scaling factors. The results are predicted heights different in this version than earlier versions by generally less than +-1’ for 100’+ trees with smaller differences for shorter trees. This will cause small volume differences when merch heights differ more than the scaling multiple. For example, if we assume merch is about 80% of total and the scaling multiple is 1 ft, then only a few trees with greater than 1’ differences would be expected to have a very small difference in volume. When a difference does occur, it should be considered a more accurate prediction, however. Of course, when no sub sampling is done or when scaling factors equal 1 (not significant), then there will be no difference at all with this version. Here is the difference in total heights for trees in the sample stand 070704:
Merch Height in Progress Viewer not Reflecting Assisi Added Logs
(2019.2.6) When logs called in the field sum to less than merch height, Assisi will add logs up to merch. This is common, for example, when heights are called to foreign sort specs but not to domestic sort specs. The compiler is used to estimate the remaining height from top of foreign to a domestic merch. Assisi performs this calculation correctly, but within the Progress Viewer merch height only reflected the called heights, not the added domestic height. This was a display issue only: computations and database results include the domestic heights. Merch height is now reported in the Progress Viewer as the sum of both field and Assisi added logs.
Added “Stand or Type” Option for Broken Top Regressions
(2019.2.1) Added a broken height estimation option to first use stand level regression if available then type level regressions. If broken top regressions by species and type are defined in a calibration, Assisi can use them to estimate missing broken tops. However, if broken tops are measured in the field, Assisi will run regressions and use those results. For species with no field measurements, Assisi will default to the calibration’s type level broken tops regressions.
Added Check for Stratified Host and Target Calibrations
(2019.2.1) When performing a stratified calibration, the target and host calibration cannot be the same. If a calibration (the “host”) is set to save its results (regressions and scaling factors) to another calibration (the “target”), the two calibrations cannot be same, or results will overwrite the host calibration’s models. A stratified calibration is designed to save its results by species and type to a different calibration called the target so that the target calibration can later be used on stratified sample data.
Change “Default” Defect by Species to “Additional” Defect by Species
(2019.2.0) The species level defect, set in Calibration Editor has always been a “default” rather than an “additional” defect… despite the editor label of “Add Def”. In other words, the defect entered was only used when no defect was measured in the field. If a defect was measured in the field, then the “Add Def” value was not used. This has been changed to be a true “additional defect”. Now the value entered as “Add Def” is added to any defect measured in the field. Furthermore, “Add Def” was only applied to log volumes, not tree volumes. In other words, species where Volume Method = Volume Equations or Volume Tables did not have the Add Def value applied. IE, there was no default defect unless volumes were calculated from logs. Now, Add Def is applied to Volume Equations and Volume Tables as well.
Added FPS and FVS Damage Codes
(2019.2.0) Two new fields to hold FPS and FVS damage IDs were added to the AllowedDamage and AllowedDamageSeverity tables. Assisi can new easily map FPS or FVS damage codes to its own definitions of damage codes during FPS or FVS import.
Added Save Stands with Errors and Save Stands with Warnings Options to Compile Ribbon
(2019.2.0) An option to save stands that fail or that have warnings during compile was added.
Stand Age from Non-Site Index Trees
(2019.2.0) Age measurements on trees not flagged as site index trees can now be used for stand age.
Include Broken Top Snags in Regressions
(2019.2.0) Option to include broken top heights from snags in broken height regressions was added. When broken top heights are being sub sampled, you can choose to include or exclude measured broken heights from broken top snags in the regression. Broken top heights from live trees are always included in the regression, but if you feel broken top snags are similar enough to live broken tops, you may want to include their broken heights in the regression as well.
(2019.2.0) Parsing was treating a subtraction that followed an “IF()” or “SI()” as a negation.
(2019.2.0) If all plots in a cruise were empty, compile results were treated as not cruised. I.e., the results were null. This has been changed to results being 0. Although a cruise with all empty plots is rare, a clearcut action does empty out plots until a plant action occurs. These stands will have 0, not null volume now and will average as 0’s in stand averages.
(2019.2.0) The ability to truncate field called merch or sawlog log tops to calculated merch or sawlog heights is now an option set in calibration. Truncating merch has been available, but this option renames and adds sawlog truncation.
Young Growth DBH and Total Height Model Settings
(2019.2.0) The settings for the young growth model were separated into DBH growth and total height growth fields in the Calibration Editor.
Section Lengths by 3rds
(2019.2.0) Sections can now be called by 3rds to support FPS methods. When Cruise Design Section Length is set to “Thirds”, Assisi will interpret log IDs 1, 2, and 3 as 1/3 sections of total tree height rather than a fixed section length.
Tree & Count Tree Stats Added
(2019.2.0) PSE and CV for both measure and count trees added to summary tables by stand, species and species group.
IsInPlot Changed To IsOffPlot
(2019.2.0) Trees.IsInPlot has been changed to Trees.IsOffPlot.
CashFlow, Companies Added to Operations
CashFlow and Companies tables added to Operations.
(2019.1.0) A BrokenDiameter field was added to Trees table for storing measured broken diameters along with the existing broken heights.
(2019.1.0) A TaperDiameter field was added to Trees table for storing measured taper diameter along with the existing taper heights.
Operations is now in the process of being added to Assisi.Operations has three primary tables: Operations, OperationUnits and OperationUnitActions. Operations are a collection of units with each unit having a history of actions.Tables added to support Operations are: Operations, OperationUnits and OperationUnitAction, CashFlow and Companies. The SummaryByCashFlow is now an operations summary table rather than a simulation summary table. Simulation cash flow is now stored in the SummaryByYear table. Operations are in ways similar to simulations; however, simulation actions are scheduled on yearly timesteps whereas operations have no time step limitations.
StarBAR Count to Measure Sample Plots
StarBAR is a method of determining the optimum number of count and measure plots to sample when doing a double sample cruise design. StarBAR calculations have been added to the Sample Summary report and can also be added as columns to various Inventory views, using the new custom views feature.To support StarBAR, additional measure and count tree fields were added to SummaryByStand, SummaryByStandSpecies, SummaryByStandSpeciesGroup and SummaryByPlot.
Species Groups and DBH Groups Added
Groups for Species and DBH ranges can now be assigned and summarized.
SummaryByStand now Primary Inventory Summary Table
To speed up and make deletion of inventory faster, all inventory summary tables now use the SummaryByStand table as their primary table rather than the Stands table. Clearing inventory can now be done by simple deleting rows in the SummaryByStands table and letting the database cascade delete to all the other inventory tables.
Allowed Values Table Standardized
Most of the Allowed values tables are being moved to a standard design of: Title, Code, ID, Description, Enum.
Custom Table Views
Added ability to add custom columns to the Inventory Stands table view. Column values can be any valid SQL statement.
(Partial list, sorry.)
Added Clark & Saucier 1990 Weight Equations(2017.2.31) Weight equations for Southern Pine & Slash Pine were added. Both total height and 4” merch height equations were added. The same ratio approach is used for deriving segment weights from tree weights.
Stand Definitions on FLIPS Import
The FLIPS fields used to create Assisi stand names are now user definable. Stand mapping defaults to the fields: TOWNSHIP+RANGE+SECTION+TYPE but can be changed to just TYPE if desired.
FLIPS TYPE Mapped to Assisi Compartment
FLIPS TYPE field is now imported as Stands.Compartment. This is independent of how Assisi Stand names are defined.
Added Management Type to Stands
Management types can now be assigned to stands as well as plots.
Summary by DBH Class Added to Market Report
The Market Summary report shows volumes for each Grade, Sort or Product summed by diameter classes. Diameter classes can now be either log diameter inside bark or tree DBH classes.
Min Butt Added to Grades and Sorts
Min Butt and Max Butt Changed to Float
Species Groups Added to Stand Simulator
A species group level was added to the Stand Simulator for viewing results. Now plots can be shown by stand, species groups, species and individual trees.
Code, ID and Description added to Species Groups
Character code, numeric ID and description fields have been added to Species Groups.
Additional Sample Types Added
Additional sample types were added to accommodate the variety of BIA sample measures. These tables follow the same approach as existing “Allowed…” values tables where the options are user definable and show up as plot and tree level values. The tables added are…
AllowedCover - Cover values such as Forest, Wetland, Swamp, Non-Forest, etc.
AllowedDensity - Density levels for cover measurements.
AllowedManagement - Management values for plot measurements.
AllowedSites - Site values for plot measurements.
AllowedSoundness - Soundness values for tree measurements.
AllowedStructure - Structure values for plot measurements.
AllowedHabitats - Habitat types for plot measurements.
AllowedPrescription – Prescription types for plot measurements.
Added BIA BOFRP Database Import
The Bureau of Indian Affairs maintains a forest inventory system through its Branch of Forest Resources and Planning (BOFRP).
Reconfiguring Allowed Values Tables
The format of the “allowed values” tables such as AllowedForestTypes is to have fields called “ForestType”, Code, ID, Description, Enum. These fields allow for describing these lists using a convenient title (ForestType), a character code (Code), a numeric code (ID), a full descriptions (Description) and an enumeration (Enum) which is another unique way of describing something in a way accessible to source code. Having all these fields has so far meant Assisi can support all the various ways such lists are used in the forestry field.For this release, the following tables were brought up to this standard: AllowedDamages, AllowedDamageSeverities, AllowedSilviculturalCodes, AllowedSoilTypes, AllowedVigorCodes
In addition to making the database design changes, set the various new measurement fields to appropriate values according to current measurement field values. For example, after changing the AllowedDamages table to the new design and adding the new “Damage” field to the Trees table, set the values of the new “Damage” field according to the values of the existing “DamageCode” values. Then delete the now no longer used Trees.DamageCode field.
Change Snag Flag from DamageSeverity to IsSnag
Previously, a tree’s DamageSeverity setting determined whether a tree was live or dead. If DamageSeverity was at or above a Calibration’s SnagMinDamageSeverity level, the tree was dead.Being live or dead is now a specific field: IsSnag. The existing DamageSeverity field remains, but it is now only used as an optional indicator of the severity of values in the Damage field. In other words, DamageSeverity no longer determines if a tree is a snag when processed by Assisi. The IsSnag field determines live/dead.Along with making this design change to the database, the Trees.IsSnag field should be set to true or false as determined by DamageSeverity values and the Calibration.SnagMinDamageSeverity setting. Then recompile all data so that the IsSnag field is set correctly in summary tables.
Added Plot Level QMD
In keeping with common practice, Assisi calculates QMD using stand level BA and TPA. An alternative is to calculate QMD per plot and average across plots as is done with most other stand level statistics. The two methods will give different results with the stand level result being consistently smaller than plot level averages.Nevertheless, it is widely assumed that most usages of QMD, Reineke SDI and Curtis RDI for example, used stand level QMD values in their development and Assisi continues to use stand level QMD in these equations. So that a true statistical estimate of QMD is available, the plot average QMD has been added to both reports and database. Stand level QMD is now noted as “QMDS” and plot level QMD as simply “QMD”. Plot level QMD will also have related PSE and CV values.
Added DBH PSE and CV
Along with QMD PSE and CV, plot level PSE and CV for DBH has been added to reports and database summary tables.
Added Slope, Aspect and Sample State to Cover Table
Slope, aspect and sample state were added to support FIA condition sampling and plot selection by cover.
Added FTP Client
A FTP client was added to make accessing Assisi’s FTP site easier. Now, you can access ftp.AssisiSoft.net directly through Assisi. Directories can be browsed and file dragged and dropped to execute transfers. FTP settings are stored in Assisi so there is no more fussing with FTP settings. Login info is stored in the encrypted license file so remembering a username and password is not necessary.
Weight Fields Added
Weight is now a formal database field like volume, carbon and user defined are. Weight methods and settings can now be set in the Calibration Editor.Equations from PMRC for Southern regions were added.
Southern Species Models from Souter Added
Taper, Form Point and DIB models from Clark & Souter 1991 were added for southern species.
Atterbury SuperEasy Import Added
Data from the Atterbury SuperEasy handheld data collector can now be imported.
Market Products Now Defined by Grade and Sort
Market products are no longer just groups of grades: they are tags attached to log volumes like grades and sorts but products use grades and sorts as criteria. In other words, logs are graded and sorted, then products are assigned according to what grade and sort a log was given. This approach more closely follows common grading and marketing practices.Trees can now be segmented according to product definitions as well as grades or sorts, so that volume is optimized.
Added option to not grade tree tips.
Scaling Height now Saved to Database
Scaling height is the height to which a tree is segmented into logs. Normally this is the same as merch height. However, when a tree has a broken top or trees are set to be scaled to a height different than a measured merch, then the scaled height will be different than merch. Assisi now saves the scaled height, along with all the other heights, when compiling, growing or simulating.
Added Option to Ignore Broken Tops
Broken tops reduce volume to points below a missing merch height. Typically, the missing merch or total height is estimated using regression or height equations so that taper methods can still be properly used for estimating diameters. An accurate estimate of volume can then be made for the remaining portion of the tree.In order to estimate both the actual volume (reduced by broken tops) and the theoretical volume (not reduced by broken tops) an option to include or exclude broken tops was added to calibrations. By running both options, one can calculate the missing volume due to broken tops.
Added Bark Units (IB or OB) Options for Merch, Sawlog and Scale Diameters
Scaling diameters for merch, sawlog and scale heights can now be set in inside or outside bark units.