
Rank explicit candidate monitoring locations with recorded constraints
ps_candidate_network.RdRank explicit candidate monitoring locations with recorded constraints
Usage
ps_candidate_network(
existing_points,
candidates,
objective = c("spatial_coverage", "support_gap", "kriging_variance_reduction",
"user_score"),
n_select = 1,
target = NULL,
variogram_model = NULL,
trend = NULL,
minimum_existing_distance = 0,
minimum_candidate_distance = 0,
allowed_area = NULL,
exclusion_area = NULL,
cost = NULL,
user_score = NULL,
sequential = TRUE
)Arguments
- existing_points
Existing monitoring points.
- candidates
Explicit candidate point locations.
- objective
Candidate-scoring objective.
- n_select
Number selected by sequential greedy ranking.
- target
Explicit target points or raster for target-weighted objectives.
- variogram_model, trend
Model for kriging-variance reduction.
- minimum_existing_distance, minimum_candidate_distance
Spacing rules.
- allowed_area, exclusion_area
Spatial constraints.
- cost
Optional finite positive candidate costs.
- user_score
Optional supplied scores.
- sequential
Update scores after each choice.
Value
A potentiomap_candidate_network object. The greedy sequence is not
claimed to be globally optimal or to identify drillable sites.
Examples
data("synthetic_wells", "synthetic_candidate_sites")
p <- ps_make_points(synthetic_wells, "x", "y", "gw_elevation",
"well_id", "EPSG:26916")
c <- terra::vect(subset(synthetic_candidate_sites, !excluded),
geom = c("x", "y"), crs = "EPSG:26916")
design <- ps_candidate_network(p, c, n_select = 2,
objective = "spatial_coverage")
design$selected_sequence
#> sequence candidate_id information_gain cost gain_per_unit_cost
#> 1 1 candidate_0002 960.1709 NA NA
#> 2 2 candidate_0001 517.0042 NA NA
#> objective
#> 1 spatial_coverage
#> 2 spatial_coverage
# Sequential greedy selection is not a globally optimal drilling plan.