0% found this document useful (0 votes)
18 views

"Algorithm Design and Analysis": Doctoral Program in Computer Science

This document proposes a course on algorithm design and analysis for a doctoral program in computer science. The course will cover fundamental algorithm design strategies, complexity analysis, and algorithms for bioinformatics problems. It will provide students with knowledge of algorithm design techniques like divide-and-conquer, greedy algorithms, and dynamic programming. The course will also analyze algorithms for bioinformatics problems such as string matching, sequence alignment, and suffix trees. Students will be assessed through assignments, reports, and a final exam.

Uploaded by

Ananth Adithya
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views

"Algorithm Design and Analysis": Doctoral Program in Computer Science

This document proposes a course on algorithm design and analysis for a doctoral program in computer science. The course will cover fundamental algorithm design strategies, complexity analysis, and algorithms for bioinformatics problems. It will provide students with knowledge of algorithm design techniques like divide-and-conquer, greedy algorithms, and dynamic programming. The course will also analyze algorithms for bioinformatics problems such as string matching, sequence alignment, and suffix trees. Students will be assessed through assignments, reports, and a final exam.

Uploaded by

Ananth Adithya
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

UniversitiesofMinho,AveiroandPorto

DoctoralPrograminComputerScience

"AlgorithmDesignandAnalysis"

April2009

A. Program

1. PurposeandJustification
This document proposes and describes a Unit Course on Theory and Fundamentals for the MAPIDoctoralProgram.ThisUnitCourseisentitledAlgorithmDesignandAnalysisandwill address three major and interrelated themes within the Algorithms and Complexity area, namely,fundamentalalgorithmdesignstrategies,algorithmefficiencyandcomplexityanalysis, andalgorithmsforBioinformatics. ThiscoursewillprovidefundamentalknowledgetoMAPIstudents,whowillbeabletoapply different design strategies and develop appropriate algorithms for different application problems. The proposed course is aimed at algorithm design strategies and efficiency analysis methodologies,andstrivestostrikeabalancebetweentherequiredfundamentalknowledge andthepresentationofdifferentcasestudies,withemphasisintheBioinformaticsarea.The theoretical foundations will be introduced, followed by stateoftheart approaches to solve practical problems. Emphasis will be put on discussing global design strategies and possible applications. In fact, it is a major goal to stimulate students to explore other application problemsandalternativeproblemsolvingtechniques. Examplesofgraduatecoursessimilartothisonecanbefoundinseveraluniversities,suchas: MIT o 6.854JAdvancedAlgorithms CMU o 15750AlgorithmsCore o 15853Algorithmsinthe"RealWorld" Whilethemaintopicsandsomeofthecaseproblems/studiesoftheproposedcoursearethe same,theabovecourseshavealargerscope,addressingmoreadvancedcomplexityanalysis methodsandencompassingvariousapplicationareas,andalsodealwithparticularadvanced datastructures. The smaller scope of the proposed course is a deliberate option, to accommodate students withlessCSbackgroundandtoallowmoreemphasisintheBioinformaticsarea. The decision to structure the course around algorithm design strategies (e.g., divideand conquer, greedy algorithms, etc.) and not problem types (e.g., sorting, shortest paths, etc.) seemsalsotobefavorabletointerestedstudents,bypresentingthemearlywithvariouscase problemsthatcanbeaddressedbydifferentalgorithmicstrategiesalongthecourse.

2. Goals
SincestudentsenrollingintheMAPIprogrammighthavedifferentbackgroundswithvarious levelsofknowledgeinthefundamentalComputerScienceareaofAlgorithmsandComplexity, oneofthemaingoalsoftheproposedcourseistohelpeliminatesuchdifferences.Therefore, the proposed course is particularly important for students without an appropriate CS background,andshouldbeattractivetothem. Additionally, and given the theme of the 2008/2009 edition of the doctoral program, the coursewillfocusonparticularproblemsandalgorithmsintheBioinformaticsarea,whichwill be used to provide students with a more applied perspective. And constitute a first step towardsotherrelatedcoursesintheprogram.

