23.08.2015 Views

Here - Agents Lab - University of Nottingham

Here - Agents Lab - University of Nottingham

Here - Agents Lab - University of Nottingham

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

– Dealing with conflicts based on plans priorities and deadlines including dynamicprioritization and preemption.– Supporting different policies to deal with preempted and failed plans suchas stopping, suspending or aborting a preempted plan or a failed plan.– Recovering from a plan failure and performing wind-down activities aftersuspension and before resuming a plan.Furthermore, in addition to mechanisms needed for representing, reasoningon and resolving conflicts in plans execution, similar mechanisms are also necessarywhen processing goals and events to generate plans. For example processinggoals and events should be ordered based on their priorities and a lower prioritygoal conflicting with a higher priority goal might needed to be considered asfailed or to be kept to be processed later. These mechanisms are in particularneeded in a distributed control paradigm in which a control component mightreceives conflicting goals from other components and should provide feedback tothose components if it can handle those goals or not.7 ConclusionThe paper presents various requirements for agent programming languages in orderto implement cognitive robot control systems. These requirements are drawnpartially based on an analysis <strong>of</strong> the problem at hand and partially based on astudy <strong>of</strong> current autonomous robot control systems. We do not claim that the set<strong>of</strong> requirements presented in this paper is complete. However by analyzing mainaspects <strong>of</strong> programming cognitive robots and providing an overview <strong>of</strong> capabilities<strong>of</strong> current high-level robot programming tools, we have made a contributionto the systematic analysis and presentation <strong>of</strong> agent programming languages requirementsfor programming cognitive robots. In this paper we limit ourselvesto single robot applications. Multi-robot scenarios impose other requirements onagent programming languages for coordination, cooperation and communicationbetween robots which have been left for further research.The requirements presented in this paper show a big gap between capabilities<strong>of</strong> current agent programming languages and demands <strong>of</strong> programmingautonomous robot control systems. Our research aim is to bridge this gap byextending the 2APL agent programming language to meet these requirements.One <strong>of</strong> such requirements is integration with existing robotic frameworks to facilitatecontrolling and communication with functional modules developed inthese frameworks. This can encourage the use <strong>of</strong> agent programming languagesby robotic community and facilitate their use for rapid prototyping and development<strong>of</strong> autonomous systems. To address this requirement, we have developedan environment interface for 2APL facilitating its integration with ROS usingROS communication mechanisms. We have used ROS to provide basic roboticcapabilities such as face recognition, voice recognition and a number <strong>of</strong> high-levelactions such as sit-down(), stand-up(), turn-neck(O) and walk-to(X,Y) for ourNAO robots. Using 2APL and ROS, we have developed a demo application in51

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!