13 research outputs found
Decision-Making with Multi-Step Expert Advice on the Web
This thesis deals with solving multi-step tasks by using advice from experts, which are algorithms to solve individual steps of such tasks. We contribute with methods for maximizing the number of correct task solutions by selecting and combining experts for individual task instances and methods for automating the process of solving tasks on the Web, where experts are available as Web services.
Multi-step tasks frequently occur in Natural Language Processing (NLP) or Computer Vision, and as research progresses an increasing amount of exchangeable experts for the same steps are available on the Web. Service provider platforms such as Algorithmia monetize expert access by making expert services available via their platform and having customers pay for single executions.
Such experts can be used to solve diverse tasks, which often consist of multiple steps and thus require pipelines of experts to generate hypotheses.
We perceive two distinct problems for solving multi-step tasks with expert services: (1) Given that the task is sufficiently complex, no single pipeline generates correct solutions for all possible task instances. One thus must learn how to construct individual expert pipelines for individual task instances in order to maximize the number of correct solutions, while also taking into account the costs adhered to executing an expert. (2) To automatically solve multi-step tasks with expert services, we need to discover, execute and compose expert pipelines. With mostly textual descriptions of complex functionalities and input parameters, Web automation entails to integrate available expert services and data, interpreting user-specified task goals or efficiently finding correct service configurations.
In this thesis, we present solutions to both problems: (1) We enable to learn well-performing expert pipelines assuming available reference data sets (comprising a number of task instances and solutions), where we distinguish between centralized and decentralized decision-making. We formalize the problem as specialization of a Markov Decision Process (MDP), which we refer to as Expert Process (EP) and integrate techniques from Statistical Relational Learning (SRL) or Multiagent coordination. (2) We develop a framework for automatically discovering, executing and composing expert pipelines by exploiting methods developed for the Semantic Web. We lift the representations of experts with structured vocabularies modeled with the Resource Description Framework (RDF) and extend EPs to Semantic Expert Processes (SEPs) to enable the data-driven execution of experts in Web-based architectures.
We evaluate our methods in different domains, namely Medical Assistance with tasks in Image Processing and Surgical Phase Recognition, and NLP for textual data on the Web, where we deal with the task of Named Entity Recognition and Disambiguation (NERD)
iSemServ : a framework for engineering intelligent semantic services
The need for modern enterprises and Web users to simply and rapidly develop and deliver platform-independent services to be accessed over the Web by the global community is growing. This is self-evident, when one considers the omnipresence of electronic services (e-services) on the Web.
Accordingly, the Service-Oriented Architecture (SOA) is commonly considered as one of the de facto standards for the provisioning of heterogeneous business functionalities on the Web. As the basis for SOA, Web Services (WS) are commonly preferred, particularly because of their ability to facilitate the integration of heterogeneous systems. However, WS only focus on syntactic descriptions when describing the functional and behavioural aspects of services. This makes it a challenge for services to be automatically discovered, selected, composed, invoked, and executed – without any human intervention. Consequently, Semantic Web Services (SWS) are emerging to deal with such a challenge.
SWS represent the convergence of Semantic Web (SW) and WS concepts, in order to enable Web services that can be automatically processed and understood by machines operating with limited or no user intervention. At present, research efforts within the SWS domain are mainly concentrated on semantic services automation aspects, such as discovery, matching, selection, composition, invocation, and execution. Moreover, extensive research has been conducted on the conceptual models and formal languages used in constructing semantic services.
However, in terms of the engineering of semantic services, a number of challenges are still prevalent, as demonstrated by the lack of development and use of semantic services in real-world settings. The lack of development and use could be attributed to a number of challenges, such as complex semantic services enabling technologies, leading to a steep learning curve for service developers; lack of unified service platforms for guiding and supporting simple and rapid engineering of semantic services, and the limited integration of semantic technologies with mature service-oriented technologies.
vi
In addition, a combination of isolated software tools is normally used to engineer semantic services. This could, however, lead to undesirable consequences, such as prolonged service development times, high service development costs, lack of services re-use, and the lack of semantics interoperability, reliability, and re-usability. Furthermore, available software platforms do not support the creation of semantic services that are intelligent beyond the application of semantic descriptions, as envisaged for the next generation of services, where the connection of knowledge is of core importance.
In addressing some of the challenges highlighted, this research study adopted a qualitative research approach with the main focus on conceptual modelling. The main contribution of this study is thus a framework called iSemServ to simplify and accelerate the process of engineering intelligent semantic services. The framework has been modelled and developed, based on the principles of simplicity, rapidity, and intelligence. The key contributions of the proposed framework are: (1) An end-to-end and unified approach of engineering intelligent semantic services, thereby enabling service engineers to use one platform to realize all the modules comprising such services; (2) proposal of a model-driven approach that enables the average and expert service engineers to focus on developing intelligent semantic services in a structured, extensible, and platform-independent manner. Thereby increasing developers’ productivity and minimizing development and maintenance costs; (3) complexity hiding through the exploitation of template and rule-based automatic code generators, supporting different service architectural styles and semantic models; and (4) intelligence wrapping of services at message and knowledge levels, for the purposes of automatically processing semantic service requests, responses and reasoning over domain ontologies and semantic descriptions by keeping user intervention at a minimum.
The framework was designed by following a model-driven approach and implemented using the Eclipse platform. It was evaluated using practical use case scenarios, comparative analysis, and performance and scalability experiments. In conclusion, the iSemServ framework is considered appropriate for dealing with the complexities and restrictions involved in engineering intelligent semantic services, especially because the amount of time required to generate intelligent semantic
vii
services using the proposed framework is smaller compared with the time that the service engineer would need to manually generate all the different artefacts comprising an intelligent semantic service.
Keywords: Intelligent semantic services, Web services, Ontologies, Intelligent agents, Service engineering, Model-driven techniques, iSemServ framework.ComputingD. Phil. (Computer science
Serviceorientiertes Text Mining am Beispiel von Entitätsextrahierenden Diensten
Der Großteil des geschäftsrelevanten Wissens liegt heute als unstrukturierte Information in Form von Textdaten auf Internetseiten, in Office-Dokumenten oder Foreneinträgen vor. Zur Extraktion und Verwertung dieser unstrukturierten Informationen wurde eine Vielzahl von Text-Mining-Lösungen entwickelt. Viele dieser Systeme wurden in der jüngeren Vergangenheit als Webdienste zugänglich gemacht, um die Verwertung und Integration zu vereinfachen.
Die Kombination verschiedener solcher Text-Mining-Dienste zur Lösung konkreter Extraktionsaufgaben erscheint vielversprechend, da so bestehende Stärken ausgenutzt, Schwächen der Systeme minimiert werden können und die Nutzung von Text-Mining-Lösungen vereinfacht werden kann. Die vorliegende Arbeit adressiert die flexible Kombination von Text-Mining-Diensten in einem serviceorientierten System und erweitert den Stand der Technik um gezielte Methoden zur Auswahl der Text-Mining-Dienste, zur Aggregation der Ergebnisse und zur Abbildung der eingesetzten Klassifikationsschemata.
Zunächst wird die derzeit existierende Dienstlandschaft analysiert und aufbauend darauf eine Ontologie zur funktionalen Beschreibung der Dienste bereitgestellt, so dass die funktionsgesteuerte Auswahl und Kombination der Text-Mining-Dienste ermöglicht wird. Des Weiteren werden am Beispiel entitätsextrahierender Dienste Algorithmen zur qualitätssteigernden Kombination von Extraktionsergebnissen erarbeitet und umfangreich evaluiert. Die Arbeit wird durch zusätzliche Abbildungs- und Integrationsprozesse ergänzt, die eine Anwendbarkeit auch in heterogenen Dienstlandschaften, bei denen unterschiedliche Klassifikationsschemata zum Einsatz kommen, gewährleisten. Zudem werden Möglichkeiten der Übertragbarkeit auf andere Text-Mining-Methoden erörtert
Cross-formalism resource discovery in smart environments
Nowadays, the Internet of Things (IoT) is becoming progressively colloquial to media. However, when there are trillions of resources out there, how can we spontaneously specify the resource we need? Therefore, one of the main research questions is the device and service discovery. Many standard web services descriptions are used to describe not only web services but also physical devices. These devices are encapsulated under the web service communication layer to make them available on the Internet. This technique enables automatic discovery, configuration, and execution of resources in dynamic environments. Thus, we focus on the resource description language that allows semantic annotation. Nevertheless, there is no single standard formalism to describe resources. It is more tactful to handle multiple description formalisms simultaneously. This thesis presents a cross-formalism resource discovery technique which utilizes the user context and resources context to improve the recommendation of resources. The discovery process should not be restricted to single resource description formalism. Moreover, the matching algorithm should be user-aware and environmentally adaptive, i.e. depending on the users current situation, rather than limit to keyword-based search. This thesis explains the implementation detail and shows the evaluation of each implemented module. We aimed to prove that the quality of the result is improved significantly compared to conventional discovery techniques. To demonstrate the usability of the proposed method, we deploy it in MERCURY. MERCURY is a platform that allows both businesses to engage with their customers and end users to create custom-made applications. Within the context of MERCURY, registration, assembling, and execution of resources need the automatic resource discovery. Since the implementation of this work is designed to be a standalone service, there is no restriction to use it under the domain of MERCURY
Knowledge Components and Methods for Policy Propagation in Data Flows
Data-oriented systems and applications are at the centre of current developments of the World Wide Web (WWW). On the Web of Data (WoD), information sources can be accessed and processed for many purposes. Users need to be aware of any licences or terms of use, which are associated with the data sources they want to use. Conversely, publishers need support in assigning the appropriate policies alongside the data they distribute.
In this work, we tackle the problem of policy propagation in data flows - an expression that refers to the way data is consumed, manipulated and produced within processes. We pose the question of what kind of components are required, and how they can be acquired, managed, and deployed, to support users on deciding what policies propagate to the output of a data-intensive system from the ones associated with its input. We observe three scenarios: applications of the Semantic Web, workflow reuse in Open Science, and the exploitation of urban data in City Data Hubs. Starting from the analysis of Semantic Web applications, we propose a data-centric approach to semantically describe processes as data flows: the Datanode ontology, which comprises a hierarchy of the possible relations between data objects. By means of Policy Propagation Rules, it is possible to link data flow steps and policies derivable from semantic descriptions of data licences. We show how these components can be designed, how they can be effectively managed, and how to reason efficiently with them. In a second phase, the developed components are verified using a Smart City Data Hub as a case study, where we developed an end-to-end solution for policy propagation. Finally, we evaluate our approach and report on a user study aimed at assessing both the quality and the value of the proposed solution
Bio-Inspired Systems: Computational and Ambient Intelligence. 10th International Work-Conference on Artificial Neural Networks, IWANN 2009, Salamanca, Spain, June 10-12, 2009. Proceedings, Part I
This book constitutes the refereed proceedings of the 10th International Work-Conference on Artificial Neural Networks, IWANN 2009, held in Salamanca, Spain in June 2009. The 167 revised full papers presented together with 3 invited lectures were carefully reviewed and selected from over 230 submissions. The papers are organized in thematic sections on theoretical foundations and models; learning and adaptation; self-organizing networks, methods and applications; fuzzy systems; evolutionary computation and genetic algoritms; pattern recognition; formal languages in linguistics; agents and multi-agent on intelligent systems; brain-computer interfaces (bci); multiobjetive optimization; robotics; bioinformatics; biomedical applications; ambient assisted living (aal) and ambient intelligence (ai); other applications
Recommended from our members
Enhancing student learning journeys with semantically annotated content
This thesis was submitted for the award of Doctor of Philosophy and was awarded by Brunel University LondonThere is an increasing interest in developing existing Special Educational Needs (SEN) teaching methods due to recent concerns regarding the number of SEN pupils in schools. Communication is difficult for students when they have little or no clear speech. Consequently, a range of communication systems are used as an alternative to speech, including symbols, pictures or gestures. Importantly, helping students to better communicate also improves their education, friendships and independence. However, it is acknowledged that creating these educational resources is time consuming and expensive, and the learning results are not recognised as being as effective as required. Semantic Web technology has had an impact in the educational field and offers the required linkages for more engagement with Web content. There is, however, a considerable gap in Semantic Web research between the contributions in the mainstream educational field and research undertaken into special educational needs (SEN) students. This thesis presents an augmented World Wide Web (WWW) vision utilising annotation to more effectively support diverse special educational needs students. Students are supported in part by a SEN Teaching Platform (SENTP), one artefact from this design science research. Poetry is used as a website teaching material because of its significant impact on special needs students as it is a difficult topic to understand. The first stage of the research is to select the appropriate tools for testing annotation techniques in a real SEN environment. Later, a design of the proposed SEN teaching platform is built based on a Semantic Web annotation tool (Amaya) coordinated with a web application. Design is evaluated by conducting a pilot study in schools caring for special needs students (SEN). Evaluations were carried out at two schools, interviewing nine participants (Teachers, Teaching Assistant) in the UK. SENTP is tested for using Semantic Web technology to benefit the education of SEN students by utilizing Semantic Web annotation tools. This research further improves the SENTP with additional support for cognitive load using specific annotation formats within the Amaya annotation tool. Field testing is carried out at six UK schools with twenty-two participants being interviewed. Cognitive load principles are shown to improve both learning and class behaviour, also supporting teachers in the production of educational content. The pilot study and field testing results reveal that the proposed approach is effective. Following this, designed artefacts are synthesised within a wider design blueprint that articulates how this new world of annotated digital media is designed, deployed and consumed. Finally, SENTP ontology is created using OWL language and Protégé 5. The main goal of this ontology is to produce a wider design SENTP ontology that can be adapted to wider teaching purposes
On the orchestration of operations in flexible manufacturing
Tese de doutoramento em Engenharia Mecânica (Controlo e Gestão) apresentada à Faculdade de Ciências e Tecnologia da Universidade de CoimbraDomínio
A capacidade de produzir bem é a chave da riqueza. Uma boa produção concretiza-se pela
transformação competitiva de matérias-primas em produtos de qualidade para o mercado
global. Tal transformação inclui uma série de operações coordenadas de modo a obter a
produtividade que permite o aumento da competitividade.
Embora algumas operações possam requerer pessoal especializado, a tendência é para uma
crescente automatização. A coordenação das operações automatizadas é também
automatizada (através de uma variedade de transportadores, comunicação digital, etc.).
Contudo, e embora a produção seja automatizada, a configuração do equipamento é feita
manualmente.
Situação
A necessidade de automatização foi inicialmente sentida e aplicada na produção de longas
séries, como no caso da indústria automóvel. Com a necessidade de redução de custos e
aumento de flexibilidade, a inclusão de máquinas/equipamentos controlados por computador,
assim como de interligações por computadores/redes tem sido extensiva. O aumento de
software nestes sistemas, as restrições físicas e as (indesejáveis) interconecções lógicas
conduzem a um aumento da complexidade, que em empresas de produção em grande escala é
obviado por especialistas.
O aumento na procura de produtos personalizados e a rapidez para a sua comercialização
determinam a necessidade de uma produção flexível. Contudo, a referida indesejável complexidade constitui um grande obstáculo para o recurso a soluções (semi)-automatizadas, e
postos de trabalho (de alta qualidade) são deslocados para países de mão-de-obra mais barata.
O caso mais difícil prende-se com a utilização de robôs (que é o tipo de máquina mais flexível)
nas empresas mais flexíveis, como sejam as Pequenas e Médias Empresas (PMEs). Deste modo,
as condições para a utilização de robôs (juntamente com outro tipo de equipamento) em PMEs
(incluindo operações manuais e configuração) representam o maior desafio, uma vez que os
sistemas técnicos têm de ser estruturados de forma a suportarem a desejada flexibilidade.
À semelhança da incapacidade de uma boa gestão em compensar a falta de competência em
actividades como a do comércio ou da investigação cientifica, as etapas de produção têm de ser
apropriadamente construídas e mantidas. Estas últimas representam aquilo em que o produtor
se deve concentrar e especializar. Assim, sejam quais forem os avanços que facilitem a
produção, as práticas de produção competitiva deverão ser mantidas. Especificamente,
processos de trabalho com conhecimentos valiosos não devem ser prejudicados por detalhes
técnicos irrelevantes. Novas tecnologias que possam aumentar a competitividade e/ou
melhorar as condições de trabalho são obviamente desejáveis. Contudo, estas deverão ser
combinadas com princípios de utilização simples para os quais os sistemas de produção são
construídos. Tópico
A complexidade surge tanto na operação como na coordenação, mas também na sua
configuração manual. Esta é parcialmente compreensível e gerenciável, uma vez que uma
determinada máquina ou processo de fabrico pode ser bastante avançado e complexo. Assim, a complexidade será local. Contudo, e em particular com software envolvido, dependências adhoc acidentais entre operações e coordenação tornam a situação actual mais difícil.
Adicionalmente, a configuração de cada máquina e subsistema envolve uma variedade de
interfaces de utilizador e ferramentas de configuração/programação. Uma vez mais, as grandes empresas podem contar com engenheiros altamente qualificados para lidar com estes problemas, enquanto que nas PMEs a situação fica facilmente ingovernável. Consideramos que podemos referir o problema como uma questão de orquestração. Orquestração é então definida como o arranjo, coordenação e gestão (semi-) automatizada de
complexos sistemas de produção, incluindo as suas interacções em termos de comunicação e
os seus serviços em termos de controlo por computador.
O tópico pode então ser formulado como a procura de princípios óptimos, ou pelo menos
exequíveis, para a orquestração de processos produtivos de pequena escala. Na realidade,
existem aspectos fundamentais envolvidos que não representam apenas uma questão de
engenharia a ser solucionada. Ao contrário, a situação requer uma abordagem científica com
especial atenção para a recente tecnologia de suporte proveniente de outras áreas.
Abordagem cientifica - A procura de princípios apropriados a PMEs para a orquestração de processos de produção não
se presta a uma análise teórica, que por sua vez requer a utilização de modelos formais e
derivação das soluções (sub-)óptimas e suas propriedades. Embora tivesse sido preferível obter provas formais de uma solução óptima, a complexidade do equipamento, o envolvimento de humanos, a considerável desorganização das PMEs, a necessidade de aderir às práticas
industriais, assim como a variedade de PMEs existentes, dificultam uma abordagem teórica.
Deste modo, foi seguida uma abordagem empírica. A dificultar o teste e a avaliação de uma
abordagem empírica estão as possíveis variações no software envolvido, juntamente com a
constante mudança que ocorre na produção em sistemas de produção flexíveis.
Adicionalmente, a experimentação não pode ser conduzida em ambientes industriais (onde
esta iria perturbar a produção). Assim sendo, as experiências deverão ser cuidadosamente
seleccionadas e conduzidas em laboratório com recurso a equipamento industrial. Ainda assim,
dadas as condições e singularidade de algum equipamento, não é fácil reproduzir os resultados
noutros locais, o que constitui um problema para a validação e aceitação dos mesmos.
Contudo, caso a solução sugerida em termos de princípios técnicos possa ser encontrada ou
confirmada por resultados publicados de investigação independente, ou se técnicas
relacionadas derem origem a novos produtos, tal pode desejavelmente contribuir para a
validação de resultados. Isto é, embora resultados semelhantes para outros laboratórios sejam válidos, as diferenças actuais vão revelar a existência de variações que merecem estudo
detalhado.
Abordagem técnica - Os sistemas de produção flexíveis consistem em equipamento distribuído do ponto de vista computacional. Tipicamente, os diferentes aparelhos não foram concebidos para operarem em
conjunto, mas devem, no entanto, ser de fácil configuração no local de trabalho. Uma
abordagem básica passaria pela utilização de plataformas de software que suportassem
componentes distribuídos de uma forma flexível. Contudo, as plataformas computacionais
existentes podem não satisfazer com eficiência a necessidade do equipamento integrado,
podendo revelar falta de robustez, nomeadamente nas interconecções. Deste modo, é
necessário combinar com algum cuidado a tecnologia existente e confrontar as soluções
sugeridas com as necessidades actuais das empresas.
A abordagem seguida encontra-se dividida em quatro partes:
1. Suportar o acoplamento fraco entre componentes de forma a obter simples composição
quando o equipamento é instalado ou substituído. As interacções necessitam ser
assíncronas e baseadas em eventos através de interfaces bem definidas e auto-explicativas,
contendo serviços definidos em termos de operações de produção (e não em termos de
software interno).
2. Produzir princípios unificados para interacção com utilizador e interfaces, permitindo que
utilizadores não especializados possam (re)configurar e (re)programar o sistema de
produção. Uma interacção com o utilizador que permita combinar operações básicas que
resultem num novo serviço, o qual deverá idealmente estar facilmente acessível através de
interfaces programadas e manuais.
3. As abordagens baseadas em modelos têm-se revelado eficazes para desempenho e
reutilização. No entanto, os modelos consistem em elevado nível de conhecimento e são
dispendiosos de obter no âmbito da flexibilidade e desorganização das PMEs. Uma melhor
abordagem é permitir a visibilidade do conhecimento envolvido numa determinada etapa em termos do processo de produção, de modo a que o operador transmita inteligência
através de uma interface simples.
4. O software é por defeito não descritivo, assim como a execução sequencial de código
imperativo não se compõe. Conhecimento no metanível e descrições declarativas deverão
ser utilizadas, se possível, sem comprometimento dos itens anteriores. O objectivo é gerar
software ao nível de aplicação, partindo de descrições de alto nível.
A avaliação experimental deverá verificar técnicas individuais como tal, e os resultados deverão
ser comparados com investigação relacionada. A abordagem global consiste em combinar os
resultados das diferentes partes em princípios aplicáveis a futuros processos de produção das
PMEs.
Resultados
O uso de arquitecturas orientadas a serviços (SOA) nas redes empresariais resolveu as
limitações das arquitecturas orientadas a componentes no que diz respeito ao acoplamento
através da standarização das interfaces, protocolos de comunicação, gestão de transacções, e
segurança, entre outros. SOA ao nível do dispositivo é o resultado da importação de princípios
SOA para os sistemas embebidos com algumas importantes diferenças, nomeadamente:
inclusão de padrões de mensagens publish/subscribe, descoberta e descrição directa entre
dispositivos, e modelos descritivos genéricos. Numa primeira fase, este trabalho validou os
inúmeros trabalhos realizados sobre a aplicação de SOA ao nível do dispositivo em ambiente
industrial com o teste num protótipo de célula de trabalho. De seguida foi levado a cabo um
trabalho de avaliação comparativa entre duas SOA ao nível do dispositivo com estilos de
arquitectura diferentes, servindo como base aos restantes desenvolvimentos da tese. Ainda
que os resultados desta avaliação tenham mostrado o grande avanço proporcionado pelo uso
de SOA, nomeadamente no que diz respeito ao desacoplamento entre componentes atingido,
alguns aspectos críticos para o seu uso efectivo ainda estavam por resolver, designadamente:
1. A geração e a especificação dos serviços ao nível da tarefa
2 A definição de uma linguagem de orquestração adequada às SOA ao nível do dispositivo. Uma abordagem baseada em tarefas, quando relacionadas com processos de manufactura,
consubstancia-se na capacidade de disponibilizar um mecanismo flexível (e amigável para o
utilizador de uma PME) para a especificação das interfaces de rede. Os programas de robô são
um elemento chave na flexibilidade do robô e este trabalho mostrou que o seu uso para a
definição de interfaces vai elevar a fasquia da flexibilidade para o nível das interligações. A
natureza procedimental de muitas linguagens de robô encaixa-se perfeitamente com o padrão
de mensagens definido nas plataformas SOA, com uma mistura de variáveis de estado definidas
a partir de variáveis do robô, e com acções definidas a partir de métodos da linguagem robô.
A definição de uma linguagem de orquestração preencheu uma lacuna nos padrões de
orquestração: sistemas conduzidos a eventos. Estes sistemas definem estados e transições de
uma forma clara, potenciando a capacidade do utilizador de acompanhar o estado do sistema.
Statecharts constituem um par adequado para a arquitectura SOA, uma vez que as transições
de estado são baseadas em eventos, que no nosso caso são eventos na rede, mas os estados (e
também as transições) incluem igualmente acções, que podem ser mapeadas para operações.
A avaliação empírica efectuada mostrou uma previsível boa curva de aprendizagem para estes
sistemas, em parte devido às vantagens associadas à sua semelhança a técnicas de automação
tradicionais, como os Sequential Function Charts. Os resultados desta avaliação são positivos e
justificam esforços suplementares para efectuar testes em aplicações reais, o que neste caso
implica utilizadores de PME reais.
Conclusões
Três conclusões devem ser retiradas desta tese:
A estratégia proposta para a especificação de serviços é um elemento chave no futuro do uso
de SOA ao nível dos dispositivos, devido à importância da definição das interfaces no sucesso
destas arquitecturas. A programação ao nível da tarefa é desta forma transferida da
programação dos robôs para o nível da rede.
Uma linguagem conduzida a eventos foi definida para a orquestração. Testes revelaram o seu
uso e compatibilidade com as necessidades das células de fabrico das pequenas e médias empresas, nomeadamente estados explícitos e transições baseadas em eventos. Esta
abordagem preenche uma lacuna nos padrões de orquestração existentes na indústria e
constitui uma excelente base de trabalho para o futuro.
Finalmente, foram abordadas técnicas baseadas em conhecimento, e avaliada a sua integração
com a arquitectura definida anteriormente. Estes estudos mostraram a importância das
estratégias descritivas e as inúmeras possibilidades abertas quando a semântica é adicionada
aos sistemas industriais baseados em software, especialmente quando suportados em bem
estabelecidas tecnologias de rede, como as descritas anteriormente.Our ability to manufacture well is the key to our wealth. Obtaining a wider range of different
(and better) products in a sustainable way in terms of labour and environment is the big
challenge faced by modern manufacturing. In the last few decades, automation has played a
key role in the enhanced productivity of mass-production industries, but there has been a
paradigm shift: global consumers ask for customization, leading manufacturers to target mass
customization and consequently requiring new levels of flexibility for automation. An industrial
robot is usually considered to be a flexible machine, which is only true within the large plant
scenario. Small enterprises, which are by nature the most flexible ones, do not make use of
robot systems as they could, because robot flexibility, which relies on reprogramming and
reconfiguring, cannot be taken on by the SME (Small Medium Enterprises) worker at the
workshop, and hiring specialists is unacceptable in terms of costs. The easy reconfiguration of a
robotic work-cell, which is a distributed environment with computation in different platforms
that are coordinated by software, is hindered greatly by the dependencies between cell
components. This thesis addresses the problem of dependencies by proposing principles and
mechanisms for the orchestration of complex manufacturing systems, i.e., the (semi-)
automated coordination of their interactions in terms of communications and computer
control. The industrial environment, especially regarding robotics, does not lend itself to theoretical
analysis due to the amount of work needed to reach formal models. This is exacerbated in the
unstructured SME environment and when working with user-in-the-loop systems. Therefore, the approach used in this thesis was mainly empirical, with validation through laboratory
prototypes used by some representative users.
The approach consisted of the following parts:
1. supporting loose coupling between components to promote simple composition of services
to enable an easier reconfiguration;
2. defining unifying principles in terms of user interaction, by taking into account current robot
technologies and improvements from other scientific areas, namely enterprise level
networking;
3. enabling a task-based view of knowledge in terms of the manufacturing processes to
promote the reconfiguration of the system by process rather than robotics specialists;
4. proposing declarative techniques that support easy configuration of the work-cell in terms
understandable by the SME user.
The use of service-oriented architectures (SOAs) in the business world has tackled the
limitations of component-oriented architectures in terms of coupling through the
standardization of interfaces, communication protocols, transaction management, and security,
among others. Device-level SOA are the result of the porting of SOA principles to the embedded
level with the addition of several important features, namely: publish/subscribe messaging
patterns, peer-to-peer discovery description and generic templates. At an initial stage, this
work has validated the current trend of using device-level SOA in industrial environments by
testing their use against a prototype work-cell. Following this, a comparison was made between
device-level SOA platforms that embodied two different architectural styles. This served as a
basis for the rest of the thesis. Although the results from this evaluation have shown the great
advances brought about by the use of device-level SOA, for instance in terms of decoupling,
some critical issues for their effective use remained unchallenged, namely:
1. The generation and the specification of task-level services (contracts), with transparent and easy-to-use techniques for the SME user. 2. The definition of orchestration techniques adapted to the device-level SOA, with adequate
expressiveness and simplicity for the SME user.
A task-based view of knowledge in terms of manufacturing processes relies on the ability to
provide a flexible (SME user-friendly) mechanism for the specification of network interfaces.
Robot programs are the key element for robot flexibility. This work has shown that their use in
interface definition will feature flexibility also at the interconnection level. The procedural
nature of many robot programming languages copes perfectly with the device-level SOA
messaging style, with a mixture of evented state variables defined by robot variables, and with
actions defined by robot methods.
The definition of an orchestration language has addressed a missing pattern in service
orchestration: event-driven systems. These systems define states and transitions in a clear way,
thus enhancing the user’s ability to predict the state of the system. Statecharts provide a
perfect match for the device-level SOA since the state-transitions are event-based, but the
states (and the transitions) embody actions, which can be mapped to operations. The empiric
evaluation made with several types of users has shown the predictable steep learning curve of
these systems, partly due to their resemblance to traditional automation techniques like SFCs.
The results are therefore positive and justify the effort of testing the system against real
applications, which in this case means with real SME users.
Descriptive techniques for software are one of the keys to establish the bridge between
humans and computer programs. Despite recent evolutions, these techniques are not yet ready
for use, and supportive technologies and methodologies need to be tested. In this work, a cell
specification language has been defined and software developed that configures a
programming-by-demonstration robotic work-cell.
In conclusion, there are three main outcomes from this thesis. The proposed strategy for the specification of services is a key enabler in the future use of
device-level SOA in industrial robotics, due to the importance of interface definition in the success of these architectures. Task-level programming is in this way extended from the robot
programming level to networked devices.
An event-driven language has been defined for the orchestration. Tests revealed its ease of use
and compatibility with the orchestration needs of SME work-cells, namely: explicit states and
event-based transitions. This approach fulfils a missing orchestration pattern in the industry,
and provides an excellent basis for future work.
A descriptive robotic cell specification has been introduced that supports the automatic workcell
(re)configuration. This work has shown the importance of descriptive knowledge in
automation, especially when supported by the networking integration techniques described
previously.Project SMERobot, Integrated project funded under the European Union’s Sixth Framework Programme (FP6