• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 170
  • 94
  • 32
  • 24
  • 5
  • 5
  • 5
  • 5
  • 5
  • 5
  • 5
  • 3
  • 1
  • 1
  • Tagged with
  • 386
  • 386
  • 326
  • 316
  • 200
  • 107
  • 76
  • 67
  • 66
  • 65
  • 56
  • 45
  • 38
  • 34
  • 34
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
211

Distribution alignment for unsupervised domain adaptation: cross-domain feature learning and synthesis

Yang, Baoyao 31 August 2018 (has links)
In recent years, many machine learning algorithms have been developed and widely applied in various applications. However, most of them have considered the data distributions of the training and test datasets to be similar. This thesis concerns on the decrease of generalization ability in a test dataset when the data distribution is different from that of the training dataset. As labels may be unavailable in the test dataset in practical applications, we follow the effective approach of unsupervised domain adaptation and propose distribution alignment methods to improve the generalization ability of models learned from the training dataset in the test dataset. To solve the problem of joint distribution alignment without target labels, we propose a new criterion of domain-shared group sparsity that is an equivalent condition for equal conditional distribution. A domain-shared group-sparse dictionary learning model is built with the proposed criterion, and a cross-domain label propagation method is developed to learn a target-domain classifier using the domain-shared group-sparse representations and the target-specific information from the target data. Experimental results show that the proposed method achieves good performance on cross-domain face and object recognition. Moreover, most distribution alignment methods have not considered the difference in distribution structures, which results in insufficient alignment across domains. Therefore, a novel graph alignment method is proposed, which aligns both data representations and distribution structural information across the source and target domains. An adversarial network is developed for graph alignment by mapping both source and target data to a feature space where the data are distributed with unified structure criteria. Promising results have been obtained in the experiments on cross-dataset digit and object recognition. Problem of dataset bias also exists in human pose estimation across datasets with different image qualities. Thus, this thesis proposes to synthesize target body parts for cross-domain distribution alignment, to address the problem of cross-quality pose estimation. A translative dictionary is learned to associate the source and target domains, and a cross-quality adaptation model is developed to refine the source pose estimator using the synthesized target body parts. We perform cross-quality experiments on three datasets with different image quality using two state-of-the-art pose estimators, and compare the proposed method with five unsupervised domain adaptation methods. Our experimental results show that the proposed method outperforms not only the source pose estimators, but also other unsupervised domain adaptation methods.
212

Um simulador distribuido para redes neurais artificiais / A distributed neural network simulator

Schwingel, Dinamerico January 1995 (has links)
Este trabalho analisa o uso de redes de estações de trabalho como uma única máquina a ser utilizada para permitir o processamento de problemas que não poderiam ser computados, aceitavelmente, em apenas um de seus nodos, seja por causa do tempo dispendido ou de recursos físicos necessários, como memória principal. São enfocados dois algoritmos de redes neurais artificiais - Combinatorial Neural Model e Back Propagation - que apresentam os problemas enunciados acima, e uma proposta de um esquema para distribuição dessa classe de algoritmos, levando em consideração as vantagens disponíveis no ambiente em questão, a apresentada. A implementação do modelo proposto, sob a forma de um simulador distribuído baseado no conceito de servidor está descrita no trabalho, assim como as estratégias de paralelização dos algoritmos. Ao final, são apresentados os resultados obtidos, quantitativa e qualitativamente, e uma avaliação mais detalhada da paralelização do algoritmo Back Propagation a exposta. / The use of workstation networks as distributed multicomputers to solve resource demanding problems that cannot be feasibly solved in one node is the main concern of this work. Two different artificial neural network algorithms, Combinatorial Neural Model and Back Propagation, are faced and a scheme for distributing this class of algorithms is presented. The several advantages of the environment are focused in the proposal along with its disadvantages. This work also presents the implementation of the proposed scheme allowing an in loco performance evaluation. At the end results are shown and a more in depth evaluation of the Back Propagation parallelization is presented.
213

Um modelo para linguagens orientadas a objetos distribuido / A model for distributed object—oriented languages

