Available Project Topics

Diploma Theses, Master Theses, Bachelor Theses, Research Projects and Student Reports

Projects Topics

The following project topics can be adapted for Diploma Theses, Master Theses, Bachelor Theses, Research Projects (Studienarbeiten), and Student Reports (Fachstudien). Contact Prof. Dr. Marco Aiello in case you have further questions or would like to submit your own proposals.

If you are interested in any of the following project topics, please send your inquiry to the following email: scsp@iaas.uni-stuttgart.de

Quantum Computing for Smart Energy Optimizations

The advent of practical Quantum Computing promises to speed up many computation processes, especially in the field of optimization. This means that some large scale simulations and optimizations that were unfeasible with traditional von Neumann architectures become practically available. The proposed research topic focuses on optimisations in the fields of energy distribution under modern models of Smart Grids [2]. The project is open ended. Possible goals include: feasibility of using quantum computing for energy optimization [1], encoding MILP energy optimisations as quantum problems, energy use cases implemented on quantum computers. The interested student can also propose his/her own topic within the sub-field of Quantum Computing for Smart Energy Optimizations.

Keywords: Quantum Computing, Smart Energy Systems, Energy Distribution, MILP

Literature:

[1] Ajagekar, Akshay, and Fengqi You. “Quantum Computing for Energy Systems Optimization: Challenges and Opportunities.” Energy 179 (2019): 76–89. Crossref. Web.

[2] M. Aiello and G.A. Pagani (2016) How energy distribution will change: an ICT perspective, In Smart Grids from a Global Perspective, J. de Wilde, A. Beaulieu, and J. Scherpen (eds), Springer.

Supervisors: Prof. Dr. Marco Aiello / Daniel Vietz, M. Sc.


 

The Integration of Electric Vehicles in the Smart Grid

Electric Vehicles (eV) have a battery size that can vary from few KWh to almost 100 KWh. These are frequently connected to the power grid to charge. Several researchers have proposed the idea that these batteries can also be used to store grid electricity and provided it back to grid during peak demand periods. The research proposed here is to assess technical solutions to make the eV an integral part of the power grid, to study individual strategies based on dynamic pricing for incentivising eV integration, and to assess the economic viability of such approaches.

Literature

P. P. Malya, L. Fiorini, M. Rouhani, and M. Aiello (2021) Electric Vehicles as Distribution Grid Batteries: A Reality Check, Energy Informatics, Springer, 4(Suppl 2):2.

A. P. Lopes, F. J. Soares and P. M. R. Almeida, "Integration of Electric Vehicles in the Electric Power System," in Proceedings of the IEEE, vol. 99, no. 1, pp. 168-183, Jan. 2011.

Francis Mwasilu, Jackson John Justo, Eun-Kyung Kim, Ton Duc Do, Jin-Woo Jung, “Electric vehicles and smart grid interaction: A review on vehicle to grid and renewable energy sources integration,” in Renewable and Sustainable Energy Reviews, vol. 34, no. 6, pp 501-516, Jun. 2014.

Supervisor: Prof. Dr. Marco Aiello


 

IoT Plant Monitoring

IoT technology can be used to monitor and automate the taking care of a plant. In this project, you will be researching the state of the art in the field of IoT for garden management. You will design and implement a cloud-based infrastructure to monitor two pots and manage them. Finally, you are going to compare the results for four pots: two with your designed IoT based solution and two with manual management.

Supervisor: Prof. Dr. Marco Aiello


 

Bluetooth Broadcasting

In 2009 we ran an experiment to see if Bluetooth could be used as a general, proximity-based broadcasting technology. The results were published in [1]. In this project, you are asked to repeat the experiments of that paper and compare the results. You will also have to study the state of the art and how Bluetooth and its use has changed in the last decade with respect to broadcasting.

Literature

