SlideShare a Scribd company logo
1 of 24
Download to read offline
Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
GPU-Accelerated Route Planning of
Multi-UAV Systems Using Simulated
Annealing (SA) Algorithm
Seval CAPRAZ1, 2
, Halil AZYIKMIS2
, Adnan OZSOY2
* ANTE GRUP Bilisim Ticaret A.S.
** Department of Computer Engineering, Hacettepe University
2Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
The problem
Problem statement
Traversing all predefined
waypoints with minimum
cost.
(Finding shortest path for
each UAV)
Traveling Salesman
Problem (TSP)
3Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
The problem
Problem statement
Traversing all predefined
waypoints with minimum
cost.
(Finding shortest path for
each UAV)
Traveling Salesman
Problem (TSP)
4Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
The problem
Problem statement
Traversing all predefined
waypoints with minimum
cost.
(Finding shortest path for
each UAV)
Traveling Salesman
Problem (TSP)
5Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
The problem
Problem Complexity
In TSP-type problems, finding the best solution generally requires testing all the search
space and this seems to be impractical. In our case, with N waypoints, search space
consists of N! solutions. Adding one more waypoint to the system has a considerable
effect on the overall system performance because of the increasing number of elements
in the search space from N! to (N+1)!.
When dealing with this kind of NP-hard problems, we can use different optimization
algorithms to search and find an acceptable (near-optimal) solution rather than to find
the best solution.
6Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Solution
Simulated Annealing (SA)
Algorithm
Analogy with annealing in solids provides a
framework for optimization of the properties
of very large and complex systems.
In SA, the objective function is used instead
of the energy of a material.
7Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Simulated Annealing Algorithm
In Detail
8Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Simulated Annealing Algorithm
At high temperatures, the probability of accepting a worsening move is high, in contrast,
at low temperatures, this probability is very low.
deltaE: Energy/Cost difference between current state and next state (current - next)
Basic Criteria & Code Sample
IF THE NEW SOLUTION IS BETTER THEN
ACCEPT NEW SOLUTION UNCONDITIONALLY
ELSE //(NEW SOLUTION COST > CURRENT SOLUTION COST
CALCULATE ACCEPTANCE_PROBABILITY
IF ACCEPTANCE_PROBABILITY > MATH.RANDOM(1..0) THEN
ACCEPT NEW SOLUTION
9Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Solutions
Solution 1
CPU Implementation
(serial)
Solution 2
CPU Implementation
(parallel)
Solution 3
GPU Implementation
6
10Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
CUDA & NVIDIA Device Information
11Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
The DataSets
Traveling Salesman Problem Library (TSPLIB)
Created and presented by University of Heidelberg,
Germany.
http://comopt.ifi.uni-heidelberg.de/software/TSPLIB95/tsp/
Datasets tested/used in this work:
berlin52.tsp : 2D, 52 waypoints, integer
berli52_3D.tsp : 3D, 52 waypoints, integer
pr1002.tsp : 2D, 1002 waypoints, integer
tsp225.tsp : 2D, 225 waypoints, decimal
Contents of the ​pr1002.tsp​ file
1 1150 4000
2 1050 2750
3 1150 2250
4 1250 2050
5 1350 2350
...
...
...
1001 14550 8450
1002 14550 11650
12Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Recommended Solution
Cooling Loop
Async
Data Transfer Block #1
Block #2
Block #3
Block #4
Device (GPU)Host (CPU)
. . . 256 threads
. . . 256 threads
. . . 256 threads
. . . 256 threads
Global
Memory
13Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Implementation
14Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
The Data Structures & Settings
15Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
CPUImplementation(serial)
16Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
CPUImplementation(parallel)
17Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
GPUImplementation
18Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
GPUImplementation
Equilibrium State Loop (ESL), as a CUDA kernel, is
executed by an array of threads in parallel on the GPU.
The ESL has two main responsibilities:
➢ neighbour generation
➢ acceptance evaluation
Each thread gets its own solution conf from global memory
to its local memory by using its unique id threadId as the
index of configurations.
Then, ESL starts for new neighbour generation and
acceptance evaluation. At each equilibrium state iteration, a
neighbour newConf is generated by swapping randomly
selected two elements in the current solution conf.
After candidate solutions generated at the end of the ESL by
all threads transferred from GPU tp CPU, the host continues
its own operations in the cooling iteration by decreasing the
temperature and selecting the best solution, and so on.
19Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Results
20Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Graphical Representation of a Solution
21Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Results of GPU Implementation
22Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Comparison of CPU Implementations
Note: The parameters used in all tests are listed below:
1.dataset = pr1002.tsp (1002 waypoints)
2.NUMBER_OF_UAV = 3
3.MAX_OUTER_ITER = 10000
4.MAX_INNER_ITER = 100
23Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Conclusion
In conclusion, route planning for multiple UAVs needs a lot of execution time and resources. We can
decrease the time and travel cost by using parallel solutions.
GPU accelerated route planning for multi-UAVs provides better solutions as compared to serial and
parallel implementation in CPU.
The optimization of increasing thread number and transferring data asynchronously can make the
algorithm faster. The statistical results provide that our optimized GPU based parallelized approach of
route planning problem for multiple UAVs is nearly 1.6 times faster than CPU solutions.
In addition to this, our GPU based parallel solution for SA algorithm using NVIDIA CUDA platform is
the fastest solution so far thanks to the massive parallelization capabilities of GPUs and optimization
techniques on GPU programming.
It is the expected result that GPU solution makes algorithm faster than both the recent serial and
parallel CPU-based ones. Not only the execution time is diminishes but also the travel cost
decreases.
24Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019
Question?
Seval Capraz
seval.capraz@antegrup.com.tr

