|
|
Collaborative Research Experience for
Women in Undergraduate
Computer Science and Engineering (CREW) 2000-2001
Final Project Report May 2001
Project Title An Empirical Study of Convex Hull Algorithms
Student Researchers Ashley Stockdale and Traci Van Patten
Faculty Sponsor Dr. Lynn Stauffer, Associate Professor, Computer Science
Dept.
Home Institution California State University, Sonoma
Requested Budget $2000.00
Project Description
Computational geometry encompasses the study of inherently geometric problems
for which efficient algorithmic solutions are needed. Applications are far-ranging
and include problems in computer aided design (CAD) (such as boundary representations
of shapes, intersection and union of shapes, and blending of surfaces),
graphics (such as hidden surface elimination and simplification of distant
objects), medical computation (such as reconstruction of shapes (organs,
bones, tumors, etc.) by determining surfaces from a collection of points),
and textile layout (such as the minimization of fabric required to cover
a given pattern). This project investigated the convex hull problem in two-dimensions.
The work explored the empirical behavior of several convex hull algorithms.
Final Project Report
We spent the past year learning, implementing and analyzing convex hull
algorithms. We have successfully met our major project goals and plan on
continuing into the summer to finish those left incomplete. We made excellent
progress on our research but busy schedules and the desire to do our best
in producing accurate results has prevented us from having our final results.
After reading about a variety of convex hull algorithms we selected three
algorithms with different approaches and efficiency to compare our proposed
algorithm to: Extreme Edges (On^3) which compares points to a line; Jarvis
March (On^2) which sorts the points and then computes smallest angles;
and Grahams Scan (Onlogn) which sorts the points and then determines if
obtuse or acute angles are formed. We have completely implemented the
Extreme Edges algorithm and generated a set of test cases to use for comparison
between the algorithms. We also implemented the Grahams Scan algorithm
and the Jarvis' March algorithm, but problems with mathematical computations
for both are preventing us from doing an accurate time analysis. To complete
our research we will implement the proposed 'Extreme' algorithm devised
by Dr. George Ledin, a professor at Sonoma State University.
When analyzing our results we expect to see a correlation between the algorithms
actual run time and its big O notation. When implementing each algorithm
our understanding of how algorithms were classified using big O notation
was reinforced. Our programming skill was also enhanced as we implemented
data structures to store the points and support our necessary access requirements
and we used a new integrated development environment for our coding. While
our results are not quite complete, the subset of results we obtained did
reflect the actual times proportional increase to its O time in comparison
to other algorithms.
An important goal of our research project was to experience what graduate
research was like for students in Computer Science. We believe our experience
was similar to research done at the graduate level because of the successes
and difficulties we encountered. We experienced the exhilarations of getting
accurate results and the lows of needing additional resources and knowledge
in areas few have studied. Through gathering and reading the contemporary
information in our area of study, we gained greater skill in the important
area of surveying and reviewing the work of peers and of computer science
professionals. Our original proposal to use existing convex hull algorithm
code resulting in the unexpected discovery that few reliable algorithms
are implemented and posted for use. This added to the time needed to complete
our research since further effort was necessary to implement all the algorithms
with the same care and concern for efficiency. Finally, through choosing
a research topic, writing a successful proposal, and collecting and processing
the results of our study, attempting to produce an honest document that
will be useful to others involved in research, we have gained an important
skill set that will help us in our graduate level pursuits, and in our careers.
The CREW programs generosity in supporting undergraduate research has been
a valuable experience for our team. We know that the skills learned in this
program will help us in our chosen fields. While our research is not yet
complete there is satisfaction in the process to date. We are going to continue
our research over the summer and post the final results to our web page
at http://www.geocities.com/convexhullresearch/index.html.
|