Cavalheiro, Gerson Geraldo Homrich January 1994 (has links)
Linguagens de programação orientadas a objetos possuem diversas características que facilitam sua utilização frente a outras linguagens imperativas. No projeto e desenvolvimento de software, o mecanismo de herança permite a construção de sistemas na forma incremental e evolutiva, possibilitando a reutilização de códigos já escritos. Também a possível atingir aplicações com bons níveis de segurança e confiabilidade, através do encapsulamento de dados e funções sob forma de objetos, que também representam a unidade básica de execução em uma linguagem orientada a objetos. O mesmo recurso que possibilita níveis elevados de segurança permite que linguagens orientadas a objetos sejam inerentemente distribuídas. Objetos possuem tanto área de dados e código de execução independentes dos demais. Acessos aos dados internos de um objeto somente são possíveis através de mensagens explicitas entre objetos. Neste caso um objeto solicita uma ação específica a outro objeto, podendo ser enviados parâmetros e existir retorno de resultados. Este trabalho apresenta um modelo para construção de uma linguagem orientada a objetos distribuída. O ambiente para suportar a execução ao modelo é compostos por vários nodos de processamento com memórias locais individuais e contando com uma rede de comunicação para troca de mensagens entre os nodos. O modelo e discutido em dois níveis distintos: a nível de linguagem e a nível operacional. A nível de linguagem são analisados os recursos de programação normalmente utilizados em linguagens orientadas a objetos quando implementados em ambientes distribuídos. O ambiente de suporte A execução necessário ao suporte do modelo da linguagem a analisado pelo nível operacional. A apresentação do modelo a nível de linguagem discute as características de uma linguagem orientada a objetos distribuída frente as implementações seqüenciais convencionais. E ressaltada a implementado de herança em um ambiente de execução distribuído, que, não podendo ser através de compartilhamento, é efetuada através de copia de código. Também são apresentadas novas diretivas de compilação necessárias exclusivamente a ambientes distribuídos. Tais diretivas visam explorar níveis de concorrência de uma aplicação durante sua execução, diferenciando classes que definem objetos locais ou distribuídos e diferentes tipos de mensagens entre objetos. As formas de extrair o melhor desempenho nas aplicações e o gerenciamento do ambiente de execução são os pontos abordados pelo nível operacional do modelo. Em operação neste nível, um elemento de gerencia de execução permite o controle tanto dos objetos da aplicação quanto dos nodos de processamento disponíveis para execução. A tarefa de controle de objetos viabiliza a criação e remoção de objetos durante a execução da aplicação, bem como a identificação de localização destes. O controle dos nodos de processamento possibilita analisar continuamente a carga computacional dos nodos de processamento. Assim, cada objeto a ser criado pode ser alocado em um nodo onde a carga computacional esteja baixa, propiciando um melhor desempenho no momento de execução da aplicação distribuído a carga entre os nodos. A unido do modelo de execução distribuído proposto a uma linguagem orientada a objetos resulta em uma linguagem eficiente tanto na produção de software como no desempenho de aplicações. A eficiência na produção de sistemas 6 obtida através de dois itens, a utilização do paradigma de orientação a objetos e a transparência do nível operacional para o programador, que não necessita conhecer os mecanismos utilizados para ativação de objetos e envio de mensagens. A eficiência de execução é obtida através da utilização de múltiplos nodos processadores servindo como base a execução. Neste trabalho é também apresentado um protótipo para uma linguagem suportando o modelo distribuído proposto. A linguagem, denominada DPC++ (Processamento Distribuído em C++), é voltada para execução em redes de estações de trabalho, sobre o sistema operacional Unix, utilizando sockets como mecanismo de comunicação. O estilo de programação em DPC++ é baseado em C++. / The objects-oriented programming languages have many features who make simple their use in front of others imperatives languages. In the software project and development, the inheritance mechanism allows an increasing and evaluative way of codes that have been written. It also possible gain applications with goods levels of security and confiability with the encapsulation of both data and functions in the form of object, which represent the basic execution unit in an object-oriented language. The same resource that provides high levels of security also permits that object-oriented languages may be inherently distributed. Objects have their own area of data, their execution codes are independent from the other. Accesses to the internal data of an object are possible only through a specific protocol among objets. When this occurs, an object requests a specific action to other object with or without parameters or results return. This work presents a model for build a distributed object-oriented language, devoted to environments compounded by several processing nodes with local memory and linked by a communication network. The model is discussed in two different levels: language level and operational level. In the language level are analyzed the programming resources usually used in object-oriented languages when implemented in distributed environments. The executing environments support are analyzed in the operational level. In the language level presentation are made a discussion about distributed object-oriented language features in front of conventional sequential implementations. It is emphasized inheritance in a distributed executing environment, who is done by code copy, due to can not be by memory sharing. Also are presented news compilation directives necessaries to the distributed environment. Those directives aim to explorer concurrence levels in an application during its execution, differing class who defining local or distributed objects and the different messages types among objects. The operational level boards the ways that mean to extract the best performance for the applications and the execution environment management. An execution manager element allows the control as the application objects as the available to execution processor nodes. The task of object control makes possible the objects creation and removal during the application executing as well their network identification. The processor nodes control allows the continuous analyzes of the computational load in the nodes available to processing. In this way, every object to be created can be allocated in a node with low occupation rates, propitiating a better performance in the application executing. The union of the proposed distributed execution model to an objectoriented language results in an efficient language as in the software production as in execution performance. The systems production efficiency is obtained from two items: the utilization of the object-oriented paradigm an the transparency of the operational level to the programmer, that no need know the used mechanisms to object activation and message exchange. The execution efficiency is gained by the utilization of multiples processor nodes supporting the application executing. In this work is presented a prototype that implements the proposed model. The language, called DPC++, Distributed Processing in C++, is turned to execute in workstation network with Unix operational system, using sockets as communication mechanism. The style of DPC++ programming are based in C++.
214

