Provides comprehensive performance benchmarking capabilities for comparing optimization algorithms with constitutional compliance standards.
Details
This service implements constitutional performance requirements:
Maximum execution time: 300 seconds for 10,000+ locations
Maximum memory usage: 2GB RAM
Statistical significance testing for performance comparisons
Scalability analysis across dataset sizes
Public fields
algorithmsList of optimization algorithms to benchmark
datasetsList of test datasets with varying complexity
metricsPerformance metrics to collect (time, memory, accuracy)
resultsCollected benchmarking results
config_managerConfiguration and logging manager
algorithmsAvailable optimization algorithms
datasetsTest datasets for benchmarking
metricsPerformance metrics configuration
resultsBenchmarking results storage
config_managerConfiguration manager instance Initialize benchmarking service
Methods
Method new()
Usage
BenchmarkingService$new(
config_manager = NULL,
algorithms = c("greedy", "genetic", "simulated_annealing"),
custom_datasets = NULL
)Method run_benchmark_suite()
Usage
BenchmarkingService$run_benchmark_suite(
n_iterations = 5,
include_scalability = TRUE,
save_results = TRUE
)Method benchmark_algorithm()
Usage
BenchmarkingService$benchmark_algorithm(
algorithm_name,
field_data,
existing_samples = NULL,
n_new_samples = 50,
n_iterations = 5
)Method analyze_scalability()
Usage
BenchmarkingService$analyze_scalability(
test_sizes = c(100, 500, 1000, 5000, 10000),
algorithms_to_test = self$algorithms
)Method compare_algorithms()
Usage
BenchmarkingService$compare_algorithms(
results_df = self$results,
metric = "execution_time_mean",
significance_level = 0.05
)Method generate_performance_report()
Usage
BenchmarkingService$generate_performance_report(
include_plots = FALSE,
output_format = "text"
)