Skip to content

The source codes of FATA optimizer are also publicly available at https://aliasgharheidari.com/FATA.html. This study presents the analysis and principle of an effective algorithm to optimize different problems.

License

Notifications You must be signed in to change notification settings

aliasgharheidaricom/FATA-An-Efficient-Optimization-Method-Based-on-Geophysics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

30 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

FATA Optimization (Version 1.0)

GitHub GitHub code size in bytes GitHub repo size GitHub language count GitHub last commit GitHub issues GitHub forks GitHub stars GitHub watchers GitHub contributors

FATA optimization algorithm

FATA: An Efficient Optimization Method Based on Geophysics

πŸ“– Overview

Introducing an efficient and innovative swarm intelligence algorithm: the Fata Morgana Algorithm (FATA). This algorithm is meticulously designed to tackle complex continuous multi-type optimization problems.

Inspired by the captivating phenomenon of mirage formation, FATA ingeniously implements two key strategies:

  • Mirage Light Filtering Principle (MLF): Enhances exploration through innovative filtering techniques.
  • Light Propagation Strategy (LPS): Accelerates convergence with effective propagation methods.

The MLF strategy, synergistically combined with the robust definite integration principle, significantly enhances FATA’s remarkable exploration capability. Concurrently, the LPS strategy, artfully integrated with trigonometric principles, empowers each algorithmic individual to markedly improve the algorithm's convergence speed and exceptional exploitation capability.

These two sophisticated search strategies work together to ensure a balanced and effective optimization process.

FATA has been rigorously compared against a diverse range of competitive optimizers across 23 benchmark functions and the IEEE CEC 2014 to validate its outstanding optimization prowess. This groundbreaking work is designed for:

  • Comprehensive qualitative analysis
  • Exploration and exploitation competency evaluation
  • Local optima avoidance strategies
  • Extensive comparative experiments

The experimental results compellingly demonstrate the robustness, comprehensiveness, and competitiveness of FATA in effectively solving various multi-type functions. Additionally, FATA has been successfully applied to three challenging practical engineering optimization problems, where it consistently outperforms its counterparts, showcasing its practical utility and effectiveness.

The promising results indicate that FATA possesses remarkable potential as a powerful computer-aided tool for addressing complex practical optimization tasks. Source codes and related files are readily available at the FATA Project Page and other platforms.


πŸš€ Key Features

  • Mirage Light Filtering Principle (MLF): Enhances exploration through innovative filtering techniques.
  • Light Propagation Strategy (LPS): Accelerates convergence with effective propagation methods.
  • Exploration and Exploitation Competence: Strikes a harmonious balance between exploration and exploitation.
  • Avoiding Locally Optimal Solutions: Employs advanced strategies to navigate around local optima.

Photo Gallery

Explore the captivating visuals related to the FATA optimization process and the fascinating phenomenon of mirages:

Image Image Image
3D Mirage phenomenon FATA based on the mirage principle FATA optimization process in 3-dimension
3D representation of the mirage phenomenon. FATA inspired by the mirage principle. FATA optimization process illustrated in 3D.
First refraction process of light Reflection process of light Second refraction process of light
Depiction of light's first refraction process. Insightful view of the light reflection process. Illustration of the second refraction of light.
The formation of the rainbow Definite integration to evaluate the curve Definite integration to evaluate the curve
Image depicting rainbow formation. Visual explanation of definite integration for curve evaluation. Another representation of definite integration for curve evaluation.

πŸ›  Usage

To utilize the FATA optimization algorithm, follow these easy steps:

  1. Set the Objective Function: Define your objective function in the variable fobj.
  2. Specify Variable Bounds: Clearly outline the lower (lb) and upper (ub) bounds of the variables.
  3. Configure Problem Parameters: Set the problem dimension, population size (N), and maximum number of function evaluations (MaxFEs).
  4. Execute the Optimization Process: Run the FATA function to initiate the optimization sequence.
  5. Retrieve Results: The function will return:
    • Optimal solution in bestPos
    • Global best score in gBestScore
    • Convergence curve in cg_curve

Feel free to delve into and leverage the FATA optimization algorithm for your various optimization endeavors. Happy optimizing! πŸš€πŸ” FUNCTION FATA(fobj, lb, ub, dim, N, MaxFEs) // Initialize parameters worstInte ← 0 bestInte ← ∞ gBest ← array of zeros with length dim cg_curve ← empty array gBestScore ← ∞ Flight ← initialization(N, dim, ub, lb) // Initialize random solutions fitness ← array of infinities with size N FEs ← 0 // Function evaluations