More Related Content

Similar to GPU-Accelerated Route Planning of Multi-UAV Systems Using Simulated Annealing (SA) Algorithm

Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...
Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...
Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...Databricks
 
Accelerating Apache Spark by Several Orders of Magnitude with GPUs and RAPIDS...
Accelerating Apache Spark by Several Orders of Magnitude with GPUs and RAPIDS...Accelerating Apache Spark by Several Orders of Magnitude with GPUs and RAPIDS...
Accelerating Apache Spark by Several Orders of Magnitude with GPUs and RAPIDS...Databricks
 
Analysis of different bit carry look ahead adder using verilog code 2
Analysis of different bit carry look ahead adder using verilog code 2Analysis of different bit carry look ahead adder using verilog code 2
Analysis of different bit carry look ahead adder using verilog code 2IAEME Publication
 
Benchmarking MPI Applications in Singularity Containers on Traditional HPC an...
Benchmarking MPI Applications in Singularity Containers on Traditional HPC an...Benchmarking MPI Applications in Singularity Containers on Traditional HPC an...
Benchmarking MPI Applications in Singularity Containers on Traditional HPC an...inside-BigData.com
 
On the verification of configurable nocs in simulation and hardware emulation...
On the verification of configurable nocs in simulation and hardware emulation...On the verification of configurable nocs in simulation and hardware emulation...
On the verification of configurable nocs in simulation and hardware emulation...Sameh El-Ashry
 
A Study on New York City Taxi Rides
A Study on New York City Taxi RidesA Study on New York City Taxi Rides
A Study on New York City Taxi RidesCaglar Subasi
 
Implementing an EGIRP Based Solution
Implementing an EGIRP Based SolutionImplementing an EGIRP Based Solution
Implementing an EGIRP Based SolutionArnold Derrick Kinney
 
LEGaTO: Software Stack Runtimes
LEGaTO: Software Stack RuntimesLEGaTO: Software Stack Runtimes
LEGaTO: Software Stack RuntimesLEGATO project
 
Improvement of accuracy in aircraft navigation by data fusion technique
Improvement of accuracy in aircraft navigation by data fusion techniqueImprovement of accuracy in aircraft navigation by data fusion technique
Improvement of accuracy in aircraft navigation by data fusion techniqueIAEME Publication
 
