Skip to content

ozdindar/ParallelACO

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Parallel Metaheuristic Algorithms in Java

Overview

This repository contains a Java project focused on the parallel implementation of metaheuristic algorithms. The primary algorithm implemented is the Parallel Ant Colony Optimization (ACO), along with other metaheuristic algorithms such as:

  • Genetic Algorithm (GA)
  • Discrete Particle Swarm Optimization (PSO)
  • Non-dominated Sorting Genetic Algorithm (NSGA)

Key Features

  • Parallelization: The algorithms are parallelized using the Java Concurrency API to enhance performance and scalability.
  • Wireless Sensor Deployment Problem: The performance of the parallel algorithms is evaluated on this challenging optimization problem.

Implemented Algorithms

  1. Parallel Ant Colony Optimization (ACO)
  2. Genetic Algorithm (GA)
  3. Discrete Particle Swarm Optimization (PSO)
  4. NSGA (Non-dominated Sorting Genetic Algorithm)

Problem Model

The algorithms are tested and benchmarked on the Wireless Sensor Deployment Problem, which involves optimizing the placement of sensors to maximize coverage and minimize cost.

Technical Highlights

  • Utilizes the Java Concurrency API for efficient multi-threading and task management.
  • Designed to leverage modern multi-core processors for significant speedups in computation.
  • Demonstrates the benefits of parallel metaheuristic algorithms on real-world problems.

Getting Started

  1. Clone the repository:
    git clone https://github.com/ozdindar/ParallelACO.git
  2. Import the project into your favorite Java IDE.
  3. Build and run the project.

Requirements

  • Java 8 or higher

Usage

  • Explore the src directory for algorithm implementations.
  • Refer to the problems directory for demonstrations on the Wireless Sensor Deployment Problem.

License

This project is licensed under the MIT License.

Acknowledgments

This project was inspired by the need for scalable and efficient metaheuristic algorithms in solving complex optimization problems.

About

A simple parallelization of Ant Colony Optimization algorithm usin Java Concurrency API

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages