Undergraduate Research Opportunity Program
(UROP) Project Report
Design and Implementation of an Algorithm for a Problem
By
Tan Ah Kow
Department of Computer Science
School of Computing
National University of Singapore
2004/05
Undergraduate Research Opportunity Program
(UROP) Project Report
Design and Implementation of an Algorithm for a Problem
By
Tan Ah Kow
Department of Computer Science
School of Computing
National University of Singapore
2004/05
Project No: H123456
Advisor: Dr. Lee Ah Hua
Deliverables:
Report: 1 Volume
Source Code: 1 DVD
Abstract
In this report, we study a problem and design an efficient algorithm to solve the problem. We
implemented the algorithm and evaluated its performance against previous proposed algorithms
that solves the same problem. Our results show that our algorithm runs faster.
Subject Descriptors:
C5 Computer System Implementation
G2.2 Graph Algorithms
Keywords:
Problem, algorithm, implementation
Implementation Software and Hardware:
Solaris 10, g++ 3.3, Tcl/Tk 8.4.7
Acknowledgement
I would like to thank my friends, families and advisors. Without them, I would not have be
able to complete this project.
List of Figures
iv
List of Tables
v
Table of Contents
Title i
Abstract ii
Acknowledgement iii
List of Figures iv
List of Tables v
1 Introduction 1
1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 The Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.3 Our Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Report Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Related Work 3
3 Problem and Algorithm 4
3.1 Formal Description of Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2 Design of Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.3 Proof of Correctness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.4 Complexity Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4 Evaluation 5
4.1 Implementation Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.2 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
4.3 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
5 Conclusion 6
5.1 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
References 7
A Code A-1
B Proof B-1
vi
Chapter 1
Introduction
Many problems exist in computer science. In this project, we studied one particular important
problem and propose a solution for it.
1.1 Background
In this section, we briefly discuss the history and background of the problem. A detail literature
survey is presented in Chapter 2.
The problem we study in this report is an important one. This problem is first proposed
in 1990 in the context of graph theory (3). Zhang gives the first algorithm to the problem
and applied it to solve several problems in artificial intelligence (54). More recently, a slightly
different formulation of the problem is studied independently (21). None of the previous work
uses the technique that we propose in this project. Thus, we believe that our algorithm is novel.
1.2 The Problem
In this section, we formally defined the problem. We adopt the definition given by Kovsky (2).
1
1.3 Our Solution
1.4 Report Organization
2
Chapter 2
Related Work
3
Chapter 3
Problem and Algorithm
3.1 Formal Description of Problem
3.2 Design of Algorithm
3.3 Proof of Correctness
3.4 Complexity Analysis
4
Chapter 4
Evaluation
4.1 Implementation Details
4.2 Experimental Setup
4.3 Results
5
Chapter 5
Conclusion
5.1 Contributions
5.2 Future Work
6
References
M. Ali and N. Raman. Some algorithm to solve a problem in computer science. Technical
Report ISM-TR-506, Institute of Study, Malaysia, Kuala Lumpur, Malaysia, August 1994.
C. Kovsky, D. Chev, and E. Kov. A Slightly Different Formulation of The Problem. Russian
National Publisher, Moscow, Russia, 1992.
A. Smith. A problem in graph theory. In Proceedings of International Conference on Graph
Theory, pages 300–311, New York, NY, January 1990.
B. Zhang. The problem: algorithms and application to AI. Master’s thesis, National University
of USA, Santa Claus, CA, 1992.
B. Zhang and H. Advisor. First algorithm to solve the problem and its application to AI.
Journal of Problems and Solutions in Artificial Intelligence, 3(9):120–136, January 1991.
7
Appendix A
Code
A-1
Appendix B
Proof
In this appendix, we present alternate, longer, but more interesting proof of correctness of our
algorithm. This proof is based on induction and proof by contradiction.
B-1