3. LearningOutcomes
Uponsuccessfulconclusionofthisunitcoursestudentswillbeableto: identify,foracertainproblem,themoreadequatealgorithmdesignstrategies; design, implement and test an appropriate algorithm for different application problems; analyzetheefficiencyofdifferentalgorithmsforthesameproblemandclassifythem accordingtotheircomplexity; applythemainstrategiesandalgorithmsusedinparticularBioinformaticsproblems.

4. DetailedProgram
1. Introduction a. AlgorithmDesignStrategies b. FundamentalsofAlgorithmComplexityAnalysis c. IntroductiontoBioinformatics 2. AlgorithmDesign a. BruteForceandExhaustiveSearch b. DivideandConquer c. DecreaseandConquer d. DynamicProgramming e. GreedyAlgorithms f. AdvancedAlgorithmDesignTechniques i. BacktrackingandBranchandBound ii. ComputingApproximateSolutions

3. AlgorithmsforBioinformaticsProblems a. StringMatching b. SuffixTreesandSuffixArrays c. SequenceAlignment d. Additionalproblems/applications The lectures will provide, for every main course topic, the presentation of the fundamental concepts,someapplicationexamplesorcasestudies,aswellassuggestionsforfurtherwork. The emphasis is on the fundamental concepts, the algorithm design strategies and their applicabilitytoproblemsofdifferentkinds.

5. TeachingMethodology
The course will be made up of lectures that will be complemented by tutorial meetings between students and professors/researchers, mainly for advice related to the various assignments.Thematerialusedbytheprofessorstolectureandsupporttheirclasses(slides, videos,notes,etc.)willbemadeavailabletothestudentsonthecoursesite. Practical assignments will be defined at the end of each module and may require either developmentofsimpleapplications,orwritingareportaboutagiventhemewithassociated bibliographicresearch.Suchreports,withaformatclosetoscientificpapers,willalsoservefor their assessment, and encompass stateoftheart reports, position papers, or discussion of publications. It is expected that students make serious research in this context, using the internationally accepted scientific data bases. Dedicated course workshops can also be organizedforpresentation,inforumenvironment,oftheworkdonebythestudents. Seminalandfundamentalpaperswillbesuggestedtostudentsasimportantreadingmaterial andsomeofthemmightbepresentedinclass,anddiscussedintutorialorientationmeetings. Applicationareas/problemswillbepresentedanddiscussed.Besidesconstitutingexamplesof algorithmsusageandallowingthesedimentationoftheacquiredknowledgeasawhole,thisis intendedasanopportunityforstudentstoexercisetheircriticalabilitiesanddesign/propose newideasandapplications.

6. Assessment
Studentassessmentwillbeachievedintwomaincomponents:projectassignmentsandreport writing,andafinalexamination,eachonewithaweightof50%. At the end of each main topic, a small project assignment will be given. Depending on the topic, the project can be in the design and test of an algorithm or a written report on a particulartechnique,algorithm,applicationarea,etc.

Thereporttakestheformofasurveyandwillbeorientedforadeeperdiscussionofseveral solutionsoftheelectedproblem. Studentsthatfailtoperformonanyoftheaboveassignment/tasksshallnotbeconsideredfor finalassessment.

7. References
S.BaaseandA.VanGelder.ComputerAlgorithmsIntroductiontoDesignandAnalysis3rd. Ed.AddisonWesley,2000. H.J.BckenhauerandD.Bongartz.AlgorithmicAspectsofBioinformatics.Springer,2007. T.H.Cormenetal.IntroductiontoAlgorithms2ndEd.MITPress,2001. D.Gusfield.AlgorithmsonStrings,TreesandSequences.CambridgeUniversityPress,1997. J.Kleinbergand.Tardos.AlgorithmDesign.AddisonWesley,2005. A.Levitin.IntroductiontotheDesignandAnalysisofAlgorithms.AddisonWesley,2003. K.MehlhornandP.Sanders.AlgorithmsandDataStructuresTheBasicToolbox.Springer A.PolanskiandM.Kimmel.Bioinformatics.Springer,2007.

You might also like