Planning engines are important not only to help us plan for what may fail or succeed in the real world, but also to provide what-if scenarios to build better robust engines. This paper talks about various ideas to help describe engines and their domains, and uses interesting phenomena such as predicate-type language to describe the various objectives that need to be captured by the model. Additionally, think of the system as a series of state machines represented by various variables, and you need to work out which state is reachable or not.
The paper has some interesting ideas, though I would extend it in several ways. For example, there is a lot of work in software testing where a system is defined as a state machine and tests are performed to see if the system ends up in an undesirable state. This could help build credibility in whether the model is representing the domain well or not.
A more relevant approach could be using data-driven deep learning to learn the model states themselves. New research in learning physical laws from data can help learn certain rules the system is performing, which can help model the domain better. The same things can be applied to an engine that is essentially being built to control and manage a domain.
The experiments in this area are a bit tricky to perform. One can concentrate on a domain, such as aircraft models or road traffic scenarios, and try to compare results with traditional approaches to building domain models and corresponding planning engines. This is necessary, but tricky, to build credibility in the approaches developed. The paper is an interesting short read and raises ideas that can be built upon to develop deployable solutions.