7 research outputs found
Detecting Robotic Anomalies using RobotChain
Robotic events can provide notable amounts of
information regarding a robot’s status, which can be extrapolated
to detect productivity, anomalies, malfunctions and used
for monitorization. However, when problems occur in sensitive
environments like a factory, the logs of a machine may be
discarded because they are susceptible to chances and malicious
intents. In this paper we propose to use RobotChain for anomaly
detection. RobotChain is a method to securely register robotic
events, using a blockchain, which ensures that once an event
gets registered on it, it’s secured and cannot be tampered with.
We show how this system can be leveraged with the module for
anomaly detection, that uses the information contained on the
blockchain to detect anomalies on a UR3 robot.This work was partially supported by the Tezos Fundation through a grant for project Robotchaininfo:eu-repo/semantics/publishedVersio
Decentralized Vision-Based Byzantine Agent Detection in Multi-Robot Systems with IOTA Smart Contracts
Multiple opportunities lie at the intersection of multi-robot systems and
distributed ledger technologies (DLTs). In this work, we investigate the
potential of new DLT solutions such as IOTA, for detecting anomalies and
byzantine agents in multi-robot systems in a decentralized manner. Traditional
blockchain approaches are not applicable to real-world networked and
decentralized robotic systems where connectivity conditions are not ideal. To
address this, we leverage recent advances in partition-tolerant and
byzantine-tolerant collaborative decision-making processes with IOTA smart
contracts. We show how our work in vision-based anomaly and change detection
can be applied to detecting byzantine agents within multiple robots operating
in the same environment. We show that IOTA smart contracts add a low
computational overhead while allowing to build trust within the multi-robot
system. The proposed approach effectively enables byzantine robot detection
based on the comparison of images submitted by the different robots and
detection of anomalies and changes between them
Robot Workspace Monitoring using a Blockchain-based 3D Vision Approach
Blockchain has been used extensively for financial purposes,
but this technology can also be beneficial in other
contexts where multi-party cooperation, security and decentralization
of the data is essential. Properties such as
immutability, accessibility and non-repudiation and the existence
of smart-contracts make blockchain technology very
interesting in robotic contexts that require event registration
or integration with Artificial Intelligence. In this paper,
we propose a system that leverages blockchain as a
ledger to register events and information to be processed
by Oracles and uses smart-contracts to control robots by
adjusting their velocity, or stopping them, if a person enters
the robot working space without permission. We show
how blockchain can be used in computer vision problems by
interacting with multiple external parties, Oracles, that perform
image analysis and how it is possible to use multiple
smart-contracts for different tasks. The method proposed is
shown in a scenario representing a factory environment, but
since it is modular, it can be easily adapted and extended for
other contexts, allowing for simple integration and maintenance.info:eu-repo/semantics/publishedVersio
RobotChain: Artificial Intelligence on a Blockchain using Tezos Technology
Blockchain technology is not only growing everyday at a fast-passed rhythm, but it is also a disruptive technology that has changed how we look at financial transactions. By providing a way
to trust an unknown network and by allowing us to conduct transactions without the need for a
central authority, blockchain has grown exponentially. Moreover, blockchain also provides decentralization of the data, immutability, accessibility, non-repudiation and irreversibility properties that makes this technology a must in many industries. But, even thought blockchain
provides interesting properties, it has not been extensively used outside the financial scope.
Similarly, robots have been increasingly used in factories to automate tasks that range from
picking objects, to transporting them and also to work collaboratively with humans to perform
complex tasks. It is important to enforce that robots act between legal and moral boundaries
and that their events and data are securely stored and auditable. This rarely happens, as robots
are programmed to do a specific task without certainty that that task will always be performed
correctly and their data is either locally stored, without security measures, or disregarded. This
means that the data, especially logs, can be altered, which means that robots and manufacturers can be accused of problems that they did not cause. Henceforth, in this work, we sought
to integrate blockchain with robotics with the goal to provide enhanced security to robots, to
the data and to leverage artificial intelligence algorithms. By doing an extensive overview of
the methods that integrate blockchain and artificial intelligence or robotics, we found that this
is a growing field but there is a lack of proposals that try to improve robotic systems by using
blockchain. It was also clear that most of the existing proposals that integrate artificial intelligence and blockchain, are focused on building marketplaces and only use the latter to storage
transactions. So, in this document, we proposed three different methods that use blockchain
to solve different problems associated with robots. The first one is a method to securely store
robot logs in a blockchain by using smart-contracts as storage and automatically detect when
anomalies occur in a robot by using the data contained in the blockchain and a smart-contract.
By using smart-contracts, it is assured that the data is secure and immutable as long as the
blockchain has enough peers to participate in the consensus process. The second method goes
beyond registering events to also register information about external sensors, like a camera,
and by using smart-contracts to allow Oracles to interact with the blockchain, it was possible to
leverage image analysis algorithms that can detect the presence of material to be picked. This
information is then inserted into a smart-contract that automatically defines the movement that
a robot should have, regarding the number of materials present to be picked. The third proposal
is a method that uses blockchain to store information about the robots and the images derived
from a Kinect. This information is then used by Oracles that check if there is any person located
inside a robot workspace. If there is any, this information is stored and different Oracles try to
identify the person. Then, a smart-contract acts appropriately by changing or even stopping the
robot depending on the identity of the person and if the person is located inside the warning or
the critical zone surrounding the robot.
With this work, we show how blockchain can be used in robotic environments and how it
can beneficial in contexts where multi-party cooperation, security, and decentralization of the
data is essential. We also show how Oracles can interact with the blockchain and distributively
cooperate to leverage artificial intelligence algorithms to perform analysis in the data that
allow us to detect robotic anomalies, material in images and the presence of people. We also show that smart-contracts can be used to perform more tasks than just serve the purpose of
automatically do monetary transactions. The proposed architectures are modular and can be
used in multiple contexts such as in manufacturing, network control, robot control, and others
since they are easy to integrate, adapt, maintain and extend to new domains. We expect
that the intersection of blockchain and robotics will shape part of the future of robotics once
blockchain is more widely used and easy to integrate. This integration will be very prominent
in tasks where robots need to behave under certain constraints, in swarm robotics due to the
fact that blockchain offers global information and in factories because the actions undertaken
by a robot can easily be extended to the rest of the robots by using smart-contracts.Hoje em dia é possível ver que a blockchain não está apenas a crescer a um ritmo exponencial, mas que é também uma tecnologia disruptiva que mudou a forma como trabalhamos com
transações financeiras. Ao fornecer uma maneira eficiente de confiar numa rede desconhecida
e de permitir realizar transações sem a necessidade de uma autoridade central, a blockchain
cresceu rapidamente. Além disso, a blockchain fornece também descentralização de dados,
imutabilidade, acessibilidade, não-repúdio e irreversibilidade, o que torna esta tecnologia indispensável em muitos setores. Mas, mesmo fornecendo propriedades interessantes, a blockchain não tem sido amplamente utilizada fora do âmbito financeiro. Da mesma forma, os robôs
têm sido cada vez mais utilizados em fábricas para automatizar tarefas que vão desde pegar
objetos, transportá-los e colaborar com humanos para realizar tarefas complexas. Porém, é
importante impor que os robôs atuem entre certos limites legais e morais e que seus eventos
e dados são armazenados com segurança e que estes possam ser auditáveis. O problema é que
isso raramente acontece. Os robôs são programados para executar uma tarefa específica sem
se ter total certeza de que essa tarefa irá ser executada sempre de maneira correta, e os seus
dados são armazenados localmente, desconsiderando a segurança dos dados. Sendo que em
muitas ocasiões, não existe qualquer segurança. Isso significa que os dados, especialmente os
logs, podem ser alterados, o que pode resultar em que os robôs e, pela mesma linha de pensamento, os fabricantes, possam ser acusados de problemas que não causaram. Tendo isto em
consideração, neste trabalho, procuramos integrar a blockchain com a robótica, com o objetivo
de proporcionar maior segurança aos robôs e aos dados que geram e potenciar ainda a utilização de algoritmos de inteligência artificial. Fazendo uma visão abrangente dos métodos que
propõem integrar a blockchain e inteligência artificial ou robótica, descobrimos que este é um
campo em crescimento, mas que há uma falta de propostas que tentem melhorar os sistemas
robóticos utilizando a blockchain. Ficou também claro que a maioria das propostas existentes
que integram inteligência artificial e blockchain estão focadas na construção de marketplaces e
só utilizam a blockchain para armazenar a informação sobre as transações que foram executadas. Assim, neste documento, propomos três métodos que utilizam a blockchain para resolver
diferentes problemas associados a robôs. O primeiro é um método para armazenar, com segurança, logs de robôs dentro de uma blockchain, utilizando para isso smart-contracts como
armazenamento. Neste método foi também proposta uma maneira de detetar anomalias em
robôs automaticamente, utilizando para isso os dados contidos na blockchain e smart-contracts
para definir a lógica do algoritmo. Ao utilizar smart-contracts, é garantido que os dados são seguros e imutáveis, desde que a blockchain contenha nós suficientes a participar no algoritmo de
consenso. O segundo método vai além de registar eventos, para registar também informações
sobre sensores externos, como uma câmara, e utilizando smart-contracts para permitir que Óraculos interajam com a blockchain, foi possível utilizar algoritmos de análise de imagens, que
podem detetar a presença de material para ser recolhido. Esta informação é então inserida
num smart-contract que define automaticamente o movimento que um robô deve ter, tendo
em consideração a quantidade de material à espera para ser recolhida. A terceira proposta é
um método que utiliza a blockchain para armazenar informações sobre robôs, e imagens provenientes de uma Kinect. Esta informação é então utilizada por Óraculos que verificam se existe
alguma pessoa dentro do um espaço de trabalho de um robô. Se existir alguém, essa informação
é armazenada e diferentes Óraculos tentam identificar a pessoa. No fim, um smart-contract
age apropriadamente, mudando ou até mesmo parando o robô, dependendo da identidade da Com este trabalho, mostramos como a blockchain pode ser utilizada em ambientes onde existam robôs e como esta pode ser benéfica em contextos onde a cooperação entre várias entidades, a segurança e a descentralização dos dados são essenciais. Mostramos também como
Óraculos podem interagir com a blockchain e cooperar de forma distribuída, para alavancar
algoritmos de inteligência artificial de forma a realizar análises nos dados, o que nos permite
detetar anomalias robóticas, material para ser recolhido e a presença de pessoas em imagens.
Mostramos também que os smart-contracts podem ser utilizados para executar mais tarefas do
que servir o propósito de fazer transações monetárias de forma automática. As arquiteturas
propostas neste trabalho são modulares e podem ser utilizadas em vários contextos, como no
fabrico de peças, controle de robô e outras. Devido ao facto de que as arquiteturas propostas,
são fáceis de integrar, adaptar, manter e estender a novos domínios. A nossa opinião é que a
interseção entre a blockchain e a robótica irá moldar parte do futuro da robótica moderna assim
que a blockchain seja mais utilizada e fácil de integrar em sistemas robóticos. Esta integração
será muito proeminente em tarefas onde os robôs precisam de se comportar sob certas restrições, em enxames de robôs, devido ao fato de que a blockchain fornece informação global sobre
o estado da rede, e também em fábricas, porque as ações realizadas por um robô podem ser
facilmente estendidas ao resto dos robôs, e porque fornece um mecanismo extra de segurança
aos dados e a todas as ações que são efetuadas com ajuda de smart-contracts
Robot Events using Tezos Technology
Robots are important equipment in the modern day factory environment. To maintain and improve factory productivity, ledgers containing robotic actions may be used to identify possible
bottleneck points in a assembly line or to serve as a record of in unintentional behaviours, be
it of a malicious nature or not. Blockchains are a type of secure ledger, that prevent unwanted
changes. These blockchains, during their lifetimes, record large amounts of data, that in a
common usage its kept on its entirety. This dissertation presents RobotChain, a possible solution using blockchain technology that prevents unwanted changes in a robotic action ledger,
and provides a way to use the said ledger in order to aid in production efficiency or other
management requirements, and presents a time-segmentation solution for devices with limited
storage capacity, integrated in RobotChain. It also presents various experiments related to the
performance of Tezos blockchain network with the various modifications.A robótica é um fator importante do dia-a-dia de uma fábrica moderna. Como tal, é importante
manter estes robots a funcionar com o melhor desempenho possível e para fazer isto, uma forma
é a utilização dos registos dos próprios robots de forma a identificar falhas ou comportamentos
não intencionais sejam eles de natureza maliciosa ou não. As Blockchains são um tipo de base
de dados eletrónica que previne a modificação de registos já inseridos. Esta tecnologia é interessante no contexto industrial a fim de prevenir alterações dos registos de robôs, sejam estas
alterações não intencionais ou alterações maliciosas.
Nesta dissertação é criada a RobotChain, uma blockchain para trabalhar com robots industriais,
assente na blockchain Tezos. É apresentada também uma técnica de segmentação temporal
de uma blockchain a fim de se poder fazer uso de dispositivos de computação mais fracos,
com armazenamento mais limitado, de forma eficiente. Estes dispositivos de computação,
referidos como compute devices, são módulos utilizados para fazer interface entre os robôs
e a blockchain, evitando percas de desempenho dos robôs com a execução do novo programa
associado, e, servem para tornar uniforme a informação enviada para a rede. É considerada
também a existência de nodos de armazenamento, denominados cold storage nodes onde é
guardada informação completa da rede, nodos de pedidos, query nodes, nodos que fazem interface entre operadores humanos e a blockchain, permitindo o acesso a informação contida nesta
e nodos oráculos, nodos que interagem com a rede a partir de contratos inteligentes.
São apresentados também resultados experimentais resultantes das varias alterações feitas à
blockchain, assim como a funcionalidade de segmentação temporal
A Blockchain System for Mobile Health Applications and Services
Com o aparecimento das tecnologias blockchain, o crescimento e adaptação de características criptográficas levaram à exploração de novos usos em novas áreas, como a computação
móvel para a saúde (m-Health). Atualmente, estas tecnologias são implementadas primáriamente como mecanismos para manter os registos de saúde eletrónicos seguros. No entanto,
novos estudos têm provado que estas apresentam-se como uma ferramenta poderosa para promover o controlo da informação de saúde pelos próprios pacientes e possibilita a existência
de um historial médico sem alterações errôneas, para além da responsabilização dos profissionais de saúde. Nos últimos anos, verificou-se um rápido crescimento da área da m-Health,
sustentada numa arquitetura orientada a serviços, levando a que a adaptação de mecanismos
de blockchain em aplicações de saúde gerasse a possibilidade da existência de um serviço mais
descentralizado, pessoal e disponível. A ideia de adaptar tecnologia blockchain na área da
prestação de serviços de saúde apresenta inicialmente alguns pontos críticos, como por exemplo como é que é assegurada a segurança e a privacidade da informação de saúde guardada na
blockchain. Normalmente, num sistema completamente descentralizado, a informação tem de
estar completamente disponível a atores externos e tem de ser guardada de forma distribuída.
Embora o armazenamento da informação de forma distribuída não apresente dificuldades, a
particulariedade do tipo de informação que é guardada na blockchain e de que maneira esta
é mantida privada e segura são questões problemáticas já conhecidas. Um breve estudo desta
tecnologia é suficiente para concluir que não é adequado um registo médico de um paciente ser
guardado na blockchain, uma vez que, devido ao tamanho do registo, iria gerar problemas de
escalabilidade com o aumento do número de pacientes. Perante esta situação, o desempenho
da blockchain iria diminuir e seria necessária uma quantidade demasiado elevada de poder computacional para a realização de tarefas básicas, gerando ainda um aumento nos requisitos de
armazenamento e de transmissão em rede. Embora a blockchain não tenha capacidade para
guardar a informação completa de um paciente, as suas características permitem que seja utilizada para guardar outros dados relacionados com a privacidade da informação da saúde. Deste
modo, é precisamente no registo e controlo de acesso à informação de saúde que a tecnologia
blockchain promete inovar. Ao registar todos os acessos à informação de saúde de um paciente,
é possível criar um registo com a identificação e a autentificação de todos os utilizadores do
sistema que requereram o acesso a determinada informação de saúde. Portanto, um registo de
acesso consegue ser criado com uma pequena quantidade de informação, como um timestamp,
com a identificação do utilizador que está a aceder aos dados e com a identificação do utilizador
cujos dados estão a ser acedidos. Uma das grandes vantagens de registar a informação dos acessos numa blockchain é o facto de os registos serem distribuídos por várias localizações, sendo
estas imutáveis e tolerantes a falhas e públicos. Deste modo, verifica-se que os problemas de
escalabilidade, associados ao tamanho reduzido do registo, que surgem ao guardar informação
na blockchain discutidos previamente conseguem ter um impacto mais reduzido.
Contudo, apesar das vantagens desta tecnologia, alguns dos aspetos da sua integração desta em
m-Health não são compatíveis com a natureza da informação de saúde de um paciente. Para
acomodar tecnologia blockchain na área da saúde, é necessário que o sistema seja construído
com várias restrições em mente. Uma destas restrições é o facto de que a informação presente na blockchain é normalmente pública, o que entra em conflito com o direito à privacidade dos
pacientes e leva à necessidade de encriptar a informação. Outra restrição é o facto de como
identificar um utilizador num registo de acesso, uma vez que normalmente a informação dos
utilizadores é anónima.
O objetivo desta dissertação é estudar como a tecnologia blockchain consegue ser conjugada
com a informação de saúde recolhida ou processada por aplicações móveis. Com a finalidade de
alcançar esse objetivo, foi desenvolvido um protótipo de uma solução baseada em blockchain
para controlar acesso à informação de saúde. Este protótipo para além de oferecer uma segurança melhorada da informação, devido à implementação de mecanismos de criptografia,
oferece um historial médico imutável ao armazenar informação de eventos de saúde numa
blockchain. A esta construção foi ainda adicionado um sistema de armazenamento de dados
anónimos baseado numa arquitetura de data lake. Posteriormente, este protótipo foi integrado
num ambiente de teste, que consistiu em várias aplicações móveis, com o objetivo de testar
detalhadamente a viabilidade e desempenho de propostas similares.With the advent of blockchain, the growth and adaptation of cryptographic features and capabilities were quickly extended to new and under-explored areas, such as healthcare. Currently, blockchain is being implemented mainly as a mechanism to secure Electronic Health
Record (EHR)s. However, new studies have shown that this technology can be a powerful tool
in empowering patients to control their own health data, as well as for enabling a fool-proof
health data history and establishing medical responsibility. With the advent of mobile health
(m-Health) sustained on service-oriented architectures, the adaptation of blockchain mechanisms into m-Health applications creates the possibility for a more decentralized and available
healthcare service. The idea of adapting blockchain technology into healthcare initially presents
several critical points where special consideration is required, such as how privacy and security
of healthcare information can be assured if information is stored into a blockchain. Usually, for
a completely decentralized system, the information has to be available to everyone and is to
be stored in a distributed manner. While the storage of the information being distributed is not
difficult, what kind of information should be stored into the blockchain as well as how this information can be kept private and secure present issues. A brief study of blockchain technology
is enough to conclude that a full patient record is not fit to be stored into a blockchain, because the size of the record would create scalability problems as the number of patient records
increases. This diminishes the performance of the blockchain to where the amount of computational power needed to perform basic tasks would rise considerably, as well as the storage
and network requirements needed to permanently store the information and to replicate the
information throughout the whole network, respectively. However, other uses for blockchain
technology arise once the nature of the health information is analyzed thoroughly.
Because of the highly personal and private aspect of health information belonging to a patient,
the security of how that information is stored, transmitted and accessed becomes a main focus of
health systems. It is precisely in access recording and management of healthcare information
that blockchain shows promise in implementation. By recording all accesses to a the health
information of a patient, it is possible to create a log of every user in a system that has had
access to some information. By having a system that identifies and authenticates all users, every
access to health data can be recorded as having been done by an identified user. An access
record can be made with a small amount of information, such as a timestamp, an accessing
user identifier and an identifier of the user whose data is being accessed. Because an access
record can be accomplished with only this amount of information, the scalability issues that
where discussed earlier regarding storing information into a blockchain can be mitigated. In
terms of advantages, recording access information into a blockchain results in the access records
being distributed across several locations, immutable, fault-tolerant and public. However, some
aspects of the integration of blockchain into healthcare result in incompatibilities of the nature
of health information and of blockchain. To accommodate health information and blockchain,
the surrounding system must be constructed with several limitations in mind. One of which is
the public nature of blockchain not being in line with the private nature of health information
and therefore the information must be encrypted, or how a user can be identified in an access
record if usually information in a blockchain is anonymous. This work proposes a system that successfully integrates blockchain into an m-Health testbed,
outlining how both areas have evolved and their main challenges. The proposed system offers
enhanced information security both in transmission, storage and access, by integrating several
cryptographic mechanisms. Furthermore it is integrated with a blockchain access system and a
high volume anonymous information storage mechanism based on a data lake database architecture. This system is integrated into a testbed that allows for a more detailed discussion on
viability and performance of similar concepts