This paper describes PROFETA (standing for Python RObotic Framework for dEsigning sTrAtegies), a framework for the programming of autonomous robots based on the Belief-Desire-Intention (BDI) software model. PROFETA is inspired by AgentSpeak(L), a formal language for the creation of BDI software agents. The framework is implemented in Python, and utilizes the metaprogramming capabilities offered by this language to implement the operational semantics of AgentSpeak(L). PROFETA provides a flexible environment offering both traditional object-oriented imperative constructs and declarative constructs, enabling the definition of a robot's high-level behavior in a simple, natural way. The contributions of this paper, in the area of software design and development, are: (i) a methodology, equipped with suitable technical solutions, to extend the Python programming language with AgentSpeak(L) declarative constructs; and (ii) a unified environment enabling software components for robots to be developed using a single language (Python) within a single runtime environment (the Python virtual machine). A comparison between PROFETA and other similar frameworks is provided, illustrating common aspects and key differences

A Python framework for programming autonomous robots using a declarative approach

Messina F;PAPPALARDO, Giuseppe;SANTORO, CORRADO
2017-01-01

Abstract

This paper describes PROFETA (standing for Python RObotic Framework for dEsigning sTrAtegies), a framework for the programming of autonomous robots based on the Belief-Desire-Intention (BDI) software model. PROFETA is inspired by AgentSpeak(L), a formal language for the creation of BDI software agents. The framework is implemented in Python, and utilizes the metaprogramming capabilities offered by this language to implement the operational semantics of AgentSpeak(L). PROFETA provides a flexible environment offering both traditional object-oriented imperative constructs and declarative constructs, enabling the definition of a robot's high-level behavior in a simple, natural way. The contributions of this paper, in the area of software design and development, are: (i) a methodology, equipped with suitable technical solutions, to extend the Python programming language with AgentSpeak(L) declarative constructs; and (ii) a unified environment enabling software components for robots to be developed using a single language (Python) within a single runtime environment (the Python virtual machine). A comparison between PROFETA and other similar frameworks is provided, illustrating common aspects and key differences
File in questo prodotto:
File Dimensione Formato  
2017_A python framework.pdf

accesso aperto

Tipologia: Versione Editoriale (PDF)
Licenza: Creative commons
Dimensione 836.49 kB
Formato Adobe PDF
836.49 kB Adobe PDF Visualizza/Apri

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.11769/30109
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 36
  • ???jsp.display-item.citation.isi??? 20
social impact