Version 2.19

From Heureka Wiki
Revision as of 14:52, 15 September 2022 by LinusNilsson (talk | contribs)
Jump to navigation Jump to search

Version 2.19

2022-09-15

Summary

Large performance improvements during simulation due to less aggressive garbage collection. Benchmarks can be found on the Version benchmarking page. Updated to latest version of Zimpl and LpSolve for faster optimization. New importer for data exported from harvester simulator (Oryx). Numerous bug fixes.

New Features

Import data from harvester simulator

Heureka can now import data from harvester simulators. At the moment, only Oryx' simulator is supported. Open the import wizard from Data Management -> Import -> Import Harvester Simulator Data. Some additional stand variables are required when importing this data (plot area, mean age, site index species and site index).

Harvested Wood Products

Heureka can now project the carbon pool in Harvested Wood Products from the forest analysis area as a result of extracted volumes per assortment, and assumptions of the longevity of the derived products.

Improvements

Simulation performance improvements

By switching to server optimized garbage collection, simulation performance has seen a large improvement due to higher CPU utilization and less time spent waiting for GC. The cost of this is higher memory usage during simulation. Hopefully this doesn't cause too much issues. It is still possible to set the maximum number of threads under Settings -> Performance. This is recommended if you intend to be using your computer for other work during the simulation and want Heureka to leave system resources for other tasks.

Optimization performance improvements

Updated Zimpl and LpSolve to the latest versions. This should result in both faster building of the optimization model and solving when using LpSolve as solver. There were also a problem with the previous LpSolve version raising an error for relatively simple problems. Added support for Gurobi 9.5

Harvest clusters calculated without treatments

Harvest clusters are now calculated for all treatment units, instead of only ones that had a final felling treatment performed. The previous restriction was in place to limit the size of the calculation, but proved to only marginally improve performance.

Random Seed

The way Heureka handles random number seeds have been changed to ensure that random number generated are independent of each-other. This might lead to slightly different output (compared to earlier Heureka versions) from some modules even if the module itself has not been changed. If a Treatment Program is generated with seed 0 (default) Heureka has always generated a random seed to use in simulations. For new simulations this seed can be found in both the simulation report and simulation properties.

Optimization Guid in information window

The Guid (a unique identifier) of an optimization is now shown in the optimization information window. This can be useful when fetching optimization results from the database using external tools.

New result variables: Volume harvested

Two new result variables, "Volume Harvested Total (m³sk)" and "Volume Harvested per species (m³sk)", have been added to TreatmentData

Bug Fixes

  • Fixed sorting of simulation results in RegWise. Now sorted by simulation date in descending order
  • Areas projected to a future date lacked some data that was present in the original data
  • Some results were incorrectly calculated after a storm felling thinning
  • Map properties that the user had created would disappear when selecting a new simulation or optimization
  • Now sorts the selected result types in TPG Results view to be consistend across all simulations
  • Overstorey trees are no longer removed automatically when projecting to a future date. A checkbox in the projection dialogue can toggle this behaviour
  • "Other Area" was incorrectly calculated in initial state overview table
  • Fixed infinite loop when calculating moose sapling damage
  • Fixed incorrectly calculated dead wood density and biomass. When simulating decomposing dead wood, biomass was not assigned to the correct size class. This fix affects what decay class initial dead wood is sorted in, as well as the amount of carbon in dead wood.
  • Volume of removed overstorey trees is now considered when calculating the target felling volume in RegWise
  • Fixed incorrect syntax when building an optimization model with a circumference parameter
  • Sometimes when opening a project, the area selection would not be entirely intact
  • Stochastic implementation of sapling damage model was not ready for use and has been disabled. Now always uses deterministic sapling damage

Details from bugtracker

Id Category Severity Summary Fixed_in_version Resolution Comment
0000534 Visualisation StandWise minor Error thrown on screenshot 2.19.0 fixed Error thrown on screenshot
0000529 TPG minor Spruce bark beetle index too high 2.19.0 fixed Spruce bark beetle index too high
0000505 TPG trivial Results Types column sort is inconsistent 2.19.0 fixed Results Types column sort is inconsistent
0000508 TPG major Creating dead wood from dead trees gives wrong results 2.19.0 fixed Creating dead wood from dead trees gives wrong results
0000538 RegWise simulation minor No treatments on NC units dependent on parents' treatments in checkerboard felling 2.19.0 fixed No treatments on NC units dependent on parents' treatments in checkerboard felling
0000509 RegWise simulation minor Wind throw proportion, mortality volume and biomass incorrectly calculated 2.19.0 fixed Wind throw proportion, mortality volume and biomass incorrectly calculated
0000518 RegWise simulation minor Incorrect regeneration species in RegWise when regenerating due to land use change 2.19.0 fixed Incorrect regeneration species in RegWise when regenerating due to land use change
0000515 RegWise simulation minor Volume from removal of overstorey is not included when calculating target final felling volume in RegWise 2.19.0 fixed Volume from removal of overstorey is not included when calculating target final felling volume in RegWise
0000525 RegWise simulation minor Stocastic sapling damage incorrectly calculated? 2.19.0 fixed Stocastic sapling damage incorrectly calculated?
0000536 RegWise simulation feature Show TreatmentUnitExternalData in initial state and simulation results 2.19.0 fixed Show TreatmentUnitExternalData in initial state and simulation results
0000493 Optimization minor User submitted report - No feasible solution with LPSolve 2.19.0 fixed User submitted report - No feasible solution with LPSolve
0000539 Optimization feature Feature: Add support for Gurobi 9.5 2.19.0 fixed Feature: Add support for Gurobi 9.5
0000520 Optimization feature Remove final felling requirement from cluster parameters 2.19.0 fixed Remove final felling requirement from cluster parameters
0000521 Optimization feature Add OptimizationGuid to Optimization info 2.19.0 fixed Add OptimizationGuid to Optimization info
0000502 Optimization minor Simulation results are incorrectly sorted in RegWise table view 2.19.0 fixed Simulation results are incorrectly sorted in RegWise table view
0000510 Map major Map properties disappear when optimization is changed 2.19.0 fixed Map properties disappear when optimization is changed
0000501 Growth / production major Framskrivning av Ipak-data ger negativ tillväxt 2.19.0 fixed Framskrivning av Ipak-data ger negativ tillväxt
0000513 Growth / production minor High sapling moose damage will sometimes cause the simulation to stall 2.19.0 fixed High sapling moose damage will sometimes cause the simulation to stall
0000402 General minor User Submitted Report - Incorrect Syntax 2.19.0 fixed User Submitted Report - Incorrect Syntax
0000528 General tweak Parallelization optimization 2.19.0 fixed Parallelization optimization
0000530 General minor Getting ValueData is slow 2.19.0 fixed Getting ValueData is slow
0000512 General minor "Other area" is not reset when selection changes 2.19.0 fixed "Other area" is not reset when selection changes
0000522 General feature Add information regarding which random seed was used 2.19.0 fixed Add information regarding which random seed was used
0000514 General feature New result variables: Volume Harvested 2.19.0 fixed New result variables: Volume Harvested
0000524 General major Import Stand Register and Map unhandled exception 2.19.0 fixed Import Stand Register and Map unhandled exception
0000535 General minor Total CO2 from HarvestedWoodProducts is wrong 2.19.0 fixed Total CO2 from HarvestedWoodProducts is wrong
0000516 General minor Soil carbon stock 2.19.0 fixed Soil carbon stock
0000526 General minor Simulation report and optimization info fail to render 2.19.0 fixed Simulation report and optimization info fail to render
0000537 General tweak Bark thickness model unnecessary memory allocations 2.19.0 fixed Bark thickness model unnecessary memory allocations
0000517 General feature Garbage collection change 2.19.0 fixed Garbage collection change
0000527 General minor When opening a RegWise project with inventory years, the analysis area is not intact 2.19.0 fixed When opening a RegWise project with inventory years, the analysis area is not intact
0000533 Data import minor Fel i framskrivning till nytt startdatum om bestånd har överståndare eller naturvårdsträd 2.19.0 fixed Fel i framskrivning till nytt startdatum om bestånd har överståndare eller naturvårdsträd
0000503 Data import feature New feature: Import data from harvester simulator 2.19.0 fixed New feature: Import data from harvester simulator
0000504 Data import minor Areas projected to a future date are lacking some data fields present in the original data 2.19.0 fixed Areas projected to a future date are lacking some data fields present in the original data