Um simulador distribuido para redes neurais artificiais / A distributed neural network simulator

Schwingel, Dinamerico January 1995 (has links)
Este trabalho analisa o uso de redes de estações de trabalho como uma única máquina a ser utilizada para permitir o processamento de problemas que não poderiam ser computados, aceitavelmente, em apenas um de seus nodos, seja por causa do tempo dispendido ou de recursos físicos necessários, como memória principal. São enfocados dois algoritmos de redes neurais artificiais - Combinatorial Neural Model e Back Propagation - que apresentam os problemas enunciados acima, e uma proposta de um esquema para distribuição dessa classe de algoritmos, levando em consideração as vantagens disponíveis no ambiente em questão, a apresentada. A implementação do modelo proposto, sob a forma de um simulador distribuído baseado no conceito de servidor está descrita no trabalho, assim como as estratégias de paralelização dos algoritmos. Ao final, são apresentados os resultados obtidos, quantitativa e qualitativamente, e uma avaliação mais detalhada da paralelização do algoritmo Back Propagation a exposta. / The use of workstation networks as distributed multicomputers to solve resource demanding problems that cannot be feasibly solved in one node is the main concern of this work. Two different artificial neural network algorithms, Combinatorial Neural Model and Back Propagation, are faced and a scheme for distributing this class of algorithms is presented. The several advantages of the environment are focused in the proposal along with its disadvantages. This work also presents the implementation of the proposed scheme allowing an in loco performance evaluation. At the end results are shown and a more in depth evaluation of the Back Propagation parallelization is presented.
215

Um modelo para linguagens orientadas a objetos distribuido / A model for distributed object—oriented languages