Windsurfing with APPA: Automating the Computational Fluid Dynamics Simulation...
Windsurfing with APPA: Automating the Computational Fluid Dynamics Simulation...Windsurfing with APPA: Automating the Computational Fluid Dynamics Simulation...
Windsurfing with APPA: Automating the Computational Fluid Dynamics Simulation...Anshul Jindal
 
Cloud-based Integrated Process Planning and Scheduling Optimisation via Asyn...
 Cloud-based Integrated Process Planning and Scheduling Optimisation via Asyn... Cloud-based Integrated Process Planning and Scheduling Optimisation via Asyn...
Cloud-based Integrated Process Planning and Scheduling Optimisation via Asyn...Piotr Dziurzanski
 
OpenACC Monthly Highlights: June 2019
OpenACC Monthly Highlights: June 2019OpenACC Monthly Highlights: June 2019
OpenACC Monthly Highlights: June 2019OpenACC
 
OpenACC Monthly Highlights: January 2021
OpenACC Monthly Highlights: January 2021OpenACC Monthly Highlights: January 2021
OpenACC Monthly Highlights: January 2021OpenACC
 
OpenACC Monthly Highlights: October2020
OpenACC Monthly Highlights: October2020OpenACC Monthly Highlights: October2020
OpenACC Monthly Highlights: October2020OpenACC
 
HARDWARE ACCELERATION OF THE GIPPS MODEL FOR REAL-TIME TRAFFIC SIMULATION
HARDWARE ACCELERATION OF THE GIPPS MODEL FOR REAL-TIME TRAFFIC SIMULATIONHARDWARE ACCELERATION OF THE GIPPS MODEL FOR REAL-TIME TRAFFIC SIMULATION
HARDWARE ACCELERATION OF THE GIPPS MODEL FOR REAL-TIME TRAFFIC SIMULATIONijesajournal
 
OpenACC Highlights: GTC Digital April 2020
OpenACC Highlights: GTC Digital April 2020OpenACC Highlights: GTC Digital April 2020
OpenACC Highlights: GTC Digital April 2020OpenACC
 
INSIDE ARM-X - Countermeasure 2019
INSIDE ARM-X - Countermeasure 2019INSIDE ARM-X - Countermeasure 2019
INSIDE ARM-X - Countermeasure 2019Saumil Shah
 
IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...
IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...
IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...IRJET Journal
 

Similar to GPU-Accelerated Route Planning of Multi-UAV Systems Using Simulated Annealing (SA) Algorithm (20)

Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...
Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...
Bridging the Gap Between Data Scientists and Software Engineers – Deploying L...
 
Accelerating Apache Spark by Several Orders of Magnitude with GPUs and RAPIDS...
Accelerating Apache Spark by Several Orders of Magnitude with GPUs and RAPIDS...Accelerating Apache Spark by Several Orders of Magnitude with GPUs and RAPIDS...
Accelerating Apache Spark by Several Orders of Magnitude with GPUs and RAPIDS...
 
Analysis of different bit carry look ahead adder using verilog code 2
Analysis of different bit carry look ahead adder using verilog code 2Analysis of different bit carry look ahead adder using verilog code 2
Analysis of different bit carry look ahead adder using verilog code 2
 
Benchmarking MPI Applications in Singularity Containers on Traditional HPC an...
Benchmarking MPI Applications in Singularity Containers on Traditional HPC an...Benchmarking MPI Applications in Singularity Containers on Traditional HPC an...
Benchmarking MPI Applications in Singularity Containers on Traditional HPC an...
 
On the verification of configurable nocs in simulation and hardware emulation...
On the verification of configurable nocs in simulation and hardware emulation...On the verification of configurable nocs in simulation and hardware emulation...
On the verification of configurable nocs in simulation and hardware emulation...
 