[1] M. Aiello, R. de Jong, and J. de Nes (2009) Bluetooth Broadcasting: How far can we go? An experimental study. Int. Conference on Pervasive Computing and Applications (ICPCA'09) In Pervasive Computing (JCPC), 2009 Joint Conferences on IEEE, pages 471–476. 

Supervisor: Prof. Dr. Marco Aiello


 

On the energy accountability of running software

Software running on data centres and personal computers is responsible for a large amount of energy consumption and consequent emissions worldwide. At the same time, it is very difficult to perform an accurate measure of energy consumption for individual software program and its individual components, this is also due to the current software engineering practices of layering and virtualisation. For this research project you are asked to look into energy models for software, energy accountability for software, comparing the running of the same algorithm on different platforms for measuring the energy consumption, etc.

Literature

[1] S. Miller and C. Lerche (2022) Sustainability with Rust. AWS Open Source Blog. Online: https://aws.amazon.com/de/blogs/opensource/sustainability-with-rust/. 

[2] Green Software Lab (2018) Energy Efficiency in Programming Languages (source code of 10 benchmarks implemented in 28 programming languages). GitHub. Online: https://github.com/greensoftwarelab/Energy-Languages. 

Supervisor: Prof. Dr. Marco Aiello


 

Cellular Automata for Modelling Resource Allocation

Cellular automata are simple models that can represent complex even chaotic systems. The goal of this project is to provide simple models for resource allocation that help identifying efficient allocation rules. The project entails both a modelling and simulation component to it.

Supervisor: Prof. Dr. Marco Aiello


 

A Complex Network Analysis of Models to be Checked

Model Checking is the field concerned with the automatic process of checking whether a given model (or family of models) meets certain specifications. Model checkers work in various ways usually exploring large models explicitly represented as states or symbolically represented. Your task is to evaluate the impact of using complex network analysis techniques to improve and extend model checking approaches.

Supervisor: Prof. Dr. Marco Aiello


 

AI Planning for Poker Player

The game of poker is interesting in that it combines elements of stochasticity, reasoning, risk awareness, opponent modeling, and decision making with hidden information. The goal of this project is to study components that are necessary to build a successful AI poker player. Most notably:

1) HTN Planning techniques that include risk-awareness

2) Accurate opponent modeling based on game hand history

3) Dynamic evaluation of the current state of the game based on hand history, stack values, and position

4) Adaptation of strategies to type of game played (number of tables, speed, limits, etc.)

The case study will be online No-Limit Hold 'em Multi-Table Tournaments.

Keywords: AI Poker Player, AI Planning, Risk Awareness

Literature:

[1] Jonathan Rubin, Ian Watson (2011) Computer poker: A review, Artificial Intelligence, 172(5-6): 958-987

[2] Darse Billings, Aaron Davidson, Jonathan Schaeffer, Duane Szafron (2002) The challenge of poker, Artificial Intelligence, 134(1-2):201-240

[3] Dan Harrington, Bill Robertie (2014) Harrington on Modern Tournament Poker: How to Play No-Limit Hold 'em Multi-Table Tournaments, Perfect Paperback 

Supervisors: Prof. Dr. Marco Aiello / Dr. Ilche Georgievski / Ebaa Alnazer, M.Sc.

AI Planning: Which and How Many Functionalities in Existing Tools?

Artificial Intelligence (AI) planning is a research and development field with a history of a half-century. AI planning deals with automatically selecting and organising actions to achieve user objectives [1]. According to the literature on AI planning, the typical development process of applications that employ AI planning involves the following planning functionalities:  modelling domain models, generating problem instances, solving planning problems, and validating, executing and monitoring plans. These functionalities are provided by many existing planning tools, though, most are planners, i.e., tools that focus on solving planning problems. While these planning functionalities are of particular interest to the academic community, the question that arises is whether these planning functionalities are the only necessary ingredients to design, develop, and use fully operational planning systems.

We hypothesise that many more functionalities are incorporated in existing planning tools that can be characterised as typical and necessary for developing AI planning systems. In addition, we hypothesise that many of them are course-grained functionalities that involve more than one functional concern in their implementation.

The aim of this project is to test our hypotheses by identifying and characterising planning functionalities 
in existing planning tools using a systematic literature review and content analysis.

Keywords: AI Planning, Planning Functionalities, Systematic Literature Review

Literature

[1] M. Ghallab, D. S. Nau, and P. Traverso, Automated planning: Theory & practice. Morgan Kaufmann Publishers Inc., 2004.

