Implementation |
-
programming skills
-
basic knowledge on algorithms and data structures on strings (String Processing Algorithms course or equivalent knowledge)
|
-
implements simple algorithms and data structures on strings
-
documents the implementations sufficiently to enable compiling and running the implementations and understanding the code
|
-
checks the correctness of the implementations with simple tests and documents this
-
optimizes the implementations to a reasonable decree and documents this
|
-
finds the state-of-the-art algorithms and implementations in the literature and/or on the internet
-
develops an implementation that outperforms previous algorithms/implementations
|
Experimentation |
|
-
designs and performs an experimental comparison of the implementations and finds some non-trivial information about their performance as a result
|
-
provides a good idea of the performance of the implementations over a range of situations (for example over different sizes and types of inputs or over different parameter settings)
-
identifies some of the the main strengths and weaknesses of the algorithms and implementations in terms of practical performance
-
explains some of the behaviour observed in the experiments (for example by theoretical analysis or by key implementation details)
-
draws conclusions about the experimental results
|
-
designs a new algorithm or improves an implementation based on the results of the experiments
|
Presentation |
|
-
summarizes the algorithms, their implementations, the experiments and their results to an audience
|
-
describes the algorithm and implementation details that are relevant for understanding the experimental results
-
describes the experiments with enough detail for someone to repeat them
-
presents the results in a way that highlights the key conlusions
-
presents the information in a way that is understandable to someone with just a rudimentary knowledge of the prequisites
|
-
summarizes the state-of-athe-art on related algorithms and implementations
-
finds information on scientific presentation and uses the information in designing the presentation
|