[package]
edition = "2021"
rust-version = "1.81.0"
name = "genetic_algorithms"
version = "3.0.0"
authors = ["Luis Eduardo Imbernón <imbernon@gmail.com>"]
build = "build.rs"
include = [
"/src",
"/examples",
"/tests",
"/benches",
"/docs",
"/build.rs",
"/Cargo.toml",
"/README.md",
"/CHANGELOG.md",
"/CONTRIBUTING.md",
"/LICENSE",
"/SECURITY.md",
"MIGRATION.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Library for solving genetic algorithm problems"
homepage = "https://github.com/leimbernon/rust_genetic_algorithms.git"
documentation = "https://docs.rs/genetic_algorithms/latest/genetic_algorithms"
readme = "README.md"
keywords = [
"genetics",
"algorithm",
"ai",
"artificial",
"intelligence",
]
categories = [
"emulators",
"development-tools",
"science",
"simulation",
]
license = "Apache-2.0"
repository = "https://github.com/leimbernon/rust_genetic_algorithms.git"
[features]
benchmarks = []
default = [
"logging",
"parallel",
]
logging = ["dep:log"]
observer-metrics = ["dep:metrics"]
observer-tracing = ["dep:tracing"]
parallel = ["dep:rayon"]
serde = [
"dep:serde",
"dep:serde_json",
"dep:serde_stacker",
]
visualization = ["dep:plotters"]
[lib]
name = "genetic_algorithms"
path = "src/lib.rs"
[[example]]
name = "alps"
path = "examples/alps.rs"
[[example]]
name = "aos_demo"
path = "examples/aos_demo.rs"
[[example]]
name = "cellular_ga"
path = "examples/cellular_ga.rs"
[[example]]
name = "cma_es_rastrigin"
path = "examples/cma_es_rastrigin.rs"
required-features = ["logging"]
[[example]]
name = "constrained_g1"
path = "examples/constrained_g1.rs"
[[example]]
name = "de_rastrigin"
path = "examples/de_rastrigin.rs"
[[example]]
name = "eda_trap"
path = "examples/eda_trap.rs"
required-features = ["logging"]
[[example]]
name = "feature_selection"
path = "examples/feature_selection.rs"
required-features = ["logging"]
[[example]]
name = "gp_symbolic_regression"
path = "examples/gp_symbolic_regression.rs"
[[example]]
name = "hall_of_fame_demo"
path = "examples/hall_of_fame_demo.rs"
[[example]]
name = "ibea_zdt1"
path = "examples/ibea_zdt1.rs"
required-features = [
"benchmarks",
"logging",
]
[[example]]
name = "ipop_rastrigin"
path = "examples/ipop_rastrigin.rs"
required-features = ["logging"]
[[example]]
name = "island_model"
path = "examples/island_model.rs"
required-features = ["logging"]
[[example]]
name = "job_scheduling"
path = "examples/job_scheduling.rs"
required-features = ["logging"]
[[example]]
name = "knapsack_binary"
path = "examples/knapsack_binary.rs"
required-features = ["logging"]
[[example]]
name = "memetic_rastrigin"
path = "examples/memetic_rastrigin.rs"
[[example]]
name = "moead_dtlz2"
path = "examples/moead_dtlz2.rs"
required-features = ["logging"]
[[example]]
name = "niching"
path = "examples/niching.rs"
required-features = ["logging"]
[[example]]
name = "nqueens_range"
path = "examples/nqueens_range.rs"
required-features = ["logging"]
[[example]]
name = "nsga2_zdt1"
path = "examples/nsga2_zdt1.rs"
required-features = ["logging"]
[[example]]
name = "nsga3_dtlz2"
path = "examples/nsga3_dtlz2.rs"
required-features = ["logging"]
[[example]]
name = "onemax_binary"
path = "examples/onemax_binary.rs"
required-features = ["logging"]
[[example]]
name = "onemax_extension"
path = "examples/onemax_extension.rs"
required-features = ["logging"]
[[example]]
name = "pso_rastrigin"
path = "examples/pso_rastrigin.rs"
required-features = ["logging"]
[[example]]
name = "rastrigin"
path = "examples/rastrigin.rs"
required-features = ["logging"]
[[example]]
name = "scatter_search"
path = "examples/scatter_search.rs"
[[example]]
name = "sms_emoa_zdt1"
path = "examples/sms_emoa_zdt1.rs"
required-features = [
"benchmarks",
"logging",
]
[[example]]
name = "spea2_zdt1"
path = "examples/spea2_zdt1.rs"
required-features = ["logging"]
[[example]]
name = "surrogate_rastrigin"
path = "examples/surrogate_rastrigin.rs"
[[test]]
name = "golden_tests"
path = "tests/golden_tests.rs"
[[test]]
name = "gp"
path = "tests/gp.rs"
[[test]]
name = "structures"
path = "tests/structures.rs"
[[test]]
name = "test_benchmarks"
path = "tests/test_benchmarks.rs"
[[test]]
name = "test_chromosome_length"
path = "tests/test_chromosome_length.rs"
[[test]]
name = "test_chromosomet_core"
path = "tests/test_chromosomet_core.rs"
[[test]]
name = "test_constraints"
path = "tests/test_constraints.rs"
[[test]]
name = "test_engines"
path = "tests/test_engines.rs"
[[test]]
name = "test_error"
path = "tests/test_error.rs"
[[test]]
name = "test_examples"
path = "tests/test_examples.rs"
[[test]]
name = "test_extension"
path = "tests/test_extension.rs"
[[test]]
name = "test_fitness"
path = "tests/test_fitness.rs"
[[test]]
name = "test_initializers"
path = "tests/test_initializers.rs"
[[test]]
name = "test_linear_chromosome"
path = "tests/test_linear_chromosome.rs"
[[test]]
name = "test_multi_parent_integration"
path = "tests/test_multi_parent_integration.rs"
[[test]]
name = "test_niching"
path = "tests/test_niching.rs"
[[test]]
name = "test_no_logger_installed"
path = "tests/test_no_logger_installed.rs"
[[test]]
name = "test_observe"
path = "tests/test_observe.rs"
[[test]]
name = "test_operations"
path = "tests/test_operations.rs"
[[test]]
name = "test_population"
path = "tests/test_population.rs"
[[test]]
name = "test_prelude"
path = "tests/test_prelude.rs"
[[test]]
name = "test_prelude_minimal_ga"
path = "tests/test_prelude_minimal_ga.rs"
[[test]]
name = "test_pso"
path = "tests/test_pso.rs"
[[test]]
name = "test_rng"
path = "tests/test_rng.rs"
[[test]]
name = "test_stats"
path = "tests/test_stats.rs"
[[test]]
name = "test_stopping_config"
path = "tests/test_stopping_config.rs"
[[test]]
name = "test_surrogate"
path = "tests/test_surrogate.rs"
[[test]]
name = "test_traits"
path = "tests/test_traits.rs"
[[test]]
name = "test_types"
path = "tests/test_types.rs"
[[test]]
name = "test_validators"
path = "tests/test_validators.rs"
[[test]]
name = "test_variable_length"
path = "tests/test_variable_length.rs"
[[test]]
name = "wasm_smoke"
path = "tests/wasm_smoke.rs"
[[bench]]
name = "alps"
path = "benches/alps.rs"
harness = false
[[bench]]
name = "aos"
path = "benches/aos.rs"
harness = false
[[bench]]
name = "batch_fitness"
path = "benches/batch_fitness.rs"
harness = false
[[bench]]
name = "cellular"
path = "benches/cellular.rs"
harness = false
[[bench]]
name = "cma_es"
path = "benches/cma_es.rs"
harness = false
[[bench]]
name = "crossover"
path = "benches/crossover.rs"
harness = false
[[bench]]
name = "de"
path = "benches/de.rs"
harness = false
required-features = ["benchmarks"]
[[bench]]
name = "eda"
path = "benches/eda.rs"
harness = false
[[bench]]
name = "ga_run"
path = "benches/ga_run.rs"
harness = false
[[bench]]
name = "gp"
path = "benches/gp.rs"
harness = false
[[bench]]
name = "island_ga"
path = "benches/island_ga.rs"
harness = false
[[bench]]
name = "metrics_observer"
path = "benches/metrics_observer.rs"
harness = false
required-features = ["observer-metrics"]
[[bench]]
name = "mutation"
path = "benches/mutation.rs"
harness = false
[[bench]]
name = "nsga2"
path = "benches/nsga2.rs"
harness = false
[[bench]]
name = "pso"
path = "benches/pso.rs"
harness = false
[[bench]]
name = "rastrigin"
path = "benches/rastrigin.rs"
harness = false
[[bench]]
name = "scatter"
path = "benches/scatter.rs"
harness = false
[[bench]]
name = "selection"
path = "benches/selection.rs"
harness = false
[[bench]]
name = "surrogate"
path = "benches/surrogate.rs"
harness = false
[[bench]]
name = "survivor"
path = "benches/survivor.rs"
harness = false
[dependencies.log]
version = "0.4.22"
features = [
"std",
"serde",
"kv_unstable",
]
optional = true
[dependencies.metrics]
version = "0.24"
optional = true
[dependencies.rand]
version = "0.9.2"
[dependencies.rayon]
version = "1.10"
optional = true
[dependencies.serde]
version = "1"
features = [
"derive",
"rc",
]
optional = true
[dependencies.serde_json]
version = "1"
optional = true
[dependencies.serde_stacker]
version = "0.1"
optional = true
[dependencies.tracing]
version = "0.1"
optional = true
[dev-dependencies.divan]
version = "0.1.21"
[dev-dependencies.env_logger]
version = "0.11.5"
[dev-dependencies.serde_json]
version = "1"
features = ["unbounded_depth"]
[dev-dependencies.tracing-log]
version = "0.2"
[dev-dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.plotters]
version = "0.3.7"
features = [
"bitmap_backend",
"bitmap_encoder",
"svg_backend",
"line_series",
"point_series",
"histogram",
"ttf",
]
optional = true
default-features = false
[target.'cfg(target_arch = "wasm32")'.dependencies.getrandom]
version = "0.3"
features = ["wasm_js"]
[target.'cfg(target_arch = "wasm32")'.dependencies.plotters]
version = "0.3.7"
features = [
"svg_backend",
"line_series",
"point_series",
"histogram",
"ab_glyph",
]
optional = true
default-features = false
[profile.dev]
debug = "line-tables-only"
split-debuginfo = "unpacked"
[profile.dev.package."*"]
opt-level = 1
debug = 0
[profile.test]
opt-level = 1