Cavalheiro, Gerson Geraldo Homrich January 1994 (has links)
Linguagens de programação orientadas a objetos possuem diversas características que facilitam sua utilização frente a outras linguagens imperativas. No projeto e desenvolvimento de software, o mecanismo de herança permite a construção de sistemas na forma incremental e evolutiva, possibilitando a reutilização de códigos já escritos. Também a possível atingir aplicações com bons níveis de segurança e confiabilidade, através do encapsulamento de dados e funções sob forma de objetos, que também representam a unidade básica de execução em uma linguagem orientada a objetos. O mesmo recurso que possibilita níveis elevados de segurança permite que linguagens orientadas a objetos sejam inerentemente distribuídas. Objetos possuem tanto área de dados e código de execução independentes dos demais. Acessos aos dados internos de um objeto somente são possíveis através de mensagens explicitas entre objetos. Neste caso um objeto solicita uma ação específica a outro objeto, podendo ser enviados parâmetros e existir retorno de resultados. Este trabalho apresenta um modelo para construção de uma linguagem orientada a objetos distribuída. O ambiente para suportar a execução ao modelo é compostos por vários nodos de processamento com memórias locais individuais e contando com uma rede de comunicação para troca de mensagens entre os nodos. O modelo e discutido em dois níveis distintos: a nível de linguagem e a nível operacional. A nível de linguagem são analisados os recursos de programação normalmente utilizados em linguagens orientadas a objetos quando implementados em ambientes distribuídos. O ambiente de suporte A execução necessário ao suporte do modelo da linguagem a analisado pelo nível operacional. A apresentação do modelo a nível de linguagem discute as características de uma linguagem orientada a objetos distribuída frente as implementações seqüenciais convencionais. E ressaltada a implementado de herança em um ambiente de execução distribuído, que, não podendo ser através de compartilhamento, é efetuada através de copia de código. Também são apresentadas novas diretivas de compilação necessárias exclusivamente a ambientes distribuídos. Tais diretivas visam explorar níveis de concorrência de uma aplicação durante sua execução, diferenciando classes que definem objetos locais ou distribuídos e diferentes tipos de mensagens entre objetos. As formas de extrair o melhor desempenho nas aplicações e o gerenciamento do ambiente de execução são os pontos abordados pelo nível operacional do modelo. Em operação neste nível, um elemento de gerencia de execução permite o controle tanto dos objetos da aplicação quanto dos nodos de processamento disponíveis para execução. A tarefa de controle de objetos viabiliza a criação e remoção de objetos durante a execução da aplicação, bem como a identificação de localização destes. O controle dos nodos de processamento possibilita analisar continuamente a carga computacional dos nodos de processamento. Assim, cada objeto a ser criado pode ser alocado em um nodo onde a carga computacional esteja baixa, propiciando um melhor desempenho no momento de execução da aplicação distribuído a carga entre os nodos. A unido do modelo de execução distribuído proposto a uma linguagem orientada a objetos resulta em uma linguagem eficiente tanto na produção de software como no desempenho de aplicações. A eficiência na produção de sistemas 6 obtida através de dois itens, a utilização do paradigma de orientação a objetos e a transparência do nível operacional para o programador, que não necessita conhecer os mecanismos utilizados para ativação de objetos e envio de mensagens. A eficiência de execução é obtida através da utilização de múltiplos nodos processadores servindo como base a execução. Neste trabalho é também apresentado um protótipo para uma linguagem suportando o modelo distribuído proposto. A linguagem, denominada DPC++ (Processamento Distribuído em C++), é voltada para execução em redes de estações de trabalho, sobre o sistema operacional Unix, utilizando sockets como mecanismo de comunicação. O estilo de programação em DPC++ é baseado em C++. / The objects-oriented programming languages have many features who make simple their use in front of others imperatives languages. In the software project and development, the inheritance mechanism allows an increasing and evaluative way of codes that have been written. It also possible gain applications with goods levels of security and confiability with the encapsulation of both data and functions in the form of object, which represent the basic execution unit in an object-oriented language. The same resource that provides high levels of security also permits that object-oriented languages may be inherently distributed. Objects have their own area of data, their execution codes are independent from the other. Accesses to the internal data of an object are possible only through a specific protocol among objets. When this occurs, an object requests a specific action to other object with or without parameters or results return. This work presents a model for build a distributed object-oriented language, devoted to environments compounded by several processing nodes with local memory and linked by a communication network. The model is discussed in two different levels: language level and operational level. In the language level are analyzed the programming resources usually used in object-oriented languages when implemented in distributed environments. The executing environments support are analyzed in the operational level. In the language level presentation are made a discussion about distributed object-oriented language features in front of conventional sequential implementations. It is emphasized inheritance in a distributed executing environment, who is done by code copy, due to can not be by memory sharing. Also are presented news compilation directives necessaries to the distributed environment. Those directives aim to explorer concurrence levels in an application during its execution, differing class who defining local or distributed objects and the different messages types among objects. The operational level boards the ways that mean to extract the best performance for the applications and the execution environment management. An execution manager element allows the control as the application objects as the available to execution processor nodes. The task of object control makes possible the objects creation and removal during the application executing as well their network identification. The processor nodes control allows the continuous analyzes of the computational load in the nodes available to processing. In this way, every object to be created can be allocated in a node with low occupation rates, propitiating a better performance in the application executing. The union of the proposed distributed execution model to an objectoriented language results in an efficient language as in the software production as in execution performance. The systems production efficiency is obtained from two items: the utilization of the object-oriented paradigm an the transparency of the operational level to the programmer, that no need know the used mechanisms to object activation and message exchange. The execution efficiency is gained by the utilization of multiples processor nodes supporting the application executing. In this work is presented a prototype that implements the proposed model. The language, called DPC++, Distributed Processing in C++, is turned to execute in workstation network with Unix operational system, using sockets as communication mechanism. The style of DPC++ programming are based in C++.
216

Design of nonlinear networked control for wastewater distributed systems

