Takahira Yamaguchi of Keio University dives into the PRINTEPS platform, explaining how it helps AI Robot Applications to be more easily to develop
Whilst AI Robot applications are becoming popular in many domains, they should work with users and the users should be able to work the development process with ease. Thus, AI Robot development tools should integrate different types of intelligent software modules. They should also give the users development processes that work well with them.
-
What type of AI Robot Development Tool is necessary for Users?
Thus we aim to develop PRINTEPS (PRactical INTEligent aPplicationS), which is a user-centric platform to develop unified AI robot applications by integrating five types of software modules. PRINTEPS also supports users to care about AI application design and to develop and revise it easily. PRINTEPS project has been funded by the CREST initiative launched by the Japan Science and Technology Agency, which promotes intelligent information processing systems aimed at harmonious collaboration between humans and machines.
2.PRINTEPS Architecture
PRINTEPS works for users to develop unified AI Robot applications by integrating five types of software modules: knowledge-based reasoning, speech dialogue, image sensing, motion & manipulation planning and machine learning with deep learning. The knowledge-based reasoning module includes workflows, business rules, and ontologies. The spoken dialogue module refers to response generation rules, dialogue processing rules, and language understanding rules. The image sensing module has object and human behaviour recognition. The motion and manipulation planning module also include obstacle recognition and dynamic/intelligent route planning. Machine leaning consists of conventional machine learning such as decision tree learning, Bayesian networks, Random Forest and deep learning such as convolutional neural networks and LSTM and so on.
Figure 1 shows the architecture of PRINTEPS. PRINTEPS is based on Robot Operating System (ROS), which is a robot middleware and offers communication libraries and various tools. In ROS, a user can employ services, which have a synchronous communication mechanism, and topics, which offers a mechanism for asynchronous communications. Because ROS is implemented as a distributed system, ROS facilitates how to handle multiple robots or sensors, and the use of topics enables various other processing operations, including the real-time acquisition of sensor values.
Information State (IS) in PRINTEPS is a database for sharing data among intelligent software modules. PRINTEPS takes MongoDB store, which is a MongoDB-based storage and analysis for data from a ROS system, as IS. In PRINTEPS, each software module stores data to IS and refers data from IS. The data format in PRINTEPS is the format of messages in ROS.
PRINTEPS also provides a multi knowledge-based editor for users to develop integrated intelligent applications easily by combining software modules from PRINTEPS. The details of the editor are described in the next section.
-
Multi Knowledge-based Editor
The multi knowledge-based editor consists of a workflow editor and a Business Rule Management System (BRMS).
3.1 Workflow Editor
Users can develop workflows using components based on SOA (Service Oriented Architecture) by the workflow editor. The main components in the workflow editor are services, processes and modules, as shown in Figure 2. The modules are primitive functions and they are fully compliant with ROS services, topics, and messages. The processes play a function-like role in which they deal with multiple modules. In process operation, the processes and modules can be defined in a mixed manner. The services are functions with the coarsest grain size and are composed only of processes defined as business processes. The first hierarchy (route service) of the workflow editor is composed of a route start, service list, and route end. The service list, when completed, will be shared among users as a case library (best practice). It will allow users to locate easily those services, processes, or modules used as best practice. The workflow editor automatically generates source codes in Python that can be executed in ROS.
3.2 Business Rule Management System
BRMS includes a Business Rules Engine (BRE), a web authoring and rule management application. PRINTEPS takes Drools as BRMS. Since BRMS has a function to define rules with domain-specific language, users can then easily describe business rules with natural-language like form.
In PRINTEPS, “fire business rules” module in the workflow editor can execute business rules in BRMS and BRMS can execute modules in the “then-part” of business rules. The big difference between a traditional knowledge-based system and an integrated intelligent application is that sensing results such as person attributes from an image can be described in the “when-part” of business rules and robots action such as speaking and moving to a certain place can be described in the “then-part” of the business rules.
-
Conclusion
We apply PRINTEPS to two real cases: Robot Café/Restaurant and TA Robots in primary schools. The results will be described in future issues.
Please note: This is a commercial profile