A Study on New York City Taxi Rides
A Study on New York City Taxi RidesA Study on New York City Taxi Rides
A Study on New York City Taxi Rides
 
Implementing an EGIRP Based Solution
Implementing an EGIRP Based SolutionImplementing an EGIRP Based Solution
Implementing an EGIRP Based Solution
 
LEGaTO: Software Stack Runtimes
LEGaTO: Software Stack RuntimesLEGaTO: Software Stack Runtimes
LEGaTO: Software Stack Runtimes
 
Improvement of accuracy in aircraft navigation by data fusion technique
Improvement of accuracy in aircraft navigation by data fusion techniqueImprovement of accuracy in aircraft navigation by data fusion technique
Improvement of accuracy in aircraft navigation by data fusion technique
 
Windsurfing with APPA: Automating the Computational Fluid Dynamics Simulation...
Windsurfing with APPA: Automating the Computational Fluid Dynamics Simulation...Windsurfing with APPA: Automating the Computational Fluid Dynamics Simulation...
Windsurfing with APPA: Automating the Computational Fluid Dynamics Simulation...
 
Cloud-based Integrated Process Planning and Scheduling Optimisation via Asyn...
 Cloud-based Integrated Process Planning and Scheduling Optimisation via Asyn... Cloud-based Integrated Process Planning and Scheduling Optimisation via Asyn...
Cloud-based Integrated Process Planning and Scheduling Optimisation via Asyn...
 
OpenACC Monthly Highlights: June 2019
OpenACC Monthly Highlights: June 2019OpenACC Monthly Highlights: June 2019
OpenACC Monthly Highlights: June 2019
 
IBM AI at Scale
IBM AI at ScaleIBM AI at Scale
IBM AI at Scale
 
20120140505010
2012014050501020120140505010
20120140505010
 
OpenACC Monthly Highlights: January 2021
OpenACC Monthly Highlights: January 2021OpenACC Monthly Highlights: January 2021
OpenACC Monthly Highlights: January 2021
 
OpenACC Monthly Highlights: October2020
OpenACC Monthly Highlights: October2020OpenACC Monthly Highlights: October2020
OpenACC Monthly Highlights: October2020
 
HARDWARE ACCELERATION OF THE GIPPS MODEL FOR REAL-TIME TRAFFIC SIMULATION
HARDWARE ACCELERATION OF THE GIPPS MODEL FOR REAL-TIME TRAFFIC SIMULATIONHARDWARE ACCELERATION OF THE GIPPS MODEL FOR REAL-TIME TRAFFIC SIMULATION
HARDWARE ACCELERATION OF THE GIPPS MODEL FOR REAL-TIME TRAFFIC SIMULATION
 
OpenACC Highlights: GTC Digital April 2020
OpenACC Highlights: GTC Digital April 2020OpenACC Highlights: GTC Digital April 2020
OpenACC Highlights: GTC Digital April 2020
 
INSIDE ARM-X - Countermeasure 2019
INSIDE ARM-X - Countermeasure 2019INSIDE ARM-X - Countermeasure 2019
INSIDE ARM-X - Countermeasure 2019
 
IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...
IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...
IRJET- FPGA Implementation of Low Power Configurable Adder for Approximate Co...
 

More from Seval Çapraz

A Quick Start To Blockchain by Seval Capraz
A Quick Start To Blockchain by Seval CaprazA Quick Start To Blockchain by Seval Capraz
A Quick Start To Blockchain by Seval CaprazSeval Çapraz
 
Yapay Sinir Ağları ile çiftler ticareti finansal tahmin pepsi cocacola örneği
Yapay Sinir Ağları ile çiftler ticareti finansal tahmin pepsi cocacola örneğiYapay Sinir Ağları ile çiftler ticareti finansal tahmin pepsi cocacola örneği
Yapay Sinir Ağları ile çiftler ticareti finansal tahmin pepsi cocacola örneğiSeval Çapraz
 