Ogidan, Olugbenga Kayode January 2014 (has links)
Thesis submitted in fulfilment of the requirements for the degree Doctor of Technology: Electrical Engineering in the Faculty of Engineering at the Cape Peninsula University of Technology 2014 / This thesis focuses on the design, development and real-time simulation of a robust nonlinear networked control for the dissolved oxygen concentration as part of the wastewater distributed systems. This concept differs from previous methods of wastewater control in the sense that the controller and the wastewater treatment plants are separated by a wide geographical distance and exchange data through a communication medium. The communication network introduced between the controller and the DO process creates imperfections during its operation, as time delays which are an object of investigation in the thesis. Due to the communication network imperfections, new control strategies that take cognisance of the network imperfections in the process of the controller design are needed to provide adequate robustness for the DO process control system. This thesis first investigates the effects of constant and random network induced time delays and the effects of controller parameters on the DO process behaviour with a view to using the obtained information to design an appropriate controller for the networked closed loop system. On the basis of the above information, a Smith predictor delay compensation controller is developed in the thesis to eliminate the deadtime, provide robustness and improve the performance of the DO process. Two approaches are adopted in the design of the Smith predictor compensation scheme. The first is the transfer function approach that allows a linearized model of the DO process to be described in the frequency domain. The second one is the nonlinear linearising approach in the time domain. Simulation results reveal that the developed Smith predictor controllers out-performed the nonlinear linearising controller designed for the DO process without time delays by compensating for the network imperfections and maintaining the DO concentration within a desired acceptable level. The transfer function approach of designing the Smith predictor is found to perform better under small time delays but the performance deteriorates under large time delays and disturbances. It is also found to respond faster than the nonlinear approach. The nonlinear feedback linearisig approach is slower in response time but out-performs the transfer function approach in providing robustness and performance for the DO process under large time delays and disturbances. The developed Smith predictor compensation schemes were later simulated in a real-time platform using LabVIEW. The Smith predictor controllers developed in this thesis can be applied to other process control plants apart from the wastewater plants, where distributed control is required. It can also be applied in the nuclear reactor plants where remote control is required in hazardous conditions. The developed LabVIEW real-time simulation environment would be a valuable tool for researchers and students in the field of control system engineering. Lastly, this thesis would form the basis for further research in the field of distributed wastewater control.
217

Arquitetura de software para recuperaçao de falhas utilizando checkpointing quase-sincrono / Software architecture for fault-recovery using quasi-synchronous checkpointing

