Package: prioritizr
Type: Package
Version: 8.1.0
Title: Systematic Conservation Prioritization in R
Description: 
    Systematic conservation prioritization using mixed integer linear
    programming (MILP). It provides a flexible interface for building and
    solving conservation planning problems. Once built, conservation planning
    problems can be solved using a variety of commercial and open-source exact
    algorithm solvers. By using exact algorithm solvers, solutions can be
    generated that are guaranteed to be optimal (or within a pre-specified
    optimality gap). Furthermore, conservation problems can be constructed to
    optimize the spatial allocation of different management actions or zones,
    meaning that conservation practitioners can identify solutions that benefit
    multiple stakeholders. To solve large-scale or complex conservation
    planning problems, users should install the Gurobi optimization software
    (available from <https://www.gurobi.com/>) and the 'gurobi' R package (see
    Gurobi Installation Guide vignette for details). Users can also install the
    IBM CPLEX software (<https://www.ibm.com/products/ilog-cplex-optimization-studio/cplex-optimizer>) and
    the 'cplexAPI' R package (available at <https://github.com/cran/cplexAPI>).
    Additionally, the 'rcbc' R package (available at
    <https://github.com/dirkschumacher/rcbc>) can be used to generate solutions
    using the CBC optimization software (<https://github.com/coin-or/Cbc>). For
    further details, see Hanson et al. (2025) <doi:10.1111/cobi.14376>.
Authors@R: 
    c(person(c('Jeffrey', 'O'), 'Hanson',
        email='jeffrey.hanson@uqconnect.edu.au', role = c('aut'),
        comment = c(ORCID = '0000-0002-4716-6134')),
      person(c('Richard'), 'Schuster',
        email='richard.schuster@glel.carleton.ca', role = c('aut', 'cre'),
        comment = c(ORCID = '0000-0003-3191-7869')),
      person(c('Nina'), 'Morrell',
        email='nina.morrell@ubc.ca', role = c('aut')),
      person(c('Matthew'), 'Strimas-Mackey',
        email='mstrimas@gmail.com', role = c('aut'),
        comment = c(ORCID = '0000-0001-8929-7776')),
      person(c('Brandon', 'P', 'M'), 'Edwards',
        email='brandonedwards3@cmail.carleton.ca', role = c('aut'),
        comment = c(ORCID = '0000-0003-0865-3076')),
      person(c('Matthew', 'E'), 'Watts',
        email='m.watts@uq.edu.au', role = c('aut')),
      person(c('Peter'), 'Arcese',
        email='peter.arcese@ubc.ca', role = c('aut'),
        comment = c(ORCID = '0000-0002-8097-482X')),
      person(c('Joseph', 'R'), 'Bennett',
        email='joseph.bennett@carleton.ca', role = c('aut'),
        comment = c(ORCID = '0000-0002-3901-9513')),
      person(c('Hugh', 'P'), 'Possingham',
        email='hugh.possingham@tnc.org', role = c('aut'),
        comment = c(ORCID = '0000-0001-7755-996X')))
Imports: utils, methods, parallel, R6 (>= 2.5.1), rlang (>= 1.1.0), cli
        (>= 3.6.0), sf (>= 1.0-12), units (>= 0.8.7), terra (>=
        1.8-54), raster (>= 3.6.11), Matrix (>= 1.3-0), assertthat (>=
        0.2.0), igraph (>= 2.0.3), ape (>= 5.6-1), magrittr (>= 2.0.1),
        exactextractr (>= 0.8.1), tibble (>= 2.0.0), withr (>= 2.3.0)
Suggests: testthat (>= 3.1.0), knitr (>= 1.36), gurobi (>= 8.0-1), rcbc
        (>= 0.1.0.9001), cplexAPI (>= 1.4.0), lpsymphony (>= 1.17.0),
        slam (>= 0.1-48), Rsymphony (>= 0.1-31), highs (>= 0.1-10),
        rmarkdown (>= 2.11), prioritizrdata (>= 0.2.4), fields (>=
        14.0), vroom (>= 1.6.5)
Depends: R (>= 4.1.0)
LinkingTo: Rcpp (>= 1.0.7), RcppArmadillo (>= 0.10.7.3.0), BH (>=
        1.75.0-0)
License: GPL-3
Language: en-US
Encoding: UTF-8
URL: https://prioritizr.net, https://github.com/prioritizr/prioritizr
BugReports: https://github.com/prioritizr/prioritizr/issues
VignetteBuilder: knitr
RoxygenNote: 7.3.2
Collate: 'external-classes.R' 'internal.R' 'waiver.R'
        'ConservationModifier-class.R' 'category_vector.R'
        'category_layer.R' 'binary_stack.R'
        'ConservationProblem-class.R' 'Constraint-class.R'
        'Decision-class.R' 'Objective-class.R'
        'OptimizationProblem-class.R' 'reexports.R'
        'OptimizationProblem-methods.R' 'Penalty-class.R'
        'Portfolio-class.R' 'RcppExports.R' 'Solver-class.R'
        'Target-class.R' 'TargetMethod-class.R' 'Weight-class.R'
        'zones.R' 'add_absolute_targets.R'
        'marxan_connectivity_data_to_matrix.R'
        'add_asym_connectivity_penalties.R' 'get_target_method.R'
        'target_optimization_format.R' 'add_auto_targets.R'
        'add_binary_decisions.R' 'marxan_boundary_data_to_matrix.R'
        'add_boundary_penalties.R' 'add_cbc_solver.R'
        'add_compile_solver.R' 'add_connectivity_penalties.R'
        'add_contiguity_constraints.R' 'add_cplex_solver.R'
        'add_cuts_portfolio.R' 'add_default_portfolio.R'
        'standalone-assertions_misc.R' 'add_default_solver.R'
        'add_extra_portfolio.R' 'add_feature_contiguity_constraints.R'
        'add_feature_weights.R' 'add_gap_portfolio.R'
        'add_group_targets.R' 'add_gurobi_solver.R'
        'add_highs_solver.R' 'add_linear_constraints.R'
        'add_linear_penalties.R' 'intersecting_units.R'
        'add_locked_in_constraints.R' 'add_locked_out_constraints.R'
        'add_lpsymphony_solver.R'
        'add_mandatory_allocation_constraints.R' 'tbl_df.R'
        'add_manual_targets.R' 'add_manual_bounded_constraints.R'
        'add_manual_locked_constraints.R' 'add_max_cover_objective.R'
        'add_max_features_objective.R' 'add_max_phylo_div_objective.R'
        'add_max_phylo_end_objective.R' 'add_max_utility_objective.R'
        'add_min_largest_shortfall_objective.R'
        'add_min_penalties_objective.R' 'add_min_set_objective.R'
        'add_min_shortfall_objective.R' 'add_neighbor_constraints.R'
        'add_neighbor_penalties.R' 'add_proportion_decisions.R'
        'add_relative_targets.R' 'add_rsymphony_solver.R'
        'add_semicontinuous_decisions.R' 'add_shuffle_portfolio.R'
        'add_top_portfolio.R' 'adjacency_matrix.R' 'as.R' 'as_units.R'
        'boundary_matrix.R' 'branch_matrix.R'
        'calibrate_cohon_penalty.R' 'compile.R' 'connectivity_matrix.R'
        'constraints.R' 'data.R' 'decisions.R' 'deprecated.R'
        'eval_asym_connectivity_summary.R' 'eval_boundary_summary.R'
        'eval_connectivity_summary.R' 'eval_cost_summary.R'
        'eval_feature_representation_summary.R'
        'eval_ferrier_importance.R' 'eval_n_summary.R'
        'presolve_check.R' 'solve.R' 'problem.R'
        'eval_rank_importance.R' 'eval_rare_richness_importance.R'
        'planning_unit_solution_format.R'
        'eval_replacement_importance.R'
        'eval_target_coverage_summary.R' 'fast_extract.R'
        'feature_abundances.R' 'feature_names.R' 'importance.R'
        'knit_print.R' 'linear_interpolation.R'
        'loglinear_interpolation.R' 'read_marxan_data.R'
        'read_marxan_parameters.R' 'marxan_problem.R' 'memory.R'
        'number_of_features.R' 'number_of_planning_units.R'
        'number_of_total_units.R' 'number_of_zones.R' 'objectives.R'
        'optimization_problem.R' 'package.R' 'penalties.R'
        'planning_unit_indices.R' 'planning_unit_solution_status.R'
        'portfolios.R' 'print.R' 'problem-deprecated.R'
        'proximity_matrix.R' 'rescale_matrix.R' 'rij_matrix.R'
        'run_calculations.R' 'show.R' 'simulate.R' 'solvers.R'
        'spec_absolute_targets.R' 'spec_area_targets.R'
        'spec_duran_targets.R' 'spec_interp_absolute_targets.R'
        'spec_interp_area_targets.R' 'spec_jung_targets.R'
        'spec_max_targets.R' 'spec_min_targets.R'
        'spec_polak_targets.R' 'spec_pop_size_targets.R'
        'spec_relative_targets.R' 'spec_rl_ecosystem_targets.R'
        'spec_rl_species_targets.R' 'spec_rodrigues_targets.R'
        'spec_rule_targets.R' 'spec_ward_targets.R'
        'spec_watson_targets.R' 'spec_wilson_targets.R'
        'standalone-all_binary.R' 'standalone-all_columns_any_finite.R'
        'standalone-all_columns_inherit.R' 'standalone-all_finite.R'
        'standalone-all_positive.R' 'standalone-all_proportion.R'
        'standalone-any_nonNA.R' 'standalone-any_nonzero.R'
        'standalone-as_Matrix.R'
        'standalone-assertions_ConservationProblem.R'
        'standalone-assertions_class.R'
        'standalone-assertions_functions.R'
        'standalone-assertions_handlers.R'
        'standalone-assertions_raster.R' 'standalone-assertions_sf.R'
        'standalone-assertions_solvers.R'
        'standalone-assertions_vector.R' 'standalone-cli.R'
        'standalone-get_crs.R' 'standalone-is_numeric_values.R'
        'standalone-is_same_crs.R'
        'standalone-is_spatial_extents_overlap.R' 'standalone-repr.R'
        'summaries.R' 'summary.R' 'targets.R' 'test-helpers.R'
        'validate_marxan_data.R' 'write_problem.R' 'zone_names.R'
        'zzz.R'
Config/testthat/edition: 3
Config/Needs/website: topsis, vegan, cluster, units, scales, dplyr,
        ggplot2, piggyback, prioritizrdata, pkgdown
NeedsCompilation: yes
Packaged: 2025-11-08 18:19:16 UTC; richard
Author: Jeffrey O Hanson [aut] (ORCID: <https://orcid.org/0000-0002-4716-6134>),
  Richard Schuster [aut, cre] (ORCID:
    <https://orcid.org/0000-0003-3191-7869>),
  Nina Morrell [aut],
  Matthew Strimas-Mackey [aut] (ORCID:
    <https://orcid.org/0000-0001-8929-7776>),
  Brandon P M Edwards [aut] (ORCID:
    <https://orcid.org/0000-0003-0865-3076>),
  Matthew E Watts [aut],
  Peter Arcese [aut] (ORCID: <https://orcid.org/0000-0002-8097-482X>),
  Joseph R Bennett [aut] (ORCID: <https://orcid.org/0000-0002-3901-9513>),
  Hugh P Possingham [aut] (ORCID:
    <https://orcid.org/0000-0001-7755-996X>)
Maintainer: Richard Schuster <richard.schuster@glel.carleton.ca>
Repository: CRAN
Date/Publication: 2025-11-10 13:20:08 UTC
Built: R 4.4.3; x86_64-w64-mingw32; 2026-04-13 03:16:18 UTC; windows
Archs: x64
