Intention Selection with Deadlines

In BDI agent programming, an intention is the combined plan steps an agent commits to in order to achieve a goal. One of the key features of the BDI approach is the ability of an agent to pursue multiple goals concurrently, by interleaving the steps of multiple intentions. Choosing the next step to progress (execute) from these concurrent intentions is critical, as the wrong choice can result in failure to achieve one or more goals. Conversely, appropriate scheduling of the steps in intentions can maximise the number of goals achieved by the agent. Deciding which intention to progress next becomes more challenging in settings where goals must be achieved before a deadline. An interleaving of steps in the agent’s intentions that avoids conflicts may still result in failure to achieve a goal by its deadline. There has been relatively little work on intention selection with deadlines. One recent exception is AgentSpeak(RT). AgentSpeak(RT) [3, 2] is a real-time agent programming language based on AgentSpeak(L) in which top-level goals may have deadlines and priorities. Given the estimated execution time of plans, AgentSpeak(RT) schedules intentions so as to achieve a priority-maximal set of intentions by their deadlines with a specified level of confidence. However AgentSpeak(RT) avoids conflicts by scheduling potentially conflicting intentions in FIFO fashion, which can make it more difficult for an agent to achieve its goals by their deadlines. In this paper, we present SR, a novel approach to intention selection with deadlines. SR extends the stochastic scheduling approach of Yao et al. [5, 6, 4] in two ways. First, goals may have both a preferred achievement time (the time by which the goal should ideally be achieved) and a deadline (the time by which the goal must be achieved). Second, SR supports the concurrent execution of durative actions in different intentions. SR schedules intentions so as to maximise the number of goals achieved and minimise tardiness (i.e, the difference between the time a goal is achieved and its preferred achievement time). We evaluate the performance of SR and compare it to that of AgentSpeak(RT) in a simple blocks world domain. Our results suggest SR outperforms AgentSpeak(RT) in this scenario.