Silva, Ulisses Furquim Freire da 05 May 2005 (has links)
Orientadores: Islene Calciolari Garcia / Dissertação (mestrado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-06T15:21:09Z (GMT). No. of bitstreams: 1 Silva_UlissesFurquimFreireda_M.pdf: 705102 bytes, checksum: 5b4ebc6853f67fd40696b21c87297f43 (MD5) Previous issue date: 2005 / Resumo: Um sistema distribuído tolerante a falhas que utilize recuperação por retrocesso de estado deve selecionar os checkpoints dos seus processos que serão gravados. Além dessa seleção, definida por um protocolo de checkpointing, o sistema precisa realizar uma coleta de lixo, para eliminar os checkpoints que se tornam obsoletos à medida que a aplicação executa. Assim, na ocorrência de uma falha, a computação pode ser retrocedida para um estado consistente salvo anteriormente. Esta dissertação discute os aspectos teóricos e práticos de um sistema distribuído tolerante a falhas que utiliza protocolos de checkpointing quase-síncronos e algoritmos para a coleta de lixo e recuperação por retrocesso. Existem vários protocolos de checkpointing na literatura, e nesta dissertação foram estudados os protocolos de checkpointing quase-síncronos. Esses protocols enviam informações de controle juntamente com as mensagens da aplicação, e podem exigir a gravação de checkpoints forçados, mas não necessitam de sincronização ou troca de mensagens de controle entre os processos. Com base nesse estudo, um framework para protocolos de checkpointing quase-sincronos foi implementado numa biblioteca de troca de mensagens chamada LAM/MPI. Além disso, uma arquitetura de software para recuperação de falhas por retrocesso de estado chamada Curupira também foi estudada e implementada naquela biblioteca. O Curupira_e a primeira arquitetura de software que n~ao precisa de troca de mensagens de controle ou qualquer sincronização entre os processos na execução dos protocolos de checkpointing e de coleta de lixo / Abstract: A fault-tolerant distributed system based on rollback-recovery has to checkpoints of its processes are stored. Besides this selection, that is controlled checkpointing protocol, the system has to do garbage collection, in order to eliminate that become obsolete while the application executes. The garbage collection because checkpoints require the use of storage resources and the storage has limited capacity. So, when some fault occurs, the whole distributed be restored to a consistent global state previously stored. This dissertation practical and theoretical aspects of a fault-tolerant distributed system quasisynchronous checkpointing protocols and also garbage collection and algorithms. There are several checkpointing protocols proposed in the literature, quasisynchronous ones were studied in this dissertation. These protocols information in the application's messages and can induce forced checkpoints, need any synchronization or exchanging of control messages among on that study, a framework for quasi-synchronous checkpointing implemented in a message passing library called LAM/MPI. Moreover, a based on rollback-recovery from faults named Curupira was also implemented in that library. Curupira is the _rst software architecture exchanging of control messages or any synchronization among the execution of the checkpointing and garbage collection protocols / Mestrado / Sistemas Distribuidos / Mestre em Ciência da Computação
218

Protocolos multicoordenados de acordo e o serviço de log / Multicoordinated agreement problems and the log service

Camargos, Lásaro Jonas 12 December 2008 (has links)
Orientador: Edmundo R. M. Madeira, Fernando Pedone / Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-13T10:28:10Z (GMT). No. of bitstreams: 1 Camargos_LasaroJonas_D.pdf: 1941705 bytes, checksum: 23f0f1380c7d6262497ec13b43519301 (MD5) Previous issue date: 2008 / Resumo: Problemas de acordo, como Consenso, Terminação Atômica e Difusão Atômica, são abstrações comuns em sistemas distribuídos. Eles ocorrem quando os componentes do sistema precisam concordar em reconfigurações, mudanças de estado ou em linhas de ação em geral. Nesta tese, investigamos estes problemas no contexto do ambiente e aplicações em que serão utilizados. O modelo geral é o assíncrono sujeito a quebras com possível posterior recuperação. Nossa meta é desenvolver protocolos que explorem esta informação contextual para prover maior disponibilidade, e que se mantenham corretos mesmo que algumas das prerrogativas do contexto tornem-se inválidas. Na primeira parte da tese, exploramos a seguinte propriedade: mensagens difundidas em pequenas redes tendem a ser entregues ordenada e confiavelmente. Nós fazemos três contribuições nesta parte da tese. A primeira é a transformação de algoritmos conhecidos para o modelo quebra-e-pára, que utilizam a propriedade de ordenação mencionada, em protocolos práticos. Isto é, protocolos que toleram perda de mensagens e recuperação após a quebra. Nossos protocolos garantem progresso na presença de falhas, contanto que mensagens sejam espontaneamente ordenadas freqüentemente. Na ausência de ordenação expontânea, outras prerrogativas são necessárias para contornar falhas. A segunda contribuição é a generalização de um dos algoritmos citados acima em um modo de execução "multi-coordenado" em um protocolo híbrido de consenso, que usa ou ordenação expontânea ou detecção de falhas para progredir. Em comparação a outros protocolos, o nosso provê maior disponibilidade sem comprometer resiliência. A terceira contribuição é a utilização do modo multi-coordenado para resolver Consenso Generalizado, um problema que generaliza uma série de outros e que, portanto, é de grande interesse prático. Além disso, fizemos diversas considerações sobre aspectos práticos da utilização deste protocolo. Como resultado, nosso protocolo perde desempenho gradualmente no caso de condições desfavoráveis, permite o balanceamento de carga sobre os coordenadores, e acessa a memória estável parcimoniosamente. Na segunda parte da tese, consideramos problemas de acordo no contexto de redes organizadas hierarquicamente. Em específico, nós consideramos uma topologia usada nos data centers de grandes cooporações: grupos de máquinas conectadas internamente por links de baixa latência, mas por links mais lentos entre grupos. Em tais cenários, latência é claramente um fator importante e reconfigurações, onerosas aos protocolos, devem ser evitadas tanto quanto possível. Nossa contribuição neste tópico está em evitar reconfigurações e melhorar a disponibilidade de um protocolo de acordo que é rápido a despeito de colisões. Isto é, um protocolo que consegue chegar a uma decisão em dois passos inter-grupos mesmo quando várias propostas são feitas concorrentementes. Além do uso da técnica de multicoordenação, nós usamos primitivas de multicast e consenso para conter algumas reconfigurações dentro dos grupos, onde seus custos são menores. Na última parte da tese nós estudamos o problema de terminação de transações distribuídas. O problema consiste em garantir que os vários participantes da transação concordem em aplicar ou cancelar de forma consistente as suas operações no contexto da transação. Além disso, é necessário garantir a durabilidade das alterações feitas por transações terminadas com sucesso. Nossa contribuição neste tópico é um serviço de log que abstrai e desassocia a terminação de transações dos processos que executam tais transações. O serviço funciona como uma caixa preta e permite que resource managers lentos ou falhos sejam reiniciados em servidores diferentes, sem dependências na memória estável do servidor em que executava anteriormente. Nós apresentamos e avaliamos experimentalmente duas implementações do serviço. / Abstract: Agreement problems are a common abstraction in distributed systems. They appear when the components of the system must concur on reconfigurations, changes of state, or in lines of action in general. Examples of agreement problems are Consensus, Atomic Commitment, and Atomic Broadcast. In this thesis we investigate these abstractions in the context of the environment in which they will run and the applications that they will serve; in general, we consider the asynchronous crash-recovery model. The goal is to devise protocols that explore the contextual information to deliver improved availability. The correctness of our protocols holds even when the extra assumptions do not. In the first part of this thesis we explore the following property: messages broadcast in small networks tend to be delivered in order and reliably. We make three contributions in this part. The first contribution is to turn known Consensus algorithms that harness this ordering property to reach agreement in the crash-stop model into practical protocols. That is, protocols that tolerate message losses and recovery after crashes, efficiently. Our protocols ensure progress even in the presence of failures, if spontaneous ordering holds frequently. In the absence of spontaneous ordering, some other assumption is required to cope with failures. The second contribution of this thesis is to generalize one of our crash-recovery consensus protocols as a "multicoordinated" mode of a hybrid Consensus protocol, that may use spontaneous ordering or failure detection to progress. Compared to other protocols, ours provide improved availability with no price in resilience. The third contribution is to employ this new mode to solve Generalized Consensus, a problem that generalizes a series of other agreement problems and, hence, is of much practical interest. Moreover, we considered several aspects of solving this problem in practice, which had not been considered before. As a result, our Generalized Consensus protocol features graceful degradation, load balancing, and is parsimonious in accessing stable storage. In the second part of this thesis we have considered agreement problems in wide area networks organized hierarchically. More specifically, we considered a topology that is commonplace in the data centers of large corporations: groups of nodes, with large-bandwidth low-latency links connecting the nodes in the same group, and slow and limited links connecting nodes in different groups. In such environments, latency is clearly a major concern and reconfiguration procedures that render the agreement protocol momentarily unavailable must be avoided as much as possible. Our contribution here is in avoiding reconfigurations and improving the availability of a collision fast agreement protocol. That is, a protocol that can reach agreement in two intergroup communication steps, irrespectively to concurrent proposals. Besides the use of a multicoordinated approach, we employed multicast primitives and consensus to restrict some reconfigurations to within groups, where they are less expensive. In the last part of this thesis we study the problem of terminating distributed transactions. The problem consists of enforcing agreement among the parties on whether to commit or rollback the transaction and ensuring the durability of committed transactions. Our contribution in this topic is an abstract log service that detaches the termination problem from the processes actually performing the transactions. The service works as a black box and abstracts its implementation details from the application utilizing it. Moreover, it allows slow and failed resource managers be re-started on different hosts without relying on the stable storage of the previous host. We provide two implementations of the service, which we evaluated experimentally. / Doutorado / Doutor em Ciência da Computação
219

Uma ponte entre as abordagens sincrona e quase-sincrona para checkpointing / Bridging the gap between synchronous and quase-synchronous

Sakata, Tiemi Christine 21 December 2006 (has links)
Orientador: Islene Calciolari Garcia / Tese (doutorado) - Universidade Estadual de Campinas, Instituto de Computação / Made available in DSpace on 2018-08-08T07:37:22Z (GMT). No. of bitstreams: 1 Sakata_TiemiChristine_D.pdf: 843635 bytes, checksum: 7f950e8bee6e5c7a1dfb19c6212897c2 (MD5) Previous issue date: 2007 / Resumo: Protocolos de checkpointing são responsáveis pelo armazenamento de estados dos processos de um sistema distribuído em memória estável para tolerar falhas. Os protocolos síncronos minimais induzem apenas um número minimal de processos a salvarem checkpoints durante uma execução do protocolo bloqueando os processos envolvidos. Uma versão não-bloqueante desta abordagem garante a minimalidade no número de checkpoints salvos em memória estável com o uso de checkpoints mutáveis, checkpoints que podem ser salvos em memória não-estável. Porém, a complexidade deste protocolo e o fato de ele tolerar apenas a presença de uma execução de checkpointing a cada instante nos motivou a procurar soluções para estes problemas na teoria desenvolvida para os protocolos quase-síncronos. A nova abordagem nos permitiu fazer uma revisão de alguns protocolos síncronos bloqueantes existentes na literatura que até então eram considerados minimais. Nesta mesma linha, obtivemos novos resultados na análise de minimalidade dos protocolos síncronos não-bloqueantes, ao considerarmos a aplicação como um todo e também a existência de execuções concorrentes de checkpointing. Ao estabelecermos esta ponte entre as abordagens para checkpointing, conseguimos desenvolver dois novos protocolos síncronos não-bloqueantes. Ambos fazem uso de checkpoints mutáveis, permitem execuções concorrentes de checkpointing e possuem um mecanismo simples de coleta de lixo. No entanto, o fato de cada um dos protocolos derivar de classes diferentes de protocolos quase-síncronos leva a comportamentos distintos, como evidenciado por resultados de simulação / Abstract: Checkpointing protocols are responsible for the selection of checkpoints in fault-tolerant distributed systems. Minimal checkpointing protocols minimize the number of checkpoints blocking processes during checkpointing. A non-blocking version of this approach assures a minimal number of checkpoints saved in stable memory using mutable checkpoints, those checkpoints can be saved in a non-stable storage. However, the complexity of this protocol and the absence of concurrent checkpointing executions have motivated us to find new solutions in the quasi-synchronous theory. The new approach has allowed us to review some blocking synchronous protocols existent in the literature which were, until now, considered as minimals. In the same way, we present new results analysing the minimality on the number of checkpoints in nonblocking synchronous protocols, considering the whole application and also the existence of concurrent checkpointing executions. On bridging the gap between the checkpointing approaches we could develop two new non-blocking synchronous protocols. Both use mutable checkpoints, allow concurrent checkpointing executions and have a simple mechanism of garbage collection. However, since each protocol derives from a diferent class of quasi-synchronous protocols, they present distinct behaviours, which are evident in the simulation results / Doutorado / Sistemas Distribuidos / Doutor em Ciência da Computação
220

Système autonome de sécurité lors de la préparation d'un repas pour les personnes cognitivement déficientes dans un habitat intelligent pour la santé / Autonomous security system for meal preparation for cognitively impaired people in a smart home

Kuijpers, Nicola 13 March 2017 (has links)
Dans les pays développés tels que le Canada ou la France, la population est vieillissante et le nombre de personnes atteintes de déficiences cognitives augmente en conséquence. Ces troubles ont des conséquences sur les activités de la vie quotidienne pour les personnes qui en souffrent. Selon l’autonomie de ces personnes et la sévérité de leur déficience, un hébergement en centre spécialisé peut être envisagé. Ces centres spécialisés représentent souvent un coût financier énorme tant pour la personne que pour la société. Afin de limiter ces coûts, une solution alternative a émergé : les habitats domotiques. Ce sont des habitats dans lesquels un ensemble de technologies permet de pallier aux déficiences des personnes et de leur donner une autonomie accrue. L’activité de préparation d’un repas est une activité complexe qui peut présenter des risques variés pour des personnes atteintes de déficiences. Ces personnes vivent rarement seules, il faut tenir compte qu’un public varié puisse bénéficier du système. Ces habitats sont généralement déjà équipés d’appareils, il devient nécessaire pour le système de pouvoir s’adapter à ces appareils existants. L’objectif de ces travaux est la réalisation d’un prototype permettant d’assurer la sécurité lors de l’activité de la préparation d’un repas par des personnes atteintes de la maladie d’Alzheimer et ses aidants (professionnels ou naturels). Ce prototype doit s’adapter au profil des usagers, de son environnement et du matériel sur lequel il est déployé. Pour ce faire, le système, basé sur un système multi agent, applique des règles de sécurité qui se personnalisent par le biais du profil médical des usagers. Nos travaux ont été menés au sein de deux laboratoires, qui chacun, disposent d’appareils de cuisine différents dans leurs habitats intelligents pour la santé. Le système a pu être testé dans ces deux environnements, son adaptation vis-à-vis d’une clientèle variée et pour plusieurs risques de sécurité à travers des scénarios d’usage. Les résultats de ces expérimentations ont permis de montrer que le prototype répond bien aux objectifs visés. / In developed countries such as Canada or France, the population is ageing and the number of people with disabilities increases. Those disabilities have an impact on their activities of daily living. According to the severity of the disability and the independance of those people, a placement in a specialized institution can be considered. Those institutions often represent huge financial costs for the people as for society. In order to reduce those costs, smart homes are an alternative solution. Smart homes make it possible for people to compensate their disabilities and increase their independance through a set of technologies. Preparing a meal is a complex activity can present various risks for those people. These people rarely live alone, and it must be taken into account that a varied public can use the system. Homes are usually already equipped with appliances, it is necessary for the system to adapt itself to these devices. This work aims the implementation of a prototype ensuring the safety of people with Alzheimer during meal preparation and their caregivers (natural or professional). The prototype must adapt itself to the user’s profiles, its environment and the appliances on which it is deployed. In order to do this, the system, based on a multi agent system, applies safety rules that are customizable through the users’ medical profiles. This work is carried out in two laboratories, each with distinct kitchen appliances in their smart home. The system had been tested in both environments, its adaptation towards different users and for several safety rules through use cases. The results of these experiments showed that the prototype meets the objectives.

Page generated in 0.0804 seconds