A Logical Cell-Based Approach for Robot Component Repositories

논리적 셀 기반의 로봇 소프트웨어 컴포넌트 저장소

  • 구형민 (한국정보통신대학교 공학부) ;
  • 고인영 (한국정보통신대학교 공학부)
  • Published : 2007.08.15

Abstract

Self-growing software is a software system that has the capability of evolving its functionalities and configurations by itself based on dynamically monitored situations. Self-growing software is especially necessary for intelligent service robots, which must have the capability to monitor their surrounding environments and provide appropriate behaviors for human users. However, it is hard to anticipate all situations that robots face with, and it is hard to make robots have all functionalities for various environments. In addition, robots have limited internal capacity. To support self-growing software for intelligent service robots, we are developing a cell-based distributed repository system that allows robots and developers transparently to share robot functionalities. To accomplish the creation of evolutionary repositories, we invented the concept of a cell, which is a logical group of distributed repositories based upon the functionalities of components. In addition, a cell can be used as a unit for the evolutionary growth of the components within the repositories. In this paper, we describe the requirements and architecture of the cell-based repository system for self-growing software. We also present a prototype implementation and experiment of the repository system. Through the cell-based repositories, we achieve improved performance of self-growing actions for robots and efficient sharing of components among robots and developers.

다양한 환경에 배치될 수 있고, 예상치 못한 상황에 자주 접할 수 있는 지능형 서비스 로봇의 경우에는 처할 수 있는 환경과 상황을 모두 예측하여 로봇 내부에 필요한 기능을 모두 가지고 있기 어렵다. 로봇에게 환경에 맞는 필요한 기능만 내부에 가지고 있을 수 있게 하고, 필요에 따라 새로운 기능을 획득할 수 있도록 지원해 주기 위한 기반 기술인 컴포넌트 저장소가 본 논문의 주제이다. 이 저장소를 실제 로봇 플랫폼에 적용 실험 해 온 결과, 로봇이 일일이 외부 저장소들을 접근함에 따라 필요한 컴포넌트의 검색 및 획득의 성능이 저하된다는 문제와, 가용한 컴포넌트 저장소가 늘어감에 따라 확장성, 공유성 문제가 발견되었다. 본 연구에서는 이러한 문제점들을 해결하기 위해 분산된 컴포넌트 저장소들을 컴포넌트의 기능적인 측면에 따라 논리적인 그룹으로 묶은 셀 기반의 진화적인 컴포넌트 저장소를 개발하였다. 프로토타입을 개발하여 실험한 결과, 셀 기반의 저장소를 이용하여 로봇이 분산된 저장소를 일일이 물리적으로 접근하는 것이 아니라 논리적으로 투명하게 접근을 할 수 있도록 지원한다. 또한, 로봇 컴포넌트/애플리케이션 개발자들이 자신의 접근 가능한 저장소를 변경하면 전체 저장소 시스템에 반영되어 다른 개발자들이나 로봇이 사용할 수 있게 해 주는 컴포넌트의 투명한 공유를 지원한다.

Keywords

References

  1. P. Lars and et al., 'Towards an Intelligent Service Robot System,' Proceedings of International Conference on Intelligent Autonomous Systems, 2000
  2. Hyung-Min Koo and In-Young Ko, 'A Repository Framework for Self-Growing Robot Software,' Proceedings of 12th Asia-Pacific Software Engineering Conference (APSEC'2005), Taiwan, December 2005
  3. Hyung-Min Koo and et al., 'A Repository Framework for Architecture Based Self-Growing Robot Software,' Proceedings of 2nd Korea Conference on Software Engineering, KCSE' 06, 2006
  4. Michael Blaha, 'Requirements for Repository Software,' IEEE, 1998
  5. Vijayan S. and et al., 'A Semantic-Based Approach to Component Retrieval,' ACM, SIGMIS Database, Vol.34. No.3, 2003
  6. Shelly Powers, 'Practical RDF,' P.16-P.22, O'Reilly publication, July, 2003
  7. What is Protege?, http://protege.stanford.edu/overview/
  8. Jena Semantic Web Framework, http://jena.sourceforge.net/
  9. Robert Harrison and Christine W. Chan, 'Distributed Ontology Management System,' CCECE/CCGEI, Saskatoon, IEEE, 2005
  10. Mario Cannataro and et al., 'Distributed Management of Ontologies on the Grid,' Proceedings of the 14th IEEE International Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprise (WETICE' 05), IEEE, 2005
  11. Gergely Adamku and Heiner Stuckenschmidt, 'Implementation and Evaluation of a Distributed RDF Storage and Retrieval System,' Proceedings of the 2005 IEEE/WIC/ACM International Conference on Web Intelligence (WI'05), IEEE, 2005
  12. Min Cai and Martin Frank, 'RDFPeers: A Scalable Distributed RDF Repository based on A Structured Peer-to-Peer Network,' WWW2004, ACM, 2004
  13. Scott Henninger, 'Supporting the Construction and Evolution of Component Repositories,' Proceedings of ICSE, IEEE, 1996
  14. Seong-Jae Won and et al., 'A Search Agent System for Distributed Component Repository,' Proceedings of the 32nd KISS Fall Conference, Seoul, November 2005
  15. Padmal Vitharana et al., 'Knowledge-Based Repository Scheme for Storing and Retrieving Business Components: A Theoretical Design and an Empirical Analysis,' IEEE transactions on Software Engineering, Vol.29, No.7, July 2003
  16. Regina M. M. Braga et al., 'The Use of Mediation and Ontology Technologies for Software Component Information Retrieval,' ACM, 2001
  17. James X. Ci and Wei-Tek Tsai, 'Distributed Component Hub for Reusable Software Components Management,' Computer Software and Application Conference, COMSAC 2000, IEEE, 2000
  18. Dong-Keun Lee and Eun-Man Choi, 'A Study on Integrating UDDI Registry and Web-Based Component Repository,' Proceedings of the 31st KISS Fall Conference, Vol.31, No.2, 2004
  19. Hyung-Min Koo, 'Cell-based Approach for Evolutionary Component Repositories for Intelligent Service Robots,' Mater Thesis, Information and Communications University, 2007