Supervisor: Dr. Ilche Georgievski


A Decision Support System for Selecting AI Planners

Artificial Intelligence (AI) planning is a research and development field that has marked its beginning about 50 years ago. AI planning deals with automatically selecting and organising actions to achieve some user objective [1]. Over the years, numerous tools, called planners, have been designed and developed to solve various types of planning problems in many domains. The planners are based on different planning techniques, support a wide range of features, accept planning problems specified in different planning languages, have specific and distinguishing capabilities, and various qualities related to performance and software.

Planning problems can have different requirements in different domains. For example, support for numbers and  arithmetic operations may be required in planning problems for ubiquitous computing [2]. Such requirements are imposed on the AI planners, that is, AI planners need to be able to meet the requirements. Finding an AI planner that is capable and suitable for solving planning problems in some domain demands not just understanding the domain requirements but also searching for AI planners, checking their availability, and understanding their capability to handle the planning problem of interest. Thus, the selection of an AI planner is a manual and cumbersome process.

The aim of this project is to address this challenge by designing and developing a decision support system that will support the selection of AI planners suitable for planning problems at hand. The system should also reduce the time users invest in finding AI planners, and increase the chance of finding the best fit in a way more efficient than a manual search. The main tasks of the project include:

  • Investigate the suitability of an existing set of 230 planners and their attributes and possibly refine and/or extend their attributes.
  • Derive a categorisation of planning problems and the available planners (the set of planners should be used for this.
  • Design a decision support system that will enable users to select suitable AI planners and enable administrators manage the system. The design should be based on a well-established paradigm, such as the service-oriented architecture.
  • Implement, test, and validate a system prototype deployable as a Docker container.
  • Evaluate the use of the decision support system on a case study.

Keywords: AI Planning, Decision Support

Literature

[1] M. Ghallab, D. S. Nau, and P. Traverso, Automated planning: Theory & practice. Morgan Kaufmann Publishers Inc., 2004.

[2] I. Georgievski and M. Aiello, \Automated planning for ubiquitous computing," ACM Comput. Surv., vol. 49, no. 4, pp. 63:1-63:46, 2016.

Supervisor: Dr. Ilche Georgievski


A Flexible and Modular Toolbox for Efficient Construction of AI Planning Systems

Artificial Intelligence (AI) planning is the process of searching and selecting actions that achieve some given objective [1]. Due to its powerful reasoning capabilities, AI planning is increasingly utilised in automation and industrial processes
to address real application problems. This introduces the need for the construction of  advanced, flexible, and deployable planning systems using planning functionalities  that are distributed over various planning tools. Setting
up, deploying and managing planning tools are tasks that require diverse technical expertise and are often tedious and error-prone. As a result, the combination and integration of planning functionalities that these tools provide into advanced planning systems is a difficult task.

To help addressing this task, we proposed a toolbox consisting of an initial set of planning services that can empower researchers and developers to quickly build, integrate, and deploy advanced planning systems (the paper describing the toolbox will be given upon showing interest for the topic). The objective of using the toolbox is to enable users to construct and interact with a planning system without getting bogged down in issues related to internal workings, interoperability, and heterogeneity of planning tools.

The aim of this project is to further advance the toolbox and demonstrate its usability and benefits. The main tasks of the project include:

  • Refine existing planning services (e.g., improve modularisation and loose coupling).
  • Integrate new planning services (e.g., a service for graphical modelling of planning problems).
  • Demonstrate the use of the toolbox on a case study.
  • Evaluate the toolbox experimentally (e.g., response time, throughput, etc.) and with users.

Keywords: AI Planning, Planning Services, Software Integration, Service-Oriented Computing

Literature

[1] M. Ghallab, D. S. Nau, and P. Traverso, Automated planning: Theory & practice. Morgan Kaufmann Publishers Inc., 2004.

Supervisor: Dr. Ilche Georgievski


Exploring the Challenges of Engineering Planning-Based Applications

The adoption of Artificial Intelligence (AI) is growing exponentially, highlighting the need to build AI systems not only for prototyping and experiments but also for industrial deployments. Among the AI approaches, AI planning provides powerful means to model and solve real-world problems in various domains by quickly finding adequate solutions from a large pool of possibilities [1]. However, building applications or systems based on AI planning that are ready for deployment and use is a challenging task [2]. In particular, software engineers need to deal with the implementation and integration of planning functionalities that can be implemented using specific models and libraries, implemented using service-oriented and/or cloud technology, and/or rely on specialised services. Consequently, the development of planning-based applications requires not only planning knowledge but also expertise in software engineering, software integration, service-oriented architectures, cloud computing, and workflow technology. So, it is essential to understand the challenges application developers are faced.

The aim of this project is to explore the common challenges that can be encountered when building, integrating and deploying planning-based applications in different domains. The main research question can be formulated as Which design, integration and deployment challenges are commonly encountered when engineering planning-based applications? To address this question, the idea is to:

  • Design and implement several scenarios of planning-based applications possibly based on existing literature that focuses on engineering planning-based applications. The scenarios should be diverse: different types of planning functionalities, different types of interaction, and varying complexity (from simple planners to composite applications involving many planning functionalities).
  • Analyse the challenges and limitations encountered during the design and implementation of each application scenario.
  • Document and discuss key observations.

Keywords: AI Planning, Engineering Challenges, Software Design and Development

Literature

[1] M. Ghallab, D. S. Nau, and P. Traverso, Automated planning: Theory & practice. Morgan Kaufmann Publishers Inc., 2004.

[2] I. Georgievski and U. Breitenbücher, A Vision for Composing, Integrating, and Deploying AI Planning Functionalities. In IEEE International Conference on Service-Oriented System Engineering, pages 166–171, 2021. 

Supervisor: Dr. Ilche Georgievski


Empirical Investigation of Engineering Challenges for Planning-Based Systems

The adoption of Artificial Intelligence (AI) is growing exponentially, highlighting the need to build AI systems not only for prototyping and experiments but also for industrial deployments. Among the AI approaches, AI planning provides powerful means to model and solve real-world problems in various domains by quickly finding adequate solutions from a large pool of possibilities [1]. However, building applications or systems based on AI planning that are ready for deployment and use is a challenging task [2]. In particular, software engineers need to deal with the implementation and integration of planning functionalities that can be implemented using specific models and libraries, implemented using service-oriented and/or cloud technology, and/or rely on specialised services. Consequently, the development of planning-based applications requires not only planning knowledge but also expertise in software engineering, software integration, service-oriented architectures, cloud computing, and workflow technology. So, it is essential to understand the challenges application developers are faced.

The aim of this project is to identify software-engineering challenges that are faced by different companies when developing and using systems that incorporate planning functionalities. The main research question can be formulated as Which design, integration and deployment challenges are commonly encountered when engineering planning-based applications in industrial settings? To address this question, the idea is to:

  • Adopt an interpretative approach to multiple case studies [3]. A case should represent a software system that incorporates planning functionalities and is developed at a company/organisation.
  • Collect qualitative data from several companies/organisations (e.g., IBM, Ericsson, NASA, ONERA).
  • Extract the development process of planning-based applications adopted at each company/organisation.
  • Analyse qualitative data and interpret findings per case study.
  • Identify and discuss common key observations.

Keywords: AI Planning, Engineering Challenges, Software Design and Development, Industry

Literature

[1] M. Ghallab, D. S. Nau, and P. Traverso, Automated planning: Theory & practice. Morgan Kaufmann Publishers Inc., 2004.

[2] I. Georgievski and U. Breitenbücher, A Vision for Composing, Integrating, and Deploying AI Planning Functionalities. In IEEE International Conference on Service-Oriented System Engineering, pages 166–171, 2021. 

[3] P. Runeson and M. Höst. Guidelines for conducting and reporting case study research in software engineering. Empir Software Eng 14, 131 (2009).

Supervisor: Dr. Ilche Georgievski


HTN Planning for Automated Deployment and Dynamic Reconfiguration of Cloud Applications

Modern software applications are increasingly deployed and distributed on infrastructures in the Cloud. Before the deployment process happens, these applications are being manually - or with some predefined scripts - composed from various smaller interdependent components. With the increase in demand for, and complexity of applications, the composition process becomes an arduous task often associated with errors and a suboptimal use of computer resources. Dynamic reconfiguration, which is the process of reconfiguring an application while it is running, only aggravates the problem even further [1]. Such processes can be alleviated by automatically and dynamically composing and reconfiguring Cloud applications , especially when clear semantics exists that describe the deployment and reconfiguration problems, such as the Aeolus formal model [2].

Artificial Intelligence (AI) planning provides techniques for searching and selecting actions that, when executed, achieve a given goal [3]. In the context of the Cloud, AI planning can provides powerful methods for searching in large and complex Cloud infrastructures to find "good" compositions and reconfigurations of Cloud applications. Additionally, AI planning can be used to handle the Cloud uncertainty (e.g., failures of hardware resources), find deployments optimal with respect to the use of computer resources, etc. Among AI planning techniques, Hierarchical Task Network (HTN) planning appears suitable for solving deployment problems [4].

The aim of this project is to study and solve both deployment and reconfiguration problems using HTN planning. The project should build upon [4]. The project tasks include:

  • Refine the definition of the Aelous-based deployment problem as an HTN planning problem (to improve performance);
  • Define the Aelous-based reconfiguration problem as an HTN planning problem;
  • Model such HTN planning problems using HPDL and/or SHOP2;
  • Evaluate the approach using one or more existing AI planners;
  • Compare the performance of existing AI planners among themselves and with Metis [5].

Keywords: Automated deployment, dynamic reconfiguration, cloud applications, HTN planning

Literature

[1] N. Arshad, D. Heimbigner, and A. Wolf, "Deployment and dynamic reconfiguration planning for distributed software systems," in International Conference on Tools with Artificial Intelligence, ser. ICTAI'03, 2003, pp. 39-46.

[2] R. Di Cosmo, J. Mauro, S. Zacchiroli, and G. Zavattaro, "Aeolus: A component model for the cloud," Information and Computation, vol. 239, pp. 100-121, 2014.

[3] M. Ghallab, D. S. Nau, and P. Traverso, Automated planning: Theory & practice. Morgan Kaufmann Publishers Inc., 2004.

[4] I. Georgievski, F. Nizamic, A. Lazovik, and M. Aiello, "Cloud ready applications composed via htn planning," in IEEE International Conference on Service Oriented Computing and Applications, ser. SOCA'17, 2017, pp. 23-33.

[5] T. A. Lascu, J. Mauro, and G. Zavattaro, "A planning tool supporting the deployment of cloud applications," in International Conference on Tools with Artificial Intelligence, ser. ICTAI'13, 2013, pp. 213-220.

Supervisor: Dr. Ilche Georgievski


 

AI Planning Under Uncertainty for Sustainable Buildings

With the increment of CO2 emission, the world energy consumption, and the diversity in energy sources (finite and renewable), the goals of building management systems are widened to include cutting the energy consumption; hence preserving finite resources, using non-carbon sources when possible to lower the CO2 footprint, and lowering costs for consumers and businesses while preserving users comfort [2]. This is especially true for buildings that are connected to a smart grid, which makes it possible to include renewable sources and provides dynamic pricing and energy offers coming from competing providers [4]. The advent of the Internet of Things (IoT) offers significant opportunities to improve the limited control capabilities offered by current building management systems [5]. In other words, equipping commercial buildings with different sensors and actuators allows management systems to make informed and "smart" decisions to control the environment and adjust it towards satisfying predefined objectives, such as energy saving. This "smartness" implies automating the decision-making process. Artificial Intelligence (AI) planning fits perfectly for this purpose since it offers automation techniques to intelligently search and compose a sequence of actions, i.e., plans when executed, can achieve a predefined set of goals [6].

Planning in such domains is challenging due to several types of uncertainty, e.g., weather forecasting, demand forecasting, and market prices forecasting [3, 2]. Consider the following example. A smart building is connected to a smart grid and has the goal of maintaining economical and environmental sustainability. The building can get its electricity from two different sources; either from stored electricity generated locally by renewable resources or from electric utilities with varying prices and energy offers. The choice of whether to consume the locally generated electricity or the purchasing it from outside sources should be made under uncertainty about the future market prices and the future weather forecast. In many approaches, AI planning problems are modelled with uncertainties about the action outcomes in mind; hence the resulting plans in such approaches are of a probabilistic nature [7, 1].

The aim of this project is to develop an AI planning-based approach in such domains. This involves defining the entities that are part of these domains, defining the types of uncertainty that can arise in these domains, modelling the AI planning problem by using a standard syntax that can model some sort of uncertainty, e.g., PPDDL [8], solving the planning problem using existing AI planners that can deal with uncertainties, and evaluating the efficiency and effectiveness of the proposed approach.

Keywords: sustainable buildings, Internet of Things, AI planning

Literature

[1] Blythe, J.: An overview of planning under uncertainty. Artificial Intelligence Today, pp. 85-110 (1999).

[2] Fiorini, L., Aiello, M.: Energy management for user’s thermal and power needs: A survey. Energy Reports 5, 1048-1076 (2019).

[3] Fiorini, L., Aiello, M.: Predictive multi-objective scheduling with dynamic prices and marginal CO2-emission intensities. In: Proceedings of the Eleventh ACM International Conference on Future Energy Systems. pp. 196-207 (2020).

[4] Georgievski, I.: Coordinating services embedded everywhere via hierarchical planning. Ph.D. thesis, University of Groningen (2015).

[5] Georgievski, I., Nguyen, T.A., Nizamic, F., Setz, B., Lazovik, A., Aiello, M.: Planning meets activity recognition: Service coordination for intelligent buildings. Pervasive and Mobile Computing 38, 110-139 (2017).

[6] Ghallab, M., Nau, D., Traverso, P.: Automated Planning: theory and practice. Elsevier (2004).

[7] Koenig, S., Simmons, R.G.: Risk-sensitive planning with probabilistic decision graphs. In: Principles of Knowledge Representation and Reasoning. pp. 363-373. Elsevier (1994).

[8] Younes, H.L., Littman, M.L.: PPDDL1. 0: An extension to PDDL for expressing planning domains with probabilistic effects. Techn. Rep. CMU-CS-04-162 2, 99 (2004).

Supervisor: M.Sc. Ebaa Alnazer

 

Cluster Scheduling in Data Centers

Cluster schedulers are a key component of managing the workload and the computational resources of data centers. Schedulers make scheduling decisions by gathering the information about the load and the queues on compute nodes as well as the available resources by communicating with the resource managers. Over the past years, a number of schedulers such as Borg [1], Mesos [2], Apache Yarn [3], and Slurm [4] have been developed. These schedulers are different in many aspects and regarding various key features like cluster type, language support, job migration, and resource allocation policies. The possible goals of this project include scientific evaluation of various resource allocation policies used in current schedulers and exploring the compatibility of different schedulers for GPU enhanced clusters. Interested students can also propose their topics within the scope of the project.

Keywords: Cluster scheduling, Data centers

Literature

[1] Verma, A., Pedrosa, L., Korupolu, M.: Large-scale cluster management at Google with Borg. In: Proceedings of the Tenth European Conference on Computer Systems. (2015).

[2] Hindman. B., Konwinski, A., et al.: Mesos: A platform for fine-grained resource sharing in the data center. In: NSDI. (2011).

[3] Vavilapalli. V., Murthy, A., et al.: Apache hadoop yarn: Yet another resource negotiator. In: Proceedings of the 4th annual Symposium on Cloud Computing. (2013).

[4] Yoo. AB., Jette, MA., et al.: Slurm: Simple linux utility for resource management. Workshop on job scheduling strategies for parallel processing. Springer, Berlin, Heidelberg. (2003)

Supervisor: Dr. Kawsar Haghshenas

Contact

This image shows Marco Aiello

Marco Aiello

Prof. Dr.

Head of Department

Elisabeth Ibach

 

Secretary

This image shows Ilche Georgievski

Ilche Georgievski

Dr.

Lead of Smart Energy Systems Research Area

[Photo: Ilche Georgievski]

To the top of the page