Various Durham University Courseworks
Year 3:
- Algorithmic Game Theory: Answer questions on game theory, and work with a team to produce a podcast on auctions and a paper summarisation on complexity of Nash equilibria (Languages and libraries: LaTeX, Mark: 65%).
- Bioinformatics: Answer questions on hidden markov models, and phylogenetic trees (Languages and libraries: Python, LaTeX, Mark: 63%).
- Codes and Cryptography: Build a compression algorithm for LaTeX files and decrypt and encrypted what3words address (Languages and libraries: Python, LaTeX, Mark: 73%).
- Parallel Scientific Computing I: Produce an N-body gravity simulation, which utilises parallel and vectorisation methodologies (Languages and libraries: C++, LaTeX, Graphing, Mark: 73%).
- Virtual and Augmented Reality: Build a lens distortion pre-correction and answer questions on lens distortion and chromatic abberation (Languages and libraries: C#, Unity, LaTeX, Vertex Shader & Fragment Shader C code, Mark: 80%).
- Recommender Systems: Build a hybrid collaborative recommendation system on the Yelp Dataset (Languages and libraries: Python, Pandas, PyTorch, Mark: 90%).
- Programming Paradigms: Program Conway's Game of Life on a finite grid in C (Languages and libraries: C, Mark: 92%).
- AI Search: Develop two search space algorithms to solve the travelling salesman problem (Languages and libraries: Python, Mark: 83%).
- Cyber Security: Given a small local OS, gain access to the system, exploit vulnerabilities and explain how to mitigate them (Languages and libraries: Linux, Jack the Ripper, Kali, Terminal, Mark: 89%).
- Compiler Design: Develop a compiler for a First Order Logic formula (Languages and libraries: Python, Mark: 95%).
- Networks: Develop a client-server system, which implements a simple anonymous bulletin board system using TCP and custom protocols (Languages and libraries: Python (socket), Mark: 93%).
- Distributed Systems: Develop a food ordering system using distributed system concepts (Languages and libraries: Python, Pyro, Mark: 82%).
- Algorithms and Data Structures: Answer questions on hash maps, sorting and efficiency (Languages and libraries: Python, Mark: 93%).
- Computer Systems: Build low level code to convert a number between bases, bonus marks were awarded for code space and time efficiency (Languages and libraries: Custom Assembly, Mark: 94%).
See below for screenshots: