Project suggestions are listed below. These projects are suitable for 4th year projects, or for MSc projects. Each of these project areas can be turned into multiple different projects for different students, but there is a limit to the number of projects I can supervise, so not all projects are guaranteed to be allocated. You are also welcome to suggest your own project, if they match my general interests outlined below. It is best to contact me first by email (k.brown @ ucc.ie).
My interests are in applied AI, including constraint programming and machine learning, and particularly in reliable and explainable systems. For example, how do we build LLM-based or Agentic systems that we can be confident are recommending correct actions? How can a group of autonomous vehicles coordinate to move efficiently but avoid collisions? How do we build work schedules that are fair to all workers? How do we explain the output of a decision support system so that the user can trust it?
Project Details
KNB1: LLMs and agents for reliable reasoning
LLMs are being developed for a wide variety of applications, but they still have issues with factual inaccuracies and faulty reasoning. Constraint programming tools are used in industry to solve complex problems in scheduling, configuration, timetabling, and design -- their reasoning is correct, but obtaining the models is difficult, explanations are complex, and user interaction has to be hand crafted for every new problem. This project will evaluate one of more LLMs applied to some reasoning problems, and will explore the interaction between LLMs and constraint solvers for creating reliable and usable systems.
Requirements The project would suit someone with strong coding skills, and with the ability to explore new topics independently.
KNB2: Multi-agent pathfinding with scheduling
Multi-agent pathfinding is an active research topic, developing algorithms for generating routes for agents so that they complete their tasks quickly without colliding. It was based on the need to plan routes for warehouse robots in distribution centres like those Amazon and other retailers. The standard approach relies on many repeated runs of A* (an extension of Dijkstra) on a grid graph. It assumes that each task is independent. But in manufacturing scheduling, there are often dependencies between tasks, and so agent 1 reaching its destination before agent 2 reaches its destination is sometimes pointless. In this project you will consider how to extend the algorithms so that the routes and timings for the agents optimise for the overall scheduling problem instead of just for the travel times..
Requirements The project would suit someone with strong coding skills, who is comfortable with all the material from CS2515 and CS2516 (Algorithms and Data Structures), and who is able to read and understand recent research papers.
KNB3: Generative AI as a requirements acquistion tool
One of the fundamental problems in software development is the need to make sure that clients and developers have the same understanding of the requirements. Typically this is done through lengthy iterative development - sharing initial designs, mockups and solutions with the client, refining the requirements, and repeating. This is particularly difficult in constraint applications, where the specification might be written in English, which must be translated into a model which can be executed. The words and phrases in the English specification might be amibiguous, and the consequences of specific choices in the model might not be clear until we generate solutions and show candidate solutions that were excluded. Generative AI tools are designed to process natural language statements. They are also particularly successful in generating code solutions. In this project we will explore the use of one or more LLMs and agentic tools for interactive specification and refinement of optimisation problems.
Requirements The project would suit someone with strong coding skills, and with the ability to explore new topics independently, and to get to grips with one or more optimisation packages in the first semester.
KNBX: Other projects in algorithms, reasoning and AI
Other projects are possible, by discussion, including evaluations of Chain of Thought reasoning and explanations in LLMs, different variations of multi-agent pathfinding, including variable speeds and movement in free space, or applications of reasoning in generating fair work rotas or fair timetables.
Requirements: You must be a confident programmer, you must have an idea of the areas you want to work in, and you must be able to read current research papers.