Theses
Our group offers a range of topics for Bachelor’s and Master’s theses in Computer Science. All topics are closely connected to our ongoing research and publications.
Please read this whole page carefully before getting in touch. It describes what we expect and how the process works, from first contact to the final presentation. It is also worth looking through our list of completed theses to get a sense of the topics we supervise. We advise many theses each semester and, unfortunately, cannot accommodate every request. Note that on the Computer Science webpages you can also find very valuable information about your bachelor’s thesis and master’s thesis.
Thesis in Industry. If you are searching for an advisor for a thesis you plan to do with some company, please note that we only supervise such theses when (1) we know the company and advsing persons there very well, (2) the thesis focuses on topics we have good expertise in, and (3) we can scientifically drive topics and approaches and don’t leave the rules only to the company.
On this page
Overview
We offer thesis topics for both Bachelor and Master students, connected to our active research in natural language processing, information retrieval, knowledge graphs, question answering, and conversational AI — often with an interdisciplinary link to medicine, mental health, law, politics, or education. Master’s theses are possible both in Computer Science and in Scientific Computing.
Before applying, please review the requirements below, look at the topics of past theses, and make sure your interests genuinely align with the group’s research.
Requirements
Coursework
You should have completed a couple of advanced courses such as:
- Artifical Intelligence (IAI), undergraduate course
- Data Science for Text Analytics (IDSTA), undergraduate course
- Machine Learning Essentials (IMLE), graduate level
- Natural Language Processing with Transformers (INLPT)
- and any other courses related to machine learning, deep learning, generative AI; this also includes in particular lectures from Computational Linguistics.
In general, you should have a solid background in machine learning, ideally in combination with NLP. We strongly recommend that — especially before a Bachelor’s thesis — you first complete an advanced software practical in our group to become familiar with the data and tools we use across our projects.
Programming and technical skills (required)
- Very good programming expertise in Python, including frameworks such as FastAPI, Django, or Streamlit
- A solid background in statistics and linear algebra
- Familiarity with tools such as Git, Docker, and prominent AI-coding assistants such as Claude Code or Claude Cowork.
Helpful, but not required
- Machine-learning frameworks such as Scikit-learn or PyTorch
- NLP frameworks such as spaCy or LangChain
- Experience with OpenSearch and PostgreSQL
- Knowledge of agentic frameworks such as CrewAI or LangGraph
A note on the minimum background
If you have only taken the undergraduate course Datenbanken (IDB) and none of the courses above, it is unlikely that we can accommodate your request.
Getting in Contact
Once you’ve read this page and are confident that your interests and skills align with our research, send an email to Prof. Michael Gertz with the subject line “Anfrage BSc Arbeit” or “Anfrage MSc Arbeit”. Please include:
- your current transcript as a PDF (downloadable from heiCo),
- information about your field of application (Anwendungsfach) and the relevant courses you have completed,
- your programming experience and the projects you have worked on,
- the areas of our research you are most interested in, and
- anything else that helps us understand your request.
We will review your materials and, if there is a good fit, arrange an in-person meeting to discuss possible topics and next steps.
Thesis Exposé
Once a topic has been agreed upon, and before official registration, you write a short exposé (about 2–3 pages). It demonstrates your approach to scientific work and writing, and typically becomes the basis for the introductory chapter of your thesis — so the effort is not wasted. The exposé should cover:
- the context of the project and the surrounding research,
- the problem statement(s),
- your objectives and planned approach,
- related work, and
- milestones for completing the thesis on time.
Getting a good overview of the related work early on is particularly important; your advisor will give you some starting points. You submit the exposé to your advisor on an agreed schedule; occasionally, students present their research plan in a short (10–15 minute) talk to the group for feedback.
Official Registration
After a satisfactory exposé, you and your advisor agree on an official start date and you complete the registration form for your program (see also here for a bachelor’s thesis and here for a master’s thesis):
- Bachelor’s thesis — form from the Computer Science Department,
- Master’s thesis in Computer Science — form from the Computer Science department,
- Master’s thesis in Scientific Computing — form from the faculty’s web site.
Hand the completed form to Prof. Michael Gertz via email, who signs it and submits it to the relevant examination office.
Research & Advising
Your thesis is ultimately your own work on the agreed topic. After registration, you schedule the next steps with your advisor. Please do not expect us to inquire about your progress — if we have to ask, it is usually a sign that you are falling behind schedule.
- Meetings. Bachelor’s and Master’s theses typically involve bi-weekly meetings (or meetings on demand). They serve to answer questions and discuss how to proceed based on your findings and ideas.
- Preparation. Send the topics you want to discuss — for example thesis sections you have written — to your advisor ahead of each meeting. Ideally, prepare a short presentation consisting of 3-4 slides that describe what you’ve done, what are you currently working on, and what the planned next steps are.
- LaTeX. All theses must be written in LaTeX, the scientific standard in Computer Science, using our thesis template (see below).
- Language. We prefer and encourage English, the language of research and most of IT and Computer Science; German, of course, is permitted.
- Scientific writing. You are responsible for ensuring your thesis meets the standards of a scientific paper. Matters of format and style are covered in the seminars that are part of your curriculum.
- Academic integrity. Follow the university’s rules on good academic practice and against plagiarism. Please also note that there are several constraints on where and how you are allowed to use the various AI tools as part of your thesis research and writing. See, for example, the GUIDELINE ON THE USE OF AI IN TEACHING AND LEARNING AT HEIDELBERG UNIVERSITY.
Helpful guidelines are listed, for example, in the following documents:
- Here are some hints on grammar and style we maintain locally.
- Some easy, purely syntactic hints on writing good research papers (from Prof. Felix Naumann)
- Dos and don’ts, Universität Heidelberg, Prof. Dr. Anette Frank
- Leitfaden zur Abfassung wissenschaftlicher Arbeiten, Ruhr-Universität Bochum, Katarina Klein
- Leitfaden zur Abfassung wissenschaftlicher Arbeiten, TU Dresden, Maria Lieber
Thesis Template
You must use our LaTeX thesis template. It is designed for a Master’s thesis in Computer Science written in English, but it can be adapted for a Bachelor’s thesis or for a thesis written in German. You may improve the template within reason.
Downloads
-
Thesis template — LaTeX sources (
.zip) — the complete sources of the template: the main documentmain.tex, areferences.bibfor your literature, and the individual parts of the thesis as separate files ininc/— title page, abstract and Zusammenfassung, introduction, background, model, evaluation, and conclusion — so you can work on one chapter at a time. -
Sample thesis (
.pdf) — the template compiled to PDF. Use it to see what the finished layout looks like — title page, abstract and Zusammenfassung, chapter structure, figures, tables, and citations — before you start writing.
Start from main.tex, replace the title page information with your own, and write your chapters in the provided files. Manage your literature in the supplied .bib file and cite from there; do not hard-code references.
Detailed guidance on writing seminar papers with the template will be added here as well.
Submitting Your Thesis
All information about submitting your thesis can be found here for a Bachelor’s thesis and here for a Master’s thesis. When submitting the signed PDF to the examination office, please put Prof. Gertz in cc.
Final Presentation
After submitting your thesis to the examination office (Ms. Sopka for Computer Science, Ms. Schoppers for Scientific Computing), you coordinate with your advisor to schedule your presentation. For Master’s theses, the second reviewer’s availability must also be taken into account. We arrange a room once the date and time are fixed.
- Public. The presentation is open to the public and announced via the department’s mailing lists.
- Length. You have 30 minutes (it can be a few minutes less, but definitely not more). Keep in mind that part of the audience is not familiar with your research, so clearly state the problem setting and objectives. Also make clear what your contributions are. Note that sometimes figures say more than thousand words, so include examples and illustrations where appropriate.
- Style. Presentations should meet scientific standards — avoid fancy animations or distracting color schemes, and include slide numbers to support the discussion afterwards.
Here is a
Beamer template — LaTeX sources (.zip). You can use the template as basis for your presentation. Feel free to use other frameworks for your presentation, but keep the main required elements in mind (proper title page, TOC, footer, etc.).