=Paper= {{Paper |id=None |storemode=property |title=Uma Ontologia para Padronização do Domínio de Robótica e Automação |pdfUrl=https://ceur-ws.org/Vol-1041/ontobras-2013_paper38.pdf |volume=Vol-1041 |dblpUrl=https://dblp.org/rec/conf/ontobras/FioriniCJPA13 }} ==Uma Ontologia para Padronização do Domínio de Robótica e Automação== https://ceur-ws.org/Vol-1041/ontobras-2013_paper38.pdf
             Uma Ontologia para Padronização do Domínio de
                       Robótica e Automação
                 Sandro Rama Fiorini, Joel Luis Carbonera, Vitor A. M. Jorge,
                             Edson Prestes, Mara Abel
       Instituto de Informática – Universidade Federal do Rio Grande do Sul (UFRGS)
Caixa Postal 15.064 – 91.501-970 – Porto Alegre – RS – Brazil
            {srfiorini,jlcarbonera,vamjorge,prestes,marabel}@inf.ufrgs.br
            Abstract. This paper summarizes the development of a core ontology in
    the Robotics and Automation domain (R&A), as part of the efforts of IEEE
    RAS to standardize the field. Tasks and interaction in which robots find them-
    selves in are increasing in complexity. That imposes the requirement for a
    formally specified body of knowledge that is necessary in such processes. In
    this context, we propose a core ontology that describes the basic concepts and
    relations encompassing the R&A domain, based on other existent standard vo-
    cabularies and expert knowledge.
            Resumo. Este artigo sumariza o desenvolvimento de uma ontologia de
    núcleo para o domínio de Robótica e Automação (R&A) como parte do esfor-
    ço da IEEE RAS para padronização da área. O aumento da complexidade das
    tarefas e interações realizadas por robôs coloca a necessidade de um padrão
    que especifique formalmente o conhecimento necessário nestes processos. A
    ontologia de núcleo proposta captura os principais conceitos e relações
    abrangendo o domínio de R&A como um todo, usando como base padroniza-
    ções já existentes na literatura da área e conhecimento especialista.

1. Introdução
O aumento constante da complexidade das tarefas realizadas por robôs tem demandando
mecanismos mais sofisticados de colaboração entre eles e outros agentes, sejam estes
outros robôs ou humanos. Neste contexto, torna-se evidente a necessidade de um pa-
drão que capture de forma explícita e formal o conhecimento compartilhado no campo
da robótica e automação (R&A). A existência de um padrão que defina precisamente os
conceitos neste domínio é fundamental para promover a interoperabilidade semântica
entre os diversos agentes e sistemas envolvidos. Neste cenário, ontologias têm sido ado-
tadas como uma tecnologia capaz de promover esta interoperabilidade, uma vez que
elas constituem especificações formais de conceitualizações compartilhadas (Studer,
Benjamins, & Fensel, 1998). A utilização de ontologias em processos de padronização
tem sido explorada na linha de pesquisa em padrões baseados em ontologias (ontology-
based standards). Iniciativas recentes neste sentido, como a Ontology-based Standards
Initiative1, tem promovido uma aproximação e a troca de experiências entre a comuni-
dade de pesquisa em ontologias e a comunidade de padronização, enfatizando como o




       1
           http://ontolog.cim3.net/cgi-bin/wiki.pl?OntologyBasedStandards


                                                 209
processo de padronização pode ser auxiliado por princípios, ferramentas e metodologias
tipicamente relacionados ao desenvolvimento de ontologias.
        Desde Novembro de 2011, nosso grupo, chamado Ontologies for Robotics and
Automation Working Group (ORA WG), vem atuando como um grupo de trabalho ofi-
cial junto à IEEE-SA Standards Board, assumindo o objetivo de padronizar a represen-
tação de conhecimento no domínio da robótica. Este grupo, que inclui mais de 140 pes-
soas de mais de 20 países, tem trabalhado ativamente com instituições da indústria, aca-
demia e governo para desenvolver um conjunto de ontologias, ferramentas e metodolo-
gias associadas, para serem usadas como um padrão no domínio da Robótica e Automa-
ção (R&A).
        O ORA WG é composto por quatro subgrupos: Industrial Robots (InR), Service
Robots (SeR), Autonomous Robots (AuR) and Upper Ontology/Methodology (UpOM).
Os três primeiros são responsáveis pela elaboração de ontologias para três subdomínios
da R&A considerados nesta fase do projeto, sendo eles robótica industrial, de serviço e
autônoma, respectivamente. Já o UpOM tem como principal objetivo o desenvolvimen-
to de uma ontologia de núcleo (core ontology) que especifique os conceitos mais gerais
do domínio, desempenhando o papel de base para a integração consistente de todas as
subontologias desenvolvidas no projeto. Além disso, o UpOM também está encarregado
de avaliar e integrar as subontologias propostas pelos demais subgrupos do ORA WG.
       Este artigo descreve a Ontologia de Núcleo para Robótica e Automação (Core
Ontology for Robotics and Automation, ou CORA), desenvolvida pelo UpOM e deta-
lhada em (Prestes et al., 2013); e apresenta os primeiros resultados da axiomatização do
modelo. Primeiramente discutimos o processo de engenharia de ontologias realizado
durante o desenvolvimento da ontologia CORA. Em seguida, apresentamos os seus
principais conceitos, com ênfase para o conceito de robô.

2. Desenvolvimento da Ontologia
Devido à complexidade esperada em um projeto como este, é necessário determinar
quais metodologias, ferramentas e princípios serão utilizados para guiar o processo de
desenvolvimento das ontologias. Adotamos a METHONTOLOGY (Lopez, Perez, &
Juristo, 1997) como metodologia geral de desenvolvimento de ontologias, uma vez que
ela oferece características ajustadas às necessidades do projeto, tais como a independên-
cia de aplicação e a ênfase no desenvolvimento de ontologias no nível do conhecimento.
A METHONTOLOGY também estabelece um conjunto de atividades que devem ser
realizadas durante o desenvolvimento, especifica o ciclo de vida da ontologia ao longo
do desenvolvimento e indica técnicas para realizar cada atividade proposta no ciclo de
vida. Além disso, adotamos a OntoClean (Guarino & Welty, 2009) como ferramenta de
avaliação da ontologia em desenvolvimento. Também utilizamos as meta-propriedades
oferecidas pela OntoClean como princípios para avaliação de outras fontes de conheci-
mento consultados para a elaboração da ontologia proposta. Finalmente, adotamos uma
abordagem middle-out para identificação de conceitos, isto é, identificando antes aque-
les mais relevantes e em seguida os mais abstratos e os mais específicos.
       O processo de desenvolvimento foi iniciado com a identificação de fontes das
quais o conhecimento de domínio seria adquirido. As principais fontes identificadas
foram: padrões já existentes no domínio; livros-texto, artigos revisados por pares; espe-



                                          210
cialistas no domínio; e ontologias já existentes, incluindo não apenas ontologias de do-
mínio, mas também ontologias de topo, como a SUMO (Niles & Pease, 2001).
       Analisando as fontes identificadas, constatamos que as ontologias já desenvolvi-
das no domínio, em geral, focam apenas em um subconjunto restrito de conceitos do
domínio, adotando significados específicos, compartilhados apenas por pequenos gru-
pos de pessoas. Devido a isto, decidimos iniciar a identificação de conceitos a partir do
documento ISO 8373:2012, que define em linguagem natural termos genéricos que são
comuns no domínio da R&A. Este documento foi considerando uma fonte inicial de
conhecimento adequada, uma vez que este padrão foi elaborado com o intuito de estabe-
lecer um acordo inicial na comunidade de R&A.
        A partir deste documento da ISO, foram identificados os termos e definições re-
lacionados aos conceitos mais gerais do domínio e que deveriam participar da ontologia
de núcleo. Este conhecimento então foi estruturado e representado usando as represen-
tações intermediárias previstas pela METHONTOLOGY. Neste estágio também reali-
zamos uma avaliação da conceitualização capturada do documento da ISO, utilizando a
OntoClean. Este processo permitiu constatar que as definições oferecidas pela ISO para
conceitos chave são ambíguas e que alguns dos compromissos ontológicos não estão
explícitos nas definições, permitindo algumas interpretações não pretendidas. Detalhes
desta análise são apresentados em (Prestes et al., 2013).
        O próximo passo foi a coleta de definições alternativas para os termos identifi-
cados anteriormente. A partir de uma análise das definições alternativas, foram elabora-
das novas definições para estes termos, com o intuito de contemplar os principais aspec-
tos enfatizados pelas definições encontradas.
        Finalmente, integramos a ontologia com uma ontologia de topo. Ontologias de
topo ajudam a organizar a estrutura básica de ontologias mais específicas ao estruturar
as principais categorias gerais, presentes em qualquer domínio. Nesta etapa, seleciona-
mos a SUMO (Niles & Pease, 2001), uma ontologia de topo desenvolvida por um grupo
de trabalho oficial da IEEE, que inclui colaboradores de diversas áreas. A SUMO ofere-
ce uma descrição flexível das categorias de topo e inclui as principais noções e distin-
ções necessárias para a ontologia de núcleo de R&A.

3. Ontologia de núcleo para R&A
A CORA (Figura 1) é naturalmente uma ontologia sobre robôs e conceitos relacionados.
O objetivo é descrever as qualidades que caracterizam robôs em geral. Ela descreve
quatro categorias abrangentes: parte de robô, robô, grupo de robôs e sistema robótico.
Dadas as restrições de espaço, apresentaremos uma breve descrição de cada conceito.
        Talvez existam tantas definições para o termo "robô" quanto existem autores es-
crevendo sobre o assunto. Essa ambiguidade inerente ao termo se torna um problema
quando se pretende defini-lo de forma abrangente. Por isso, decidimos definir "robô"
somente em termos de condições necessárias. Isso nos permite cobrir todas as entidades
que a comunidade considera como sendo um robô, ao custo de permitir a caracterização
de entidades que não são usualmente consideradas como robôs por alguns roboticistas.
Não obstante, os conceitos da nossa ontologia podem ser especializados para contem-
plar entidades com significado mais restrito, de acordo com as necessidades de subdo-
mínios e aplicações de R&A.



                                          211
        Mais importante, decidimos por uma definição de robô que enfatiza os seus as-
pectos funcionais. Definimos robôs como dispositivos agentivos em um sentido amplo,
capazes de agir no mundo físico com o propósito de completar uma ou mais tarefas. Em
alguns casos, as ações de um robô podem estar subordinadas às ações de outros agentes,
tais como agentes de software ou humanos. Um robô é composto por partes mecânicas e
eletrônicas apropriadas. Robôs podem formar grupos sociais, onde eles interagem para
atingir um objetivo único. Um robô (ou um grupo de robôs) pode formar sistemas robó-
ticos junto com equipamentos situados no ambiente que facilitam o seu trabalho.
       Um robô é um dispositivo e um agente no sentido da SUMO:
                         ( )                         ( )                   ( )
De acordo com ela, um dispositivo é um artefato (i.e. um objeto físico produto de fabri-
cação), cujo propósito é participar como um instrumento em um processo. A SUMO
define agente como “algo ou alguém que pode agir por si próprio e produzir mudanças
no mundo.” Robôs realizam tarefas agindo no ambiente ou em si mesmos. Ação é for-
temente relacionada à agência, no sentido de que a ação define o agente.
       Naturalmente, dispositivos podem ter partes. Definimos um conceito específico
que captura a noção de parte de robô:
                               ( )                             ( )
                                           [      ( )                        (       )]

onde a relação         componente(      ) é uma relação partonômica que especifica que
o objeto x é parte do objeto y; i.e.                       ( )                 (    ). É
importante frisar que não assumimos a existência de algum dispositivo que é necessari-
amente parte de robô. A razão disso é que até mesmo os dispositivos mais especializa-
dos para robótica podem ser utilizados em dispositivos diferentes de robô. Isto caracte-
riza ParteDeRobô como um papel formal, no sentido de Guarino e Welty (2000); o
conceito caracteriza qualquer outro dispositivo que pode compor um robô, de porcas e
parafusos até manipuladores e atuadores.
       Robôs podem também formar grupos de robôs. De acordo com a SUMO, um
grupo é uma coleção de agentes. Um grupo de robôs é definido como:
                    ( )                        ( )         [           (         )        ( )]
A SUMO define grupo como sendo também um agente; sua agência emerge dos partici-
pantes do grupo. Esse conceito pode ser usado para descrever entidades tais como times
de robôs, ou mesmo robôs complexos formados por diversos agentes robóticos inde-
pendentes atuando em uníssono.
       Robôs podem participar de sistemas robóticos. Um sistema robótico é composto
por um robô ou um grupo de robôs, mais dispositivos situados no ambiente que dão
suporte a atuação dos robôs. Dessa forma,
                     ( )
                     [                          ( )            ( )                        (   )
                                       (       )]
                     [         (     ) [          ( )                ( )]]




                                                212
Dado que Robô e Grupo de Robôs são conceitos disjuntos, o axioma anterior induz a
presença de dois subconceitos de Sistema Robótico: (a) o Sistema Robótico Simples,
que tem como parte um e somente um robô; e o Sistema Robótico Coletivo, que tem
como parte um grupo de robôs. Dessa forma, excluímos a existência de sistemas robóti-
cos com diversos robôs não integrados. Já um ambiente robótico é um ambiente equipa-
do com um sistema robótico:
                                       ( )                         ( )
                                                      [                                 ( )                             (   )]

tal que os equipamentos que dão suporte ao sistema robótico estão obrigatoriamente
localizados no ambiente; i.e.,
                                     (        )             [             (         )                                  (    )]
Um bom exemplo de sistema robótico é uma célula de montagem em uma fábrica de
automóveis. Ela é formada por um grupo de robôs industriais que montam os automó-
veis, mais todo o equipamento de apoio à montagem, como sensores, guindastes e estei-
ras de transporte.
                                       SUMO:Entidade




                            SUMO:Abstrato           SUMO:Físico




                                  SUMO:Objeto                                 SUMO:Processo




           SUMO:Coleção           SUMO:Agente                          SUMO:Artefato          SUMO:instrumento




            SUMO:Grupo                                              SUMO:Dispositivo




                                                                  SUMO:componente
                               SUMO:membro                                              Parte de
           Grupo de Robôs                                 Robô                                              Ambiente
                                                                                         Robô




                                                                              SUMO:componente
                               Sistema Robótico                                                         Ambiente Robótico

              SUMO:parte                                                                 equipadoCom
                                                                       SUMO:parte




                    Sistema Robótico        Sistema Robótico
                         Coletivo                Simples


            Figura 1. Visão geral da ontologia pra robótica e automação. Conceitos
                  e relações em cinza são estabelecidos pela SUMO.




                                                                 213
4. Considerações Finais
        Ainda existe trabalho a ser feito para que o ORA WG chegue a um conjunto de
ontologias padrão para R&A. Atualmente, temos duas frentes de trabalho. Estamos es-
tendendo a CORA para especificar outros aspectos importantes do domínio, como no-
ções de posicionamento, tarefas e estado do robô (e.g. Carbonera et al., 2013). Além
disso, estamos trabalhando com os demais subgrupos para o desenvolvimento da onto-
logia resultante do projeto, que integra as diversas ontologias específicas com a ontolo-
gia de núcleo. No futuro próximo pretendemos fundamentar as ontologias propostas
pelo UpOM de acordo com a ontologia de fundamentação UFO (Guizzardi, 2005).

5. Agradecimentos
     Os autores gostariam de agradecer a CNPq, CAPES, ANP e projeto
PRH PB-217 pelo suporte financeiro a este trabalho.

6. Referências
Carbonera, J. L., Fiorini, S. R., Prestes, E., Jorge, V. A. M., Abel, M., Madhavan, R., …
      Schlenoff, C. (2013). Defining Position in a Core Ontology for Robotics. In
      Proc. IEEE/RSJ International Conference on Intelligent Robots and Systems
      (IROS 2013). Tokyo, Japan. (Aceito para publicação).
Guarino, N., & Welty, C. A. (2000). A Formal Ontology of Properties. In Proceedings
      of the 12th European Workshop on Knowledge Acquisition, Modeling and Man-
      agement (pp. 97–112). Springer-Verlag.
Guarino, N., & Welty, C. A. (2009). An Overview of OntoClean. In S. Staab & R. Stu-
      der (Eds.), Handbook on Ontologies (pp. 201–220). Springer Berlin Heidelberg.
Guizzardi, G. (2005). Ontological foundations for structural conceptual models. Neth-
      erlands: CTIT.
ISO 8373:2012. Robots and robotic devices - Vocabulary. (2012). ISO/TC 184/SC 2.
Lopez, M., Perez, A., & Juristo, N. (1997). METHONTOLOGY: from Ontological Art
       towards Ontological Engineering (pp. 33–40). Presented at the Proceedings of
       the AAAI97 Spring Symposium.
Niles, I., & Pease, A. (2001). Towards a standard upper ontology. In Proceedings of the
        international conference on Formal Ontology in Information Systems - Volume
        2001 (pp. 2–9). New York, NY, USA: ACM. doi:10.1145/505168.505170
Prestes, E., Carbonera, J. L., Fiorini, S. R., Jorge, V. A. M., Abel, M., Madhavan, R., …
        Schlenoff, C. (2013). Towards a core ontology for robotics and automation. Ro-
        botics and Autonomous Systems. doi:10.1016/j.robot.2013.04.005
Studer, R., Benjamins, V. R., & Fensel, D. (1998). Knowledge engineering: principles
       and methods. Data & Knowledge Engineering, 25(1-2), 161–197.




                                          214