Question: Closest Pair Problem 1 Objectives By completing this project, students will: Gain practical experience in implementing algorithmic solutions for computational ge - ometry problems. Understand
Closest Pair Problem
Objectives
By completing this project, students will:
Gain practical experience in implementing algorithmic solutions for computational ge
ometry problems.
Understand the tradeoffs between bruteforce and divideandconquer approaches.
Learn to analyze and interpret the computational complexity of algorithms.
Develop skills in data visualization and technical reporting.
Problem Statement
The Closest Pair Problem is a classical computational geometry problem that aims to
find the two closest points in a set of n points in a dimensional plane. In this project,
students will implement and compare two approaches for solving the closest pair problem:
Brute force and Divideandconquer. The task involves analyzing the performance of these methods across randomly generated datasets of varying sizes. Students are encouraged
to use any programming language of their choice, with the requirements listed below.
Implementation Requirements
Implement the bruteforce and divideandconquer approaches for the closest pair prob
lem.
You may use standard libraries for basic operations such as sorting and computing the
Euclidean distance between two points Do not use any specialized libraries or builtin functions that directly solve the closest pair problem.
Other than these helper libraries, you should implement and submit your own work.
Performance Analysis
Evaluate the performance of both approaches using datasets of increasing size eg
n KKM
Measure and compare the runtime of both methods for each dataset size.
Use figures to illustrate how the performance changes with dataset size for both algo
rithms.
Theoretically analyze and compare the time complexity of the two algorithms. Com
pare the theoretical analysis with the experimental results.
Report Guidelines
Students are required to provide a detailed report containing:
A brief introduction to the problem.
Pseudocode for both approaches.
Theoretical analysis of the computational complexity between the two methods.
Figures and charts showing the performance analysis.
Conclusions drawn from the results.
Names of team members maximum and contribution of each member.
Cite any external resources used, such as textbooks, websites, or research papers.
Deliverables
A PDF document containing all the sections outlined in the report guidelines.
All source code files in a zipped file wellorganized and commented.
A README or metadata file with instructions on how to compile and run your pro
grams, including any necessary installations or dependencies.
Optional Bonus
Testing on the World Cities Dataset
As an optional bonus, students are encouraged to test their implemented algorithms on a
realworld dataset: the World Cities Dataset. In this dataset, the latitude and longitude
of cities around the world are used as the coordinates for the closest pair problem.
Requirements
Use the World Cities Dataset available on Kaggle, which contains the names, countries,
and geographical coordinates of cities worldwide.
Treat the latitude and longitude as the x and y coordinates respectively, and compute
the closest pair of cities using both the brute force and divideandconquer approaches.
Compare the performance of the two algorithms for varying subsets of the dataset
based on cities within a a specific region, b country, c the entire dataset
Provide a detailed analysis in the report, including:
A description of the dataset.
Figures and charts showing the runtime comparison between the two approaches.
Discussion of the challenges if any encountered during this task.
Implementing the Sweep Line Algorithm
For an additional bonus, students are encouraged to implement the Sweep Line algorithm for solving the closest pair problem iteratively.
Requirements
Implement the iterative Sweep Line algorithm for the closest pair problem.
Add this algorithm to the experimental analysis alongside the bruteforce and divideandconquer approaches.
Add the pseudocode of this algorithm to your report.
Compare the performance of all three algorithms brute force, divideandconquer, and sweep line both theoretically and experimentally.
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
