DDoS-Detector v4.0 — Genetic Algorithm Feature Selection and Analysis Expansion
Version v4.0 significantly expands DDoS-Detector’s feature-analysis capabilities by introducing a Genetic Algorithm–based feature selection pipeline. This release completes the evolution started in v3.0, moving beyond deterministic feature ranking (RFE) into stochastic, population-based optimization using DEAP.
With the addition of genetic_algorithm.py, the project now supports multiple, complementary feature-selection strategies under a unified experimental framework. The GA pipeline integrates dataset preprocessing, fitness evaluation with multi-metric outputs, result consolidation, visualization, and optional external notifications, reinforcing the project’s focus on reproducible and extensible research workflows.
In parallel, this release consolidates documentation quality across all major modules (main.py, dataset_descriptor.py, rfe.py) and extends the Makefile to expose the new GA workflow as a first-class execution target.
Changelog
Added
Genetic Algorithm Feature Selection (genetic_algorithm.py)
- DEAP-based binary-mask Genetic Algorithm for feature selection
- End-to-end pipeline:
- Safe CSV loading and numeric feature filtering
- Feature scaling and GA population initialization
- Fitness evaluation using RandomForest (default)
- Multi-metric fitness evaluation:
- Accuracy, precision, recall, F1-score
- False Positive Rate (FPR) and False Negative Rate (FNR)
- Consolidated results export to:
Feature_Analysis/Genetic_Algorithm_Results.csv
- Automatic generation of feature statistics and boxplots
- Optional runtime monitoring and Telegram progress notifications
- Designed for extensibility (population sweeps, multiple runs)
RFE Module Completion (rfe.py)
- Finalized functional implementation:
- Safe path handling and filename sanitization
- Top-feature analysis utilities
- Unified execution via
run_rfe
- Optional sound feedback on completion
- Fully documented public API
Improved / Refactored
- Standardized and expanded function-level documentation in:
main.pydataset_descriptor.pyrfe.py
- Improved consistency in module structure and comments
- Makefile extended with:
genetic_algorithmexecution rule
- Documentation cleanup and alignment with current project scope
Project Evolution
- Feature selection elevated to a core research dimension:
- Deterministic approach: Recursive Feature Elimination (RFE)
- Stochastic approach: Genetic Algorithm (GA)
- Clear separation of concerns across modules:
main.py: model training, evaluation, explainabilitydataset_descriptor.py: dataset inspection and compatibility analysisrfe.py: deterministic feature rankinggenetic_algorithm.py: evolutionary feature optimization
- Foundation laid for comparative studies between feature-selection strategies
v4.0 marks a major milestone for DDoS-Detector, transforming it into a feature-selection experimentation platform capable of supporting advanced research in DDoS detection, model optimization, and dataset analysis.
Full Changelog: v3.0-rfe.py...v4.0-genetic_algorithm.py