// Main loop until maximum function evaluations
WHILE FEs < MaxFEs DO
    FOR i FROM 1 TO N DO
        // Ensure solutions are within bounds
        IF Flight[i] > ub THEN
            Flight[i] ← ub
        ELSE IF Flight[i] < lb THEN
            Flight[i] ← lb
        ENDIF
        
        FEs ← FEs + 1
        fitness[i] ← fobj(Flight[i]) // Evaluate fitness
        
        // Greedy selection for global best
        IF gBestScore > fitness[i] THEN
            gBestScore ← fitness[i]
            gBest ← Flight[i]
        ENDIF
    ENDFOR

    // Sort fitness to find worst and best
    Order, Index ← sort(fitness)
    worstFitness ← Order[N]
    bestFitness ← Order[1]

    // Apply the mirage light filtering principle
    Integral ← cumulative integral of Order
    IF Integral[N] > worstInte THEN
        worstInte ← Integral[N]
    ENDIF
    IF Integral[N] < bestInte THEN
        bestInte ← Integral[N]
    ENDIF
    
    IP ← (Integral[N] - worstInte) / (bestInte - worstInte + epsilon) // Population quality factor

    // Calculate parameters based on iterations
    a ← tan(-(FEs / MaxFEs) + 1)
    b ← 1 / tan(-(FEs / MaxFEs) + 1)

    // Update flight positions
    FOR i FROM 1 TO N DO
        Para1 ← a * random(dim) - a * random(dim)
        Para2 ← b * random(dim) - b * random(dim)
        p ← (fitness[i] - worstFitness) / (gBestScore - worstFitness + epsilon) // Individual quality factor

        IF random() > IP THEN
            Flight[i] ← random(dim) * (ub - lb) + lb // Randomly initialize
        ELSE
            FOR j FROM 1 TO dim DO
                num ← floor(random() * N + 1)
                IF random() < p THEN
                    Flight[i][j] ← gBest[j] + Flight[i][j] * Para1[j] // Light refraction (first phase)
                ELSE
                    Flight[i][j] ← Flight[num][j] + Para2[j] * Flight[i][j] // Light refraction (second phase)
                    Flight[i][j] ← (0.5 * (arf + 1) * (lb[j] + ub[j]) - arf * Flight[i][j]) // Total internal reflection
                ENDIF
            ENDFOR
        ENDIF
    ENDFOR

    cg_curve[it] ← gBestScore
    it ← it + 1
    bestPos ← gBest
ENDWHILE

πŸ‘₯ Authors

  • Ailiang Qi
  • Dong Zhao
  • Ali Asghar Heidari
  • Lei Liu
  • Yi Chen
  • Huiling Chen

πŸ“… Last Update

June 8, 2024


πŸ“¬ Contact

We welcome your inquiries! Feel free to reach out to us via email:


πŸ“‘ Citation

If you utilize this code, please ensure to cite the primary paper on FATA:

Title: FATA: An Efficient Optimization Method Based on Geophysics
Journal: Neurocomputing
Year: 2024
DOI: 10.1016/j.neucom.2024.128289


πŸ” Comapre FATA with other Optimization Methods

For comparative analysis, consider exploring these notable optimization methods developed recently:

  • (ECO) 2024: An advanced optimization framework that enhances performance across various problem classes. πŸ”— ECO Project Page
  • (AO) 2024: A novel approach to optimization challenges, boasting improved convergence rates and robustness. πŸ”— AO Project Page
  • (PO) 2024: A powerful optimization methodology focused on solving complex multi-modal functions efficiently. πŸ”— PO Project Page
  • (RIME) 2023: A cutting-edge algorithm for robust optimization, designed to handle noisy and dynamic environments. πŸ”— RIME Project Page
  • (INFO) 2022: An innovative optimization technique that integrates information theory concepts for enhanced search capabilities. πŸ”— INFO Project Page
  • (RUN) 2021: A dynamic optimization solution that adapts to changing landscapes and varying problem dimensions. πŸ”— RUN Project Page
  • (HGS) 2021: A high-performance optimization strategy that excels in exploring large and complex search spaces. πŸ”— HGS Project Page
  • (SMA) 2020: A sophisticated optimization method that mimics collaborative behaviors in nature for problem-solving. πŸ”— SMA Project Page
  • (HHO) 2019: A pioneering optimization algorithm inspired by nature, specifically the hunting behavior of Harris hawks. πŸ”— HHO Project Page

About

The source codes of FATA optimizer are also publicly available at https://aliasgharheidari.com/FATA.html. This study presents the analysis and principle of an effective algorithm to optimize different problems.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages