A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

Castor

A spatial, large-scale analytical model for simulating forest harvest and it's potential influence on other forest values (e.g., wildlife habitat).
https://github.com/bcgov/castor

Category: Biosphere
Sub Category: Forest Observation and Management

Keywords

caribou for forest-analysis forestry

Keywords from Contributors

flnr forest-management shiny-apps

Last synced: about 9 hours ago
JSON representation

Repository metadata

Castor - decision support model for forest and land management

README.md

img

Castor - Forest and Land Use Simulator

Description and Usage

Castor is a spatial, large-scale analytical model for simulating forest harvest and it's potential influence on other forest values (e.g., wildlife habitat). It was first designed to support the government of British Columbia's caribou recovery program, by providing a tool to spatially estimate future forestry and caribou habitat conditions under hypothetical, alternative forest management regimes. It has since been and will continue to be expanded and developed to examine other forest values.

The code in this GitHub is open-source and provides a transparent record of the Castor model. Anyone is free to download, reproduce and apply the model. However, this is not a self-contained piece of software. In particular, using Castor as-is requires accessing our data management framework, or modifying the code here to work with your preferred data structure. The repository here also consists of code to create backend apps to develop Castor model scenarios and review outputs.

Getting Help or Reporting an Issue

We've developed a Wiki page to help you with understanding the structure and functions of the Castor model. We are also working on a tutorial that will describe the steps to get a basic Castor model up and running.

Once you are familiar with Castor, if you find any errors with the code, please submit them via the GitHub "Issues" tab.

For more information on working with the Castor team and model for a forest management problem, please don't hesitate to contact Tyler Muhly ([email protected]), Team Lead, Strategic Analysis, Forest Analysis and Inventory Branch, Office of the Chief Forester, Ministry of Forests.

Core Team

Tyler Muhly, Team Lead, Strategic Analysis, Forest Analysis and Inventory Branch, Office of the Chief Forester, Ministry of Forests

Kyle Lochhead, Ecological Modeling Specialist, Forest Analysis and Inventory Branch, Office of the Chief Forester, Ministry of Forests

Elizabeth Kleynhans, Ecological Modeling Specialist, Forest Analysis and Inventory Branch, Office of the Chief Forester, Ministry of Forests

Contributors

Mike Fowler, Spatial Data Analyst, Forest Analysis and Inventory Branch, Office of the Chief Forester, Ministry of Forests

Cora Skaien, Ecological Modeling Specialist, Forest Analysis and Inventory Branch, Office of the Chief Forester, Ministry of Forests

Requirements

The model is coded using the R programming language. Thus, you will need to download program R to work with the code. We also recommend downloading the free version of RStudio, which provides a nice integrated development environment for working with R.

R consists of many 'packages' developed by R users that bundle-up specific functions for manipulating, analyzing and visualizing data. The packages needed to run Castor are documented in the respective pieces of code where they are used, and we do not list them all here. However, we note here that you will need the open source simulation engine 'SpaDES' R package to use Castor. We recommend familiarizing yourself with this package if you want to use Castor.

License

Copyright 2020-2021 Province of British Columbia

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Purpose of Castor

The purpose of Castor is compare alternative plausible scenarios of various human-centric forestry decisions in a simulation environment. The relative comparison between scenarios is the true value/purpose of these analyses, whereas, the absolute values of the outcomes should be used with caution. What is deemed plausible is left to the quality of the information being used and the resulting logic of the human-centric decisions about harvest scheduling.

Assumptions and Overview

The Castor model is a spatial strategic model used for quantifying and accounting the impacts of forest management on various indicators over long time periods. Thus, its ability to design site specific plans and their corresponding operations is very limited. Fine scale, operational decisions are important but their complexity is simplified in Castor to meet the resolution (e.g., 1 ha) and scale (e.g., multiple Timber Supply Areas, very large landscapes (> 1 M ha), long time horizons > 100 years) of the study area. The model uses empirical yield curves (from provincial growth models) to project the forest inventory (VRI) attributes into the future. Human-centric decisions around harvest scheduling are the main assumptions which include WHAT, WHERE, WHEN and HOW much timber to harvest. The model is given a demand of timber volume for each time period (i.e., the HOW much) and the goal of Castor is to “find” that timber volume while meeting various constraints like no harvest areas and aspatial land cover constraints. Castor uses some rules around minimum harvest criteria (i.e, merchantable volume > 150 m3 per ha, etc) to determine WHAT gets harvested. Castor uses a priority (closest to disturbance, oldest age, etc) to figure out the WHERE and WHEN to “find” the timber volume in a specific time period. Castor is “greedy” in that it can’t figure out how to find the optimal harvest schedule. The result of a Castor simulation is a plausible harvesting sequence that allows cutblock size, adjacency and other spatial considerations.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 6 days ago

Total Commits: 3,299
Total Committers: 14
Avg Commits per committer: 235.643
Development Distribution Score (DDS): 0.65

Commits in past year: 178
Committers in past year: 5
Avg Commits per committer in past year: 35.6
Development Distribution Score (DDS) in past year: 0.511

Name Email Commits
Lochhead K****d@g****a 1154
Muhly T****y@g****a 761
Kleynhans E****s@g****a 511
Lochhead K****A@B****V 323
coraskaien c****n@g****a 221
Muhly T****Y@B****V 191
Sasha Bogdanovic s****a@r****m 70
mwfowler m****r@g****a 29
Burgar J****r@g****a 22
Sasha Bogdanovic s****a@m****m 11
repo-mountie[bot] 4****] 2
Joanna Burgar j****r@J****n 2
Brett M b****e@n****a 1
'kylelochhead' '****d@g****' 1

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 45
Total pull requests: 204
Average time to close issues: over 1 year
Average time to close pull requests: about 2 hours
Total issue authors: 4
Total pull request authors: 4
Average comments per issue: 1.51
Average comments per pull request: 0.04
Merged pull request: 179
Bot issues: 11
Bot pull requests: 4

Past year issues: 2
Past year pull requests: 0
Past year average time to close issues: 7 months
Past year average time to close pull requests: N/A
Past year issue authors: 2
Past year pull request authors: 0
Past year average comments per issue: 0.5
Past year average comments per pull request: 0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/bcgov/castor

Top Issue Authors

  • TylerMuhly (27)
  • repo-mountie[bot] (11)
  • KyleLochhead (5)
  • agehlers (2)

Top Pull Request Authors

  • TylerMuhly (178)
  • ElizabethKleynhans (13)
  • KyleLochhead (9)
  • repo-mountie[bot] (4)

Top Issue Labels

  • enhancement (11)
  • bug (8)
  • documentation (1)
  • computing (1)
  • invalid (1)

Top Pull Request Labels


Dependencies

.github/workflows/static.yml actions
  • actions/checkout v3 composite
  • actions/configure-pages v2 composite
  • actions/deploy-pages v1 composite
  • actions/upload-pages-artifact v1 composite

Score: 5.683579767338681