1000 resultados para Estruturas de dados
Resumo:
Nos últimos anos, o processo de ensino e aprendizagem tem sofrido significativas alterações graças ao aparecimento da Internet. Novas ferramentas para apoio ao ensino têm surgido, nas quais se destacam os laboratórios remotos. Atualmente, muitas instituições de ensino disponibilizam laboratórios remotos nos seus cursos, que permitem, a professores e alunos, a realização de experiências reais através da Internet. Estes são implementados por diferentes arquiteturas e infraestruturas, suportados por vários módulos de laboratório acessíveis remotamente (e.g. instrumentos de medição). No entanto, a sua inclusão no ensino é ainda deficitária, devido: i) à falta de meios e competências técnicas das instituições de ensino para os desenvolverem, ii) à dificuldade na partilha dos módulos de laboratório por diferentes infraestruturas e, iii) à reduzida capacidade de os reconfigurar com esses módulos. Para ultrapassar estas limitações, foi idealizado e desenvolvido no âmbito de um trabalho de doutoramento [1] um protótipo, cuja arquitetura é baseada na norma IEEE 1451.0 e na tecnologia de FPGAs. Para além de garantir o desenvolvimento e o acesso de forma normalizada a um laboratório remoto, este protótipo promove ainda a partilha de módulos de laboratório por diferentes infraestruturas. Nesse trabalho explorou-se a capacidade de reconfiguração de FPGAs para embutir na infraestrutura do laboratório vários módulos, todos descritos em ficheiros, utilizando linguagens de descrição de hardware estruturados de acordo com a norma IEEE 1451.0. A definição desses módulos obriga à criação de estruturas de dados binárias (Transducer Electronic Data Sheets, TEDSs), bem como de outros ficheiros que possibilitam a sua interligação com a infraestrutura do laboratório. No entanto, a criação destes ficheiros é bastante complexa, uma vez que exige a realização de vários cálculos e conversões. Tendo em consideração essa mesma complexidade, esta dissertação descreve o desenvolvimento de uma aplicação Web para leitura e escrita dos TEDSs. Para além de um estudo sobre os laboratórios remotos, é efetuada uma descrição da norma IEEE 1451.0, com particular atenção para a sua arquitetura e para a estrutura dos diferentes TEDSs. Com o objetivo de enquadrar a aplicação desenvolvida, efetua-se ainda uma breve apresentação de um protótipo de um laboratório remoto reconfigurável, cuja reconfiguração é apoiada por esta aplicação. Por fim, é descrita a verificação da aplicação Web, de forma a tirar conclusões sobre o seu contributo para a simplificação dessa reconfiguração.
Resumo:
Dissertação para obtenção do Grau de Mestre em Engenharia Informática
Resumo:
Esta dissertação descreve o sistema de apoio à racionalização da utilização de energia eléctrica desenvolvido no âmbito da unidade curricular de Tese/Dissertação. O domínio de aplicação enquadra-se no contexto da Directiva da União Europeia 2006/32/EC que declara ser necessário colocar à disposição dos consumidores a informação e os meios que promovam a redução do consumo e o aumento da eficiência energética individual. O objectivo é o desenvolvimento de uma solução que permita a representação gráfica do consumo/produção, a definição de tectos de consumo, a geração automática de alertas e alarmes, a comparação anónima com clientes com perfil idêntico por região e a previsão de consumo/produção no caso de clientes industriais. Trata-se de um sistema distribuído composto por front-end e back-end. O front-end é composto pelas aplicações de interface com o utilizador desenvolvidas para dispositivos móveis Android e navegadores Web. O back-end efectua o armazenamento e processamento de informação e encontra-se alojado numa plataforma de cloud computing – o Google App Engine – que disponibiliza uma interface padrão do tipo serviço Web. Esta opção assegura interoperabilidade, escalabilidade e robustez ao sistema. Descreve-se em detalhe a concepção, desenvolvimento e teste do protótipo realizado, incluindo: (i) as funcionalidades de gestão e análise de consumo e produção de energia implementadas; (ii) as estruturas de dados; (iii) a base de dados e o serviço Web; e (iv) os testes e a depuração efectuados. (iv) Por fim, apresenta-se o balanço deste projecto e efectuam-se sugestões de melhoria.
Resumo:
Dissertação de Mestrado em Engenharia Informática
Resumo:
O surgimento de novas aplicações que utilizam o protocolo HTTP nas suas transações e a crescente popularidade da World Wide Web (WWW) provocaram pesquisas pelo aumento do desempenho de servidores Web. Para tal, uma das alternativas propostas neste trabalho é utilizar um conjunto de servidores Web distribuídos que espalham a carga de requisições entre vários computadores, atuando como um só associado a uma estratégia de replicação de conteúdo. Um dos problemas centrais a ser resolvido em servidores Web distribuídos é como manter a consistência das réplicas de conteúdo entre os equipamentos envolvidos. Esta dissertação apresenta conceitos fundamentais envolvendo o tema replicação de conteúdo em servidores Web distribuídos. São mostrados detalhes sobre arquitetura de servidores Web distribuídos, manutenção da consistência em ambientes de servidores Web distribuídos, uso de replicação e formas de replicação. Além disso, são citados alguns trabalhos correlatos ao propósito de manter réplicas consistentes em ambientes de servidores Web distribuídos. Este trabalho tem por objetivo propor um modelo de manutenção da consistência de conteúdo em servidores Web distribuídos com características de transparência e autonomia. O modelo, denominado One Replication Protocol for Internet Servers (ORPIS), adota uma estratégia de propagação otimista porque não existe sincronismo no envio das atualizações para as réplicas. Este trabalho apresenta os principais componentes tecnológicos empregados na Web, além dos problemas causados pela escalabilidade e distribuição inerentes a esse ambiente. São descritas as principais técnicas de aumento de desempenho de servidores Web que atualmente vêm sendo utilizadas. O modelo ORPIS é descrito, sendo apresentados seus pressupostos, elencados seus componentes e detalhados os seus algoritmos de funcionamento. Este trabalho dá uma visão geral sobre a implementação e os testes realizados em alguns módulos do protótipo do modelo, caracterizando o ambiente de desenvolvimento do protótipo e detalhes da implementação. São enumerados os atributos e métodos das classes do protótipo e definidas as estruturas de dados utilizadas. Além disso, apresentam-se os resultados obtidos da avaliação funcional dos módulos implementados no protótipo. Um ponto a ser salientado é a compatibilidade do modelo ORPIS aos servidores Web existentes, sem a necessidade de modificação em suas configurações. O modelo ORPIS é baseado na filosofia de código aberto. Durante o desenvolvimento do protótipo, o uso de software de código aberto proporcionou um rápido acesso às ferramentas necessárias (sistema operacional, linguagens e gerenciador de banco de dados), com possibilidade de alteração nos códigos fonte como uma alternativa de customização.
Resumo:
Este trabalho tem como objetivo desenvolver e empregar técnicas e estruturas de dados agrupadas visando paralelizar os métodos do subespaço de Krylov, fazendo-se uso de diversas ferramentas e abordagens. A partir dos resultados é feita uma análise comparativa de desemvpenho destas ferramentas e abordagens. As paralelizações aqui desenvolvidas foram projetadas para serem executadas em um arquitetura formada por um agregado de máquinas indepentes e multiprocessadas (Cluster), ou seja , são considerados o paralelismo e intra-nodos. Para auxiliar a programação paralela em clusters foram, e estão sendo, desenvolvidas diferentes ferramentas (bibliotecas) que visam a exploração dos dois níveis de paralelismo existentes neste tipo de arquitetura. Neste trabalho emprega-se diferentes bibliotecas de troca de mensagens e de criação de threads para a exploração do paralelismo inter-nodos e intra-nodos. As bibliotecas adotadas são o DECK e o MPICH e a Pthread. Um dos itens a serem analisados nestes trabalho é acomparação do desempenho obtido com essas bibliotecas.O outro item é a análise da influência no desemepnho quando quando tulizadas múltiplas threads no paralelismo em clusters multiprocessados. Os métodos paralelizados nesse trabalho são o Gradiente Conjugação (GC) e o Resíduo Mínmo Generalizado (GMRES), quepodem ser adotados, respectivamente, para solução de sistemas de equações lineares sintéticos positivos e definidos e não simétricas. Tais sistemas surgem da discretização, por exemplo, dos modelos da hidrodinâmica e do transporte de massa que estão sendo desenvolvidos no GMCPAD. A utilização desses métodos é justificada pelo fato de serem métodos iterativos, o que os torna adequados à solução de sistemas de equações esparsas e de grande porte. Na solução desses sistemas através desses métodos iterativos paralelizados faz-se necessário o particionamento do domínio do problema, o qual deve ser feito visando um bom balanceamento de carga e minimização das fronteiras entre os sub-domínios. A estrutura de dados desenvolvida para os métodos paralelizados nesse trabalho permite que eles sejam adotados para solução de sistemas de equações gerados a partir de qualquer tipo de particionamento, pois o formato de armazenamento de dados adotado supre qualquer tipo de dependência de dados. Além disso, nesse trabalho são adotadas duas estratégias de ordenação para as comunicações, estratégias essas que podem ser importantes quando se considera a portabilidade das paralelizações para máquinas interligadas por redes de interconexão com buffer de tamanho insuficiente para evitar a ocorrência de dealock. Os resultados obtidos nessa dissertação contribuem nos trabalhos do GMCPAD, pois as paralelizações são adotadas em aplicações que estão sendo desenvolvidas no grupo.
Resumo:
Este trabalho aborda o tema da geração de sistemas supervisórios a partir de modelos orientados a objetos. A motivação para realização do trabalho surgiu com o estudo de sistemas supervisórios e de ferramentas de suporte à modelagem de sistemas usando orientação a objetos. Notou-se que nos primeiros, apesar de possuírem como principal objetivo a visualização de estados e grandezas físicas relacionadas a componentes de plantas industriais (nível de um tanque, temperatura de um gás, por exemplo), os modelos computacionais utilizados baseiam-se em estruturas de dados não hierárquicas, nas quais variáveis de contexto global e não encapsuladas, as chamadas “tags”, são associadas às grandezas físicas a serem visualizadas. Modelos orientados a objeto, por outro lado, constituem uma excelente proposta para a criação de modelos computacionais nos quais a estrutura e semântica dos elementos de modelagem é bastante próxima a de sistemas físicos reais, facilitando a construção e compreensão dos modelos. Assim sendo, a proposta desenvolvida neste trabalho busca agregar as vantagens do uso de orientação a objetos, com conceitos existentes em sistemas supervisórios, a fim de obter-se ferramentas que melhor auxiliem o desenvolvimento de aplicações complexas. Classes e suas instâncias são usadas para modelagem de componentes da planta industrial a ser analisada. Seus atributos e estados são associados às grandezas físicas a serem visualizadas. Diferentes formas de visualização são associadas às classes, aumentando assim o reuso e facilitando o desenvolvimento de sistemas supervisórios de aplicações complexas. A proposta conceitual desenvolvida foi implementada experimentalmente como uma extensão à ferramenta SIMOO-RT, tendo sido denominada de “Supervisory Designer”. A ferramenta desenvolvida estende o modelo de objetos e classes de SIMOO-RT, permitindo a adição de informações específicas para supervisão – tais como as definições de limites para os atributos. A ferramenta foi validada através do desenvolvimento de estudos de casos de aplicações industriais reais, tendo demonstrado diversas vantagens quando comparada com o uso de ferramentas para construção de sistemas supervisórios disponíveis comercialmente).
Resumo:
Este trabalho aborda a crescente necessidade de verificação e testes das redes antes da sua implementação no mundo real. Variáveis como o investimento, estudo qualidade-custo, questões de gestão, fiabilidade e tempo de vida útil são parte das principais preocupações associadas a existentes e futuras redes. É sobretudo neste âmbito que este projecto opera, fornecendo uma solução para uma optimização da autoria de cenários de redes visando a sua execução na ferramenta de simulação de redes NS-3. As tecnologias emergentes são os alvos mais comuns de ferramentas de simulação de redes e este facto é determinante ao decidir que simulador de redes usar para simular os seus cenários. Com este trabalho, o principal objectivo é fornecer aos utilizadores uma ferramenta colaborativa que permite descrever os seus próprios cenários de redes, baseando-se numa linguagem XML denominada por NSDL e traduzir esta estrutura XML para um script C++ que possa ser executado num ambiente evolucionário, como é o caso do NS-3. A solução proposta permite a rápida criação de cenários de redes através de estruturas de dados XML para posterior tradução para C++ e então, execução no NS-3. A maior problemática associada a esta solução é a necessidade de actualização constante em estruturas de validação e de tradução de documentos XML, aquando da actualização da ferramenta NS-3, o que tem vindo a acontecer muito frequentemente devido à sua própria evolução.
Resumo:
Java Card technology allows the development and execution of small applications embedded in smart cards. A Java Card application is composed of an external card client and of an application in the card that implements the services available to the client by means of an Application Programming Interface (API). Usually, these applications manipulate and store important information, such as cash and confidential data of their owners. Thus, it is necessary to adopt rigor on developing a smart card application to improve its quality and trustworthiness. The use of formal methods on the development of these applications is a way to reach these quality requirements. The B method is one of the many formal methods for system specification. The development in B starts with the functional specification of the system, continues with the application of some optional refinements to the specification and, from the last level of refinement, it is possible to generate code for some programming language. The B formalism has a good tool support and its application to Java Card is adequate since the specification and development of APIs is one of the major applications of B. The BSmart method proposed here aims to promote the rigorous development of Java Card applications up to the generation of its code, based on the refinement of its formal specification described in the B notation. This development is supported by the BSmart tool, that is composed of some programs that automate each stage of the method; and by a library of B modules and Java Card classes that model primitive types, essential Java Card API classes and reusable data structures
Resumo:
Programs manipulate information. However, information is abstract in nature and needs to be represented, usually by data structures, making it possible to be manipulated. This work presents the AGraphs, a representation and exchange format of the data that uses typed directed graphs with a simulation of hyperedges and hierarchical graphs. Associated to the AGraphs format there is a manipulation library with a simple programming interface, tailored to the language being represented. The AGraphs format in ad-hoc manner was used as representation format in tools developed at UFRN, and, to make it more usable in other tools, an accurate description and the development of support tools was necessary. These accurate description and tools have been developed and are described in this work. This work compares the AGraphs format with other representation and exchange formats (e.g ATerms, GDL, GraphML, GraX, GXL and XML). The main objective this comparison is to capture important characteristics and where the AGraphs concepts can still evolve
Resumo:
Pós-graduação em Ciência da Computação - IBILCE
Resumo:
Pós-graduação em Agronomia (Energia na Agricultura) - FCA
Resumo:
Foram simuladas estruturas de dados em modelos mistos representando o teste de 100 reprodutores, sendo cada reprodutor acasalado com 10 matrizes (total de 1000 matrizes), originando em cada acasalamento 2 proles, totalizando 2000 proles (vinte proles por reprodutor). De cada combinação reprodutor e matriz, dez proles tiveram seu fenótipo expresso no ambiente de baixa produção (Estrato 1) e, a outra metade, no ambiente de alta produção (Estrato 2). A simulação foi realizada de forma a representar diferentes situações de presença de heterogeneidade de variâncias, combinando-se as origens da heterogeneidade, de natureza genética e ambiental. Na presença de heterogeneidade residual, o valor estimado para o componente de variância residual, considerando homogeneidade de variâncias se aproximou do valor médio das variâncias entre os estratos. Houve superestimação, também, do componente de variância genético aditivo. Ao simular heterogeneidade de variância de origem genética, observou-se que a estimação desse componente situou-se em valor intermediário aos simulados. Nessa situação, o componente de variância residual estimado foi próximo do valor simulado, indicando que a heterogeneidade de variâncias quando proveniente de fatores genéticos, não interfere, substancialmente, sobre e estimação do componente de variância residual. Na simulação de dados com presença de heterogeneidade tanto de origem genética quanto ambiental (estrutura de dados 4), conduziu a estimação de componentes de variâncias intermediários aos valores simulados em cada estrato. Assim, observa-se que, mesmo quando os reprodutores apresentam proles bem distribuídas em ambos os estratos, a heterogeneidade de variância proveniente de fatores não genético provoca distorções sobre a estimação da variância genética aditiva. Mas por outro lado, quando a heterogeneidade de variância é decorrente de fatores genéticos, não há grande interferência sobre a estimativa da variância residual, tal comportamento pode ser explicado pela incorporação da matriz de parentesco na estimação do componente de variância genético aditivo, possibilitando discriminar melhor a origem da diferenças entre variâncias. Na estrutura onde a variância residual foi heterogênea a estimativa de herdabilidade foi menor em relação à estrutura de homogeneidade de variâncias. Por outro lado, quando somente a variância genética aditiva foi heterogênea, a estimativa de herdabilidade, considerando-se apenas o estrato de alta variabilidade genética, foi inflacionada pela superestimação da variância genética aditiva. No entanto, a estimativa de herdabilidade obtida, desconsiderando essa fonte de heterogeneidade de variância, foi próxima à situação de homogeneidade de variância, indicando que, quando os reprodutores possuem boa distribuição de proles em diferentes ambientes, as estimativas relacionadas ao efeito genético são ponderadas pelo desempenho dos animais em cada ambiente. As correlações de Spearman e de Pearson entre os valores genéticos preditos dos reprodutores, para todas as situações, foram maiores que 0,90. O resultado indica que, mesmo havendo presença de heterogeneidade de variância genética e/ou ambiental, se os reprodutores possuem proles bem distribuídas entre os ambientes (estratos heterogêneos) a classificação do mérito genético não se altera, o que era esperado, pois em análises unicarácter, quando ocorre uma fonte de viés na avaliação genética, ela é comum a todos os indivíduos. Na situação em que foi imposta a estrutura de dados à presença de heterogeneidade de variância residual com número de número desigual de proles por reprodutor nos estratos, provocou superestimação dos componentes de variância. Porém mesmo havendo alteração na magnitude dos valores genéticos preditos para os reprodutores, a heterogeneidade de variância não alterou a classificação entre os reprodutores todas as correlações de ordem foram próximas à unidade. O efeito da heterogeneidade de variância, oriunda de fatores ambientais, ocasiona em maiores distorções sobre a avaliação genética animal, em relação, quando a mesma é proveniente de causas genéticas. A conexidade genética entre diferentes ambientes, dilui o efeito da heterogeneidade de variância, tanto de origem genética, quanto ambiental, na predição de valores genéticos dos reprodutores.
Resumo:
Topographical surfaces can be represented with a good degree of accuracy by means of maps. However these are not always the best tools for the understanding of more complex reliefs. In this sense, the greatest contribution of this work is to specify and to implement the architecture of an opensource software system capable of representing TIN (Triangular Irregular Network) based digital terrain models. The system implementation follows the object oriented programming and generic paradigms enabling the integration of various opensource tools such as GDAL, OGR, OpenGL, OpenSceneGraph and Qt. Furthermore, the representation core of the system has the ability to work with multiple topological data structures from which can be extracted, in constant time, all the connectivity relations between the entities vertices, edges and faces existing in a planar triangulation what helps enormously the implementation for real time applications. This is an important capability, for example, in the use of laser survey data (Lidar, ALS, TLS), allowing for the generation of triangular mesh models in the order of millions of points.
Resumo:
With the Big Data development and the growth of cloud computing and Internet of Things, data centers have been multiplying in Brazil and the rest of the world. Designing and running this sites in an efficient way has become a necessary challenge and to do so, it's essential a better understanding of its infrastructure. Thus, this paper presents a bibliography study using technical concepts in order to understand the specific needs related to this environment and the best forms address them. It discusses the data center infrastructure main systems, methods to improve their energy efficiency and their future trends