The Platform Agent mainly consists of the RAPP Improvement Centre (RIC), a module (or complex of modules) that operates either independently (off-line learning mode) or upon request from a RAPP (on-line learning mode). It is thus not a part of a RApp, but may be accessed via the RAPP API. In realistic scenarios, we expect the RIC, to be a collection of machine learning, knowledge base and data mining processes, accessed via the API, through provided services.
A key aspect of the RAPP project is the issue of transferring and sharing knowledge between RApps. We consider the duality of the issue, as the RIC may act as a centralised container of knowledge accessible by many RApps, or a RApp instance, may respond to knowledge queries by other RApps or the RIC itself.
The RAPP platform contains a centralized Database system as well as a file repository, which provides a persistent and global storage system that must be accessible only through dedicated services developed by the RAPP project. The storage system can contain both information and knowledge that can be further utilized either by the RIC or the functions that reside within the RAPP platform.
Within the RIC, a number of services are hosted and available through service calls over the HOP protocol and utilizing the RAPP API. These services are either standalone services addressing specific needs that aredifficult for the robot hardware to tackle with or be part of the knowledge base or machine learning modules. It should be stated that detailed documentation and tutorials will be created in order to any developer to be available to contribute in enriching the set of the Platform Agent’s services.
The knowledge base consists of an information management system that serves as a common knowledge pool accessible by all robots. The knowledge pool’s internal organization follows that of an ontology and is accessible through a specific wrapper. The ontology based knowledge base serves to promote transfer of knowledge between robots and as a result accommodate faster learning rates. As such, RIC serves both as a knowledge container and as an indirect peer-to-peer knowledge transfer service. The knowledge base is of critical importance to our RApp use cases, as will become apparent in section 5.
The machine learning module consists of a number of services that provide machine learning support for common occurrences like voice or image identification. They are accessible as services that can be invoked either by a RApp or any other process from within the platform.
The offline learning processes module is a set of processes that are periodically executed and attempt to formulate knowledge and establish new insights that will help the platform perform its role better in general. Theyderive information and knowledge mainly from the knowledge base but also from usage logs and the machine learning module and apply machine learning methods that attempt to fine tune the services of the platform to ensure smooth, accurate and reliable service in accordance with the most recent knowledge, practices and trends.
The Interface Layer between RAPP Improvement Center and the Robot Platform is developed under HOP framework.
The overall architecture of the sub-module describes the interface layer between the remote clients and the RAPP Improvement Center is presented in the figure below.