Skip to content

The project tests parallel and distributed computing. We implement them on Particle Swarm Optimization. The algorithm is used to choose optimum path.

Notifications You must be signed in to change notification settings

jbanaszkiewicz/mobile_robot_computing

Repository files navigation

mobile_robot_computing

The project tests parallel and distributed computing. We implement them on Particle Swarm Optimization. The algorithm is used to choose optimum path.

Budowanie programu algorytmu

W celu zbudowania projektu należy wywołać komendę:

g++  -g -fopenmp graphGenerator.cpp graph.cpp path.cpp psoPathSearch.cpp psoTests.cpp randomPath.cpp main.cpp

Uruchamianie

Utworzy ona plik wykonywalny ./a.out Plik ten pzyjmuje następujące argumenty:

  • bool inputFromFile - True oznacza, że graf zostanie pobrany z pliku
  • int nr_of_iterators - liczba iteracji działania algorytmu
  • int nr_of_threads - liczba wątków
  • int graphNrOfNodes - liczba węzłów grafu (wymagana gdy inputFromFile=False)
  • double radiusOfNeighbourhood - kąt w zakresie jakiego w kierunku zmiany węzła wyszukiwany jest nowy (wymagana gdy inputFromFile=False)
  • graph graph - graf z pliku (wymagana gdy inputFromFile=True)
./a.out 1 200 1 1 ./graphs/graph100

Testowanie działania algorytmu

Stworzono również plik benchmark.py. Można za jego pomocą uruchomić program wielokrotnie i sprawdzić efekt działania zrównoleglania obliczeń. Zwraca on plik json z wynikami obliczeń i przyjętmi dla poszczególnych przypadków danymi wejściowymi.

Przetwarzanie danych.

Dane statystyczne otrzymane z pliku benchmark.py sa przetwarzane z wykorzystaniem pliku aggregate_results.py

About

The project tests parallel and distributed computing. We implement them on Particle Swarm Optimization. The algorithm is used to choose optimum path.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •