Skip to contents

Create a planning problem

Create the core planning problem from planning units, features, costs, and optional spatial data.

create_problem()
Create a planning problem input object

Management actions and outcomes

Define feasible management actions and their ecological and economic consequences.

add_actions()
Add management actions to a planning problem
add_effects()
Add action effects to a planning problem
add_benefits()
Add benefits
add_losses()
Add losses
add_profit()
Add profit to a planning problem

Targets and constraints

Specify representation targets, resource limits, and fixed planning-unit or action decisions.

add_constraint_targets_absolute()
Add absolute targets
add_constraint_targets_relative()
Add relative targets
add_constraint_area()
Add area constraint
add_constraint_budget()
Add budget constraint
add_constraint_locked_actions()
Add locked action decisions to a planning problem
add_constraint_locked_planning_units()
Add locked planning units to a problem

Spatial relationships

Define and store neighborhood, boundary, distance, and user-supplied relationships among planning units.

add_spatial_relations()
Add spatial relations
add_spatial_boundary()
Add spatial boundary-length relations
add_spatial_rook()
Add rook adjacency from polygons
add_spatial_queen()
Add queen adjacency from polygons
add_spatial_knn()
Add k-nearest-neighbours spatial relations
add_spatial_distance()
Add distance-threshold spatial relations

Atomic objectives

Add ecological, economic, intervention, and spatial objectives to the planning problem.

add_objective_min_cost()
Add objective: minimize cost
add_objective_max_benefit()
Add objective: maximize benefit
add_objective_min_loss()
Add objective: minimize loss
add_objective_max_profit()
Add objective: maximize profit
add_objective_max_net_profit()
Add objective: maximize net profit
add_objective_min_intervention_impact()
Add objective: minimize intervention impact
add_objective_min_fragmentation_planning_units()
Add objective: minimize planning-unit fragmentation
add_objective_min_fragmentation_action()
Add objective: minimize action fragmentation

Multi-objective methods and run designs

Choose how multiple objectives are explored and define the combinations of weights or constraints to evaluate.

set_method_weighted_sum()
Set the weighted-sum multi-objective method
set_method_epsilon_constraint()
Set the epsilon-constraint multi-objective method
set_method_augmecon()
Set the AUGMECON multi-objective method
set_runs_grid()
Define an automatic multi-objective run grid
set_runs_manual()
Define a manual multi-objective run design
set_runs_control()
Control multi-objective run behavior

Solvers and optimization

Select and configure a mixed-integer programming solver, then solve the planning problem.

set_solver()
Configure solver settings
set_solver_gurobi()
Configure Gurobi solver settings
set_solver_cplex()
Configure CPLEX solver settings
set_solver_cbc()
Configure CBC solver settings
set_solver_symphony()
Configure SYMPHONY solver settings
solve()
Solve a planning problem

Inspect solutions

Extract run metadata, objective values, spatial decisions, features, and target outcomes from stored solutions.

get_runs()
Get run-level metadata from a solution set
get_objectives()
Get objective values from a solution set
get_planning_units()
Get planning-unit results from a solution set
get_actions()
Get action results from a solution set
get_solution_states()
Get planning-unit states from stored solutions
get_features()
Get feature summary from a solution set
get_targets()
Get target achievement summary from a solution set

Manage solution sets

Filter, combine, and remove duplicate alternatives before analysis or reporting.

solution_filter()
Filter solutions in a solution set
solution_append()
Append solutions from another solution set
solution_unique()
Keep unique solutions in a solution set

Objective-space analysis

Characterize performance trade-offs, empirical extremes, distances, knees, and neighboring alternatives in objective space.

frontier_extremes()
Find objective-wise extreme solutions
frontier_distances()
Compute distances to observed ideal or nadir points
frontier_knee()
Identify knee solutions on an observed Pareto frontier
frontier_neighbors()
Identify neighboring solutions in objective space

Decision-space analysis

Quantify recurrence, similarity, and consistency in spatial decisions across alternative solutions.

selection_frequency()
Calculate selection frequency across solutions
selection_similarity()
Calculate structural similarity among solutions
selection_consistency()
Summarize consistency of planning-unit states

Objective-decision linkage

Relate changes in objective performance to changes in spatial prescriptions and identify informative solution contrasts.

linkage_distances()
Compare objective and decision distances
linkage_transition()
Describe the transition between two solutions
linkage_turnover()
Measure decision turnover along an objective-space neighborhood
linkage_contrasts()
Select informative solution contrasts

Visualize results

Plot objective trade-offs, planning-unit selections, management actions, and spatial feature distributions.

plot_tradeoff()
Plot trade-offs from a solution set
plot_spatial_planning_units()
Plot selected planning units in space
plot_spatial_actions()
Plot selected actions in space
plot_spatial_features()
Plot spatial feature values from a solution set

Core objects

Classes used to represent planning problems and their resulting solution sets.

problem-class Problem
Problem class
solutionset-class SolutionSet
SolutionSet class

Advanced model inspection

Compile and inspect the underlying optimization model.

compile_model()
Compile the optimization model stored in a Problem

Example data

Simulated datasets and data loaders used in package examples and documentation.

sim_dist_features
Simulated feature distribution
sim_features
Simulated features
sim_multiaction
Simulated spatial multi-action planning inputs
sim_pu
Simulated planning units
sim_pu_sf
Simulated planning units
load_sim_features_raster()
Example feature raster
load_sim_multiaction()
Load the simulated spatial multi-action example

Deprecated functions

Functions retained temporarily for backward compatibility.

add_constraint_locked_pu() obsoleta
Add locked planning units to a problem
add_objective_min_fragmentation_pu() obsoleta
Add objective: minimize planning-unit fragmentation
get_pu() obsoleta
Get planning-unit results from a solution set
plot_spatial_pu() obsoleta
Plot selected planning units in space
run_grid() obsoleta
Define an automatic multi-objective run grid
run_manual() obsoleta
Define a manual multi-objective run design
mo_control() obsoleta
Control multi-objective run behavior