Assembly Dili İle Binary Search Gerçekleştirimi
Assembly Dili İle Binary Search GerçekleştirimiAssembly Dili İle Binary Search Gerçekleştirimi
Assembly Dili İle Binary Search GerçekleştirimiSeval Çapraz
 
Zimbra zooms ahead with OneView
Zimbra zooms ahead with OneViewZimbra zooms ahead with OneView
Zimbra zooms ahead with OneViewSeval Çapraz
 
Software Project Management Plan
Software Project Management PlanSoftware Project Management Plan
Software Project Management PlanSeval Çapraz
 
Distributed Computing Answers
Distributed Computing AnswersDistributed Computing Answers
Distributed Computing AnswersSeval Çapraz
 
Statistical Data Analysis on a Data Set (Diabetes 130-US hospitals for years ...
Statistical Data Analysis on a Data Set (Diabetes 130-US hospitals for years ...Statistical Data Analysis on a Data Set (Diabetes 130-US hospitals for years ...
Statistical Data Analysis on a Data Set (Diabetes 130-US hospitals for years ...Seval Çapraz
 
Statistical Data Analysis on Diabetes 130-US hospitals for years 1999-2008 Da...
Statistical Data Analysis on Diabetes 130-US hospitals for years 1999-2008 Da...Statistical Data Analysis on Diabetes 130-US hospitals for years 1999-2008 Da...
Statistical Data Analysis on Diabetes 130-US hospitals for years 1999-2008 Da...Seval Çapraz
 
VARIABILITY MANAGEMENT IN SOFTWARE PRODUCT LINES
VARIABILITY MANAGEMENT IN SOFTWARE PRODUCT LINESVARIABILITY MANAGEMENT IN SOFTWARE PRODUCT LINES
VARIABILITY MANAGEMENT IN SOFTWARE PRODUCT LINESSeval Çapraz
 
A Content Boosted Hybrid Recommendation System
A Content Boosted Hybrid Recommendation SystemA Content Boosted Hybrid Recommendation System
A Content Boosted Hybrid Recommendation SystemSeval Çapraz
 
Importance of software quality assurance to prevent and reduce software failu...
Importance of software quality assurance to prevent and reduce software failu...Importance of software quality assurance to prevent and reduce software failu...
Importance of software quality assurance to prevent and reduce software failu...Seval Çapraz
 
A Document Management System in Defense Industry Case Study
A Document Management System in Defense Industry Case StudyA Document Management System in Defense Industry Case Study
A Document Management System in Defense Industry Case StudySeval Çapraz
 
Comparison of Parallel Algorithms For An Image Processing Problem on Cuda
Comparison of Parallel Algorithms For An Image Processing Problem on CudaComparison of Parallel Algorithms For An Image Processing Problem on Cuda
Comparison of Parallel Algorithms For An Image Processing Problem on CudaSeval Çapraz
 
Semantic Filtering (An Image Processing Method)
Semantic Filtering (An Image Processing Method)Semantic Filtering (An Image Processing Method)
Semantic Filtering (An Image Processing Method)Seval Çapraz
 
Optical Flow with Semantic Segmentation and Localized Layers
Optical Flow with Semantic Segmentation and Localized LayersOptical Flow with Semantic Segmentation and Localized Layers
Optical Flow with Semantic Segmentation and Localized LayersSeval Çapraz
 
Spam Tanıma İçin Geliştirilmiş Güncel Yöntemlere Genel Bakış | Seval Çapraz
Spam Tanıma İçin Geliştirilmiş Güncel Yöntemlere Genel Bakış | Seval ÇaprazSpam Tanıma İçin Geliştirilmiş Güncel Yöntemlere Genel Bakış | Seval Çapraz
Spam Tanıma İçin Geliştirilmiş Güncel Yöntemlere Genel Bakış | Seval ÇaprazSeval Çapraz
 
Data Streaming For Big Data
Data Streaming For Big DataData Streaming For Big Data
Data Streaming For Big DataSeval Çapraz
 
What is Datamining? Which algorithms can be used for Datamining?
What is Datamining? Which algorithms can be used for Datamining?What is Datamining? Which algorithms can be used for Datamining?
What is Datamining? Which algorithms can be used for Datamining?Seval Çapraz
 
Bir Android Uygulamasında Bulunması Gereken Özellikler | Seval ZX | Android D...
Bir Android Uygulamasında Bulunması Gereken Özellikler | Seval ZX | Android D...Bir Android Uygulamasında Bulunması Gereken Özellikler | Seval ZX | Android D...
Bir Android Uygulamasında Bulunması Gereken Özellikler | Seval ZX | Android D...Seval Çapraz
 

More from Seval Çapraz (20)

A Quick Start To Blockchain by Seval Capraz
A Quick Start To Blockchain by Seval CaprazA Quick Start To Blockchain by Seval Capraz
A Quick Start To Blockchain by Seval Capraz
 
Yapay Sinir Ağları ile çiftler ticareti finansal tahmin pepsi cocacola örneği
Yapay Sinir Ağları ile çiftler ticareti finansal tahmin pepsi cocacola örneğiYapay Sinir Ağları ile çiftler ticareti finansal tahmin pepsi cocacola örneği
Yapay Sinir Ağları ile çiftler ticareti finansal tahmin pepsi cocacola örneği
 
Etu Location
Etu LocationEtu Location
Etu Location
 
Assembly Dili İle Binary Search Gerçekleştirimi
Assembly Dili İle Binary Search GerçekleştirimiAssembly Dili İle Binary Search Gerçekleştirimi
Assembly Dili İle Binary Search Gerçekleştirimi
 
Zimbra zooms ahead with OneView
Zimbra zooms ahead with OneViewZimbra zooms ahead with OneView
Zimbra zooms ahead with OneView
 
Software Project Management Plan
Software Project Management PlanSoftware Project Management Plan
Software Project Management Plan
 
Distributed Computing Answers
Distributed Computing AnswersDistributed Computing Answers
Distributed Computing Answers
 
Statistical Data Analysis on a Data Set (Diabetes 130-US hospitals for years ...
Statistical Data Analysis on a Data Set (Diabetes 130-US hospitals for years ...Statistical Data Analysis on a Data Set (Diabetes 130-US hospitals for years ...
Statistical Data Analysis on a Data Set (Diabetes 130-US hospitals for years ...
 
Statistical Data Analysis on Diabetes 130-US hospitals for years 1999-2008 Da...
Statistical Data Analysis on Diabetes 130-US hospitals for years 1999-2008 Da...Statistical Data Analysis on Diabetes 130-US hospitals for years 1999-2008 Da...
Statistical Data Analysis on Diabetes 130-US hospitals for years 1999-2008 Da...
 
VARIABILITY MANAGEMENT IN SOFTWARE PRODUCT LINES
VARIABILITY MANAGEMENT IN SOFTWARE PRODUCT LINESVARIABILITY MANAGEMENT IN SOFTWARE PRODUCT LINES
VARIABILITY MANAGEMENT IN SOFTWARE PRODUCT LINES
 
A Content Boosted Hybrid Recommendation System
A Content Boosted Hybrid Recommendation SystemA Content Boosted Hybrid Recommendation System
A Content Boosted Hybrid Recommendation System
 
Importance of software quality assurance to prevent and reduce software failu...
Importance of software quality assurance to prevent and reduce software failu...Importance of software quality assurance to prevent and reduce software failu...
Importance of software quality assurance to prevent and reduce software failu...
 
A Document Management System in Defense Industry Case Study
A Document Management System in Defense Industry Case StudyA Document Management System in Defense Industry Case Study
A Document Management System in Defense Industry Case Study
 
Comparison of Parallel Algorithms For An Image Processing Problem on Cuda
Comparison of Parallel Algorithms For An Image Processing Problem on CudaComparison of Parallel Algorithms For An Image Processing Problem on Cuda
Comparison of Parallel Algorithms For An Image Processing Problem on Cuda
 
Semantic Filtering (An Image Processing Method)
Semantic Filtering (An Image Processing Method)Semantic Filtering (An Image Processing Method)
Semantic Filtering (An Image Processing Method)
 
Optical Flow with Semantic Segmentation and Localized Layers
Optical Flow with Semantic Segmentation and Localized LayersOptical Flow with Semantic Segmentation and Localized Layers
Optical Flow with Semantic Segmentation and Localized Layers
 
Spam Tanıma İçin Geliştirilmiş Güncel Yöntemlere Genel Bakış | Seval Çapraz
Spam Tanıma İçin Geliştirilmiş Güncel Yöntemlere Genel Bakış | Seval ÇaprazSpam Tanıma İçin Geliştirilmiş Güncel Yöntemlere Genel Bakış | Seval Çapraz
Spam Tanıma İçin Geliştirilmiş Güncel Yöntemlere Genel Bakış | Seval Çapraz
 
Data Streaming For Big Data
Data Streaming For Big DataData Streaming For Big Data
Data Streaming For Big Data
 
What is Datamining? Which algorithms can be used for Datamining?
What is Datamining? Which algorithms can be used for Datamining?What is Datamining? Which algorithms can be used for Datamining?
What is Datamining? Which algorithms can be used for Datamining?
 
Bir Android Uygulamasında Bulunması Gereken Özellikler | Seval ZX | Android D...
Bir Android Uygulamasında Bulunması Gereken Özellikler | Seval ZX | Android D...Bir Android Uygulamasında Bulunması Gereken Özellikler | Seval ZX | Android D...
Bir Android Uygulamasında Bulunması Gereken Özellikler | Seval ZX | Android D...
 

Recently uploaded

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfngoud9212
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Bluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdfBluetooth Controlled Car with Arduino.pdf
Bluetooth Controlled Car with Arduino.pdf
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 

GPU-Accelerated Route Planning of Multi-UAV Systems Using Simulated Annealing (SA) Algorithm

  • 1. Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 GPU-Accelerated Route Planning of Multi-UAV Systems Using Simulated Annealing (SA) Algorithm Seval CAPRAZ1, 2 , Halil AZYIKMIS2 , Adnan OZSOY2 * ANTE GRUP Bilisim Ticaret A.S. ** Department of Computer Engineering, Hacettepe University
  • 2. 2Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 The problem Problem statement Traversing all predefined waypoints with minimum cost. (Finding shortest path for each UAV) Traveling Salesman Problem (TSP)
  • 3. 3Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 The problem Problem statement Traversing all predefined waypoints with minimum cost. (Finding shortest path for each UAV) Traveling Salesman Problem (TSP)
  • 4. 4Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 The problem Problem statement Traversing all predefined waypoints with minimum cost. (Finding shortest path for each UAV) Traveling Salesman Problem (TSP)
  • 5. 5Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 The problem Problem Complexity In TSP-type problems, finding the best solution generally requires testing all the search space and this seems to be impractical. In our case, with N waypoints, search space consists of N! solutions. Adding one more waypoint to the system has a considerable effect on the overall system performance because of the increasing number of elements in the search space from N! to (N+1)!. When dealing with this kind of NP-hard problems, we can use different optimization algorithms to search and find an acceptable (near-optimal) solution rather than to find the best solution.
  • 6. 6Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Solution Simulated Annealing (SA) Algorithm Analogy with annealing in solids provides a framework for optimization of the properties of very large and complex systems. In SA, the objective function is used instead of the energy of a material.
  • 7. 7Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Simulated Annealing Algorithm In Detail
  • 8. 8Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Simulated Annealing Algorithm At high temperatures, the probability of accepting a worsening move is high, in contrast, at low temperatures, this probability is very low. deltaE: Energy/Cost difference between current state and next state (current - next) Basic Criteria & Code Sample IF THE NEW SOLUTION IS BETTER THEN ACCEPT NEW SOLUTION UNCONDITIONALLY ELSE //(NEW SOLUTION COST > CURRENT SOLUTION COST CALCULATE ACCEPTANCE_PROBABILITY IF ACCEPTANCE_PROBABILITY > MATH.RANDOM(1..0) THEN ACCEPT NEW SOLUTION
  • 9. 9Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Solutions Solution 1 CPU Implementation (serial) Solution 2 CPU Implementation (parallel) Solution 3 GPU Implementation 6
  • 10. 10Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 CUDA & NVIDIA Device Information
  • 11. 11Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 The DataSets Traveling Salesman Problem Library (TSPLIB) Created and presented by University of Heidelberg, Germany. http://comopt.ifi.uni-heidelberg.de/software/TSPLIB95/tsp/ Datasets tested/used in this work: berlin52.tsp : 2D, 52 waypoints, integer berli52_3D.tsp : 3D, 52 waypoints, integer pr1002.tsp : 2D, 1002 waypoints, integer tsp225.tsp : 2D, 225 waypoints, decimal Contents of the ​pr1002.tsp​ file 1 1150 4000 2 1050 2750 3 1150 2250 4 1250 2050 5 1350 2350 ... ... ... 1001 14550 8450 1002 14550 11650
  • 12. 12Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Recommended Solution Cooling Loop Async Data Transfer Block #1 Block #2 Block #3 Block #4 Device (GPU)Host (CPU) . . . 256 threads . . . 256 threads . . . 256 threads . . . 256 threads Global Memory
  • 13. 13Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Implementation
  • 14. 14Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 The Data Structures & Settings
  • 15. 15Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 CPUImplementation(serial)
  • 16. 16Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 CPUImplementation(parallel)
  • 17. 17Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 GPUImplementation
  • 18. 18Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 GPUImplementation Equilibrium State Loop (ESL), as a CUDA kernel, is executed by an array of threads in parallel on the GPU. The ESL has two main responsibilities: ➢ neighbour generation ➢ acceptance evaluation Each thread gets its own solution conf from global memory to its local memory by using its unique id threadId as the index of configurations. Then, ESL starts for new neighbour generation and acceptance evaluation. At each equilibrium state iteration, a neighbour newConf is generated by swapping randomly selected two elements in the current solution conf. After candidate solutions generated at the end of the ESL by all threads transferred from GPU tp CPU, the host continues its own operations in the cooling iteration by decreasing the temperature and selecting the best solution, and so on.
  • 19. 19Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Results
  • 20. 20Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Graphical Representation of a Solution
  • 21. 21Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Results of GPU Implementation
  • 22. 22Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Comparison of CPU Implementations Note: The parameters used in all tests are listed below: 1.dataset = pr1002.tsp (1002 waypoints) 2.NUMBER_OF_UAV = 3 3.MAX_OUTER_ITER = 10000 4.MAX_INNER_ITER = 100
  • 23. 23Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Conclusion In conclusion, route planning for multiple UAVs needs a lot of execution time and resources. We can decrease the time and travel cost by using parallel solutions. GPU accelerated route planning for multi-UAVs provides better solutions as compared to serial and parallel implementation in CPU. The optimization of increasing thread number and transferring data asynchronously can make the algorithm faster. The statistical results provide that our optimized GPU based parallelized approach of route planning problem for multiple UAVs is nearly 1.6 times faster than CPU solutions. In addition to this, our GPU based parallel solution for SA algorithm using NVIDIA CUDA platform is the fastest solution so far thanks to the massive parallelization capabilities of GPUs and optimization techniques on GPU programming. It is the expected result that GPU solution makes algorithm faster than both the recent serial and parallel CPU-based ones. Not only the execution time is diminishes but also the travel cost decreases.
  • 24. 24Seval CAPRAZ | ICCTA 2019 | Istanbul, Turkey | April 16, 2019 Question? Seval Capraz seval.capraz@antegrup.com.tr