|Graef, Sebstian: Designing and implementing usable, interoperable, and reusable services of AI planning capabilities. |
Universität Stuttgart, Fakultät Informatik, Elektrotechnik und Informationstechnik, Masterarbeit Nr. 45 (2020).
144 Seiten, englisch.
Artificial Intelligence (AI) has become an essential part of our globalized world over the last years, with applications ranging from laboratory software to autonomous cars and space missions. Since the challenges to be solved by AI Planning are becoming more complex and versatile, decomposition of problems and outsourcing planning steps offers a possible way out. However, there is a lack of interoperability and reusability of AI planning capabilities. Planners and planning systems are often overloaded to meet the requirements, which results in a lack of usability. Thus, developers are forced to dig into the theory and planner details to use these existing systems. This thesis investigates how planning capabilities need to be designed to be usable, interoperable, and reusable. It presents a novel architectural approach to create abstract and domain-independent planning capabilities. Through literature research, the typical planning capabilities were identified and then classified. Two metrics were developed to classify capabilities, each focusing on different aspects of the capabilities and their composition. Based on the findings, requirements were derived that must be met to optimize usability, interoperability, and reusability. Since one classification metric is based on the Enterprise Integration Patterns, the use of a Service-oriented Architecture (SOA) is recommended. This architecture approach offers a platform solution of planning capabilities as a service. Through messaging, the classified capabilities can be integrated according to pipes and filter based engineering patterns. This thesis also includes a prototype of the approach, representing a minimal subset of the capabilities. Using the prototype, it is possible to model a domain and a problem in a Web application with the Planning Domain Definition Language (PDDL) and create a sequential plan. The prototype shows that it is possible to integrate AI planning capabilities into SOA to make them usable, interoperable, and reusable. However, the transformation of existing planners to planning capabilities can lead to difficulties in slicing and serializing data structures. The presented approach allows universal use without the need to define specific standard interfaces. The architecture allows a planning capability to have multiple service instances and thus provide different interfaces.