SCUBA DIVER OPTIMIZATION ALGORITHM: for Speed Reducer Design

SCUBA DIVER OPTIMIZATION ALGORITHM: for Speed Reducer Design Optimization A NOVEL METAHEURISTICS ALGORITHM FOR CONSTRAINED ENGINEERING
2 téléchargements
Mise à jour 29 jan. 2026

Afficher la licence

SDOA Algorithm Implementation for Speed Reducer Design Optimization
Core Algorithm: Scuba Diver Optimization Algorithm (SDOA)
  • Nature-inspired, population-based metaheuristic derived from scuba diving dynamics
  • Adaptive search behaviour regulated by “oxygen” and “depth-stage” transitions
  • Key mechanism: oxygen depletion and replenishment drive a controlled shift from exploration to exploitation
Problem Solved: Speed Reducer Design Optimization
  • Objective: Minimize speed reducer weight
  • Design variables: 7 variables [x1,,x7], with mixed-integer structure (x3 is integer: number of teeth)
  • Constraints: 11 nonlinear constraints reflecting mechanical feasibility:
  • Gear tooth bending stress constraints
  • Shaft deflection constraints
  • Shaft stress constraints
  • Geometric and dimensional constraints
Algorithm Components
1) Diver Representation & Initialization
  • Each diver represents a candidate solution vector: 7 design variables
  • Initialization ensures broad coverage of the search space using a structured distribution strategy
  • Includes random diversification for a subset of the population to strengthen global coverage
  • Integer enforcement: x3 is rounded after initialization and after every update step
2) Oxygen & Depth Management
  • Oxygen decay model:
Oi​(t)=Oi​(t−1)exp(−αt/tmax​)
  • The population is partitioned dynamically into 5 depth stages using oxygen thresholds:
Depth stages (oxygen thresholds):
  • D1 (high oxygen): Global exploration (Lévy-flight style updates)
  • D2 (moderate oxygen): Moderate exploration (crossover with best + random walk)
  • B1 (reduced oxygen): Exploitation (local search with optional elite crossover)
  • D3 (low oxygen): Fine-tuning (non-uniform mutation with decreasing intensity)
  • Reset (very low oxygen): Diversification (reinitialization, especially if infeasible)
This staged strategy implements a structured exploration-to-exploitation pipeline without requiring manual phase switching.3) Search Operators
  • Lévy-flight exploration: heavy-tailed perturbations for escaping local minima
  • Crossover operator: blends current diver with best/elite diver to accelerate convergence
  • Random walk: bounded stochastic perturbations to enhance neighbourhood exploration
  • Local search: deterministic refinement around current candidate (hill-climbing style)
  • Non-uniform mutation: progressively shrinking perturbations for late-stage tuning
All moves are followed by:
  • bound repair (clipping to [Lb,Ub])
  • integer snapping for x3​
4) Constraint Handling
  • Penalty-based constraint handling: pfit=f(x)+106∑max(0,gi​(x))
  • Acceptance policy prioritises feasibility:
  • Improved penalised fitness is accepted
  • Feasible solutions are favoured over infeasible ones (feasibility-first bias)
  • Constraint verification is included via a dedicated validation routine that reports each constraint value and feasibility status
5) Adaptive Mechanisms
  • Elitism: top solutions are preserved and restored each iteration (elite protection)
  • Parameter adaptation: mutation and exploration strength decrease with iteration count
  • Oxygen replenishment: successful improvements partially restore oxygen to reinforce productive behaviours
  • Communication strategy: divers probabilistically move relative to the best diver, strengthening collective convergence
Key Parameters (as provided)
  • Population size: 500 divers
  • Maximum iterations: 2000
  • Runs: 10 independent runs (feasible-first statistics reported)
  • Elite size: 15
  • Initial oxygen: 200, oxygen decay factor α=0.4\alpha = 0.4α=0.4
  • Initial mutation rate: 0.3 (decreases over iterations)
  • Initial current strength: 0.3 (decreases faster to focus refinement later)
Results & Visualization
The implementation generates detailed diagnostics and plots, including:
  • Best-run convergence history (best vs. feasible-average)
  • Constraint-violation history for the best run
  • Best design variable bar plot
  • Diver distribution across depth stages (area plot)
  • Feasible-run percentage (pie chart)
  • Cross-run overlays: convergence and constraint histories for all runs
  • Final best objective distribution (scatter + boxplot) and feasibility count
Strengths of the Implementation
  • Exploration–exploitation balance: controlled by oxygen-driven stage switching
  • Robust feasibility management: strong penalty handling with feasibility-first selection pressure
  • Mixed-integer compatibility: integer decision handling integrated directly into the update loop
  • Convergence stability: elite preservation prevents loss of high-quality solutions
  • Rich behavioural tracking: depth-stage population statistics provide interpretability of algorithm dynamics
Algorithm Characteristics
  • Computational complexity: O(nDivers×maxIter×nVars)
  • Memory usage: moderate (stores histories across iterations and runs)
  • Scalability: suitable for constrained, nonlinear engineering design problems with small-to-medium dimension
If you want, I can also rewrite this i

Citation pour cette source

Saman M. Almufti (2026). SCUBA DIVER OPTIMIZATION ALGORITHM: for Speed Reducer Design (https://fr.mathworks.com/matlabcentral/fileexchange/183136-scuba-diver-optimization-algorithm-for-speed-reducer-design), MATLAB Central File Exchange. Extrait(e) le .

Compatibilité avec les versions de MATLAB
Créé avec R2025b
Compatible avec toutes les versions
Plateformes compatibles
Windows macOS Linux
Version Publié le Notes de version
1.0.0