48 resultados para Application Programming Interface
Resumo:
Computational Intelligence (CI) includes four main areas: Evolutionary Computation (genetic algorithms and genetic programming), Swarm Intelligence, Fuzzy Systems and Neural Networks. This article shows how CI techniques overpass the strict limits of Artificial Intelligence field and can help solving real problems from distinct engineering areas: Mechanical, Computer Science and Electrical Engineering.
Resumo:
Nos últimos anos começaram a ser vulgares os computadores dotados de multiprocessadores e multi-cores. De modo a aproveitar eficientemente as novas características desse hardware começaram a surgir ferramentas para facilitar o desenvolvimento de software paralelo, através de linguagens e frameworks, adaptadas a diferentes linguagens. Com a grande difusão de redes de alta velocidade, tal como Gigabit Ethernet e a última geração de redes Wi-Fi, abre-se a oportunidade de, além de paralelizar o processamento entre processadores e cores, poder em simultâneo paralelizá-lo entre máquinas diferentes. Ao modelo que permite paralelizar processamento localmente e em simultâneo distribuí-lo para máquinas que também têm capacidade de o paralelizar, chamou-se “modelo paralelo distribuído”. Nesta dissertação foram analisadas técnicas e ferramentas utilizadas para fazer programação paralela e o trabalho que está feito dentro da área de programação paralela e distribuída. Tendo estes dois factores em consideração foi proposta uma framework que tenta aplicar a simplicidade da programação paralela ao conceito paralelo distribuído. A proposta baseia-se na disponibilização de uma framework em Java com uma interface de programação simples, de fácil aprendizagem e legibilidade que, de forma transparente, é capaz de paralelizar e distribuir o processamento. Apesar de simples, existiu um esforço para a tornar configurável de forma a adaptar-se ao máximo de situações possível. Nesta dissertação serão exploradas especialmente as questões relativas à execução e distribuição de trabalho, e a forma como o código é enviado de forma automática pela rede, para outros nós cooperantes, evitando assim a instalação manual das aplicações em todos os nós da rede. Para confirmar a validade deste conceito e das ideias defendidas nesta dissertação foi implementada esta framework à qual se chamou DPF4j (Distributed Parallel Framework for JAVA) e foram feitos testes e retiradas métricas para verificar a existência de ganhos de performance em relação às soluções já existentes.
Resumo:
This paper presents the design of a user interface for repositories of learning objects. It integrates several tasks, such as submission, browse, search, and comment/review of learning objects, on a single screen layout. This design is being implemented on the web front-end of crimsonHex, a repository of specialized learning objects, developed as part of the EduJudge, a European project that aims to bring automatic evaluation of programming problems to eLearning systems.
Resumo:
This work is a contribution to the e-Framework, arguably the most prominent e-learning framework today, and consists of the definition of a service for the automatic evaluation of programming exercises. This evaluation domain differs from trivial evaluations modelled by languages such as the IMS Question & Test Interoperability (QTI) specification. Complex evaluation domains justify the development of specialized evaluators that participate in several business processes. These business processes can combine other type of systems such as Programming Contest Management Systems, Learning Management Systems, Integrated Development Environments and Learning Object Repositories where programming exercises are stored as Learning Objects. This contribution describes the implementation approaches used, more precisely, behaviours & requests, use & interactions, applicable standards, interface definition and usage scenarios.
Resumo:
Esta dissertação enquadra-se no âmbito dos Sistemas de Informação, em concreto, no desenvolvimento de aplicações Web, como é o caso de um website. Com a utilização em larga escala dos meios tecnológicos tem-se verificado um crescimento exponencial dos mesmos, o que se traduz na facilidade com que podem ser encontradas na Internet diversos tipos de plataformas informáticas. Além disso, hoje em dia, uma grande parte das organizações possui o seu próprio sítio na Internet, onde procede à divulgação dos seus serviços e/ou produtos. Pretende-se com esta dissertação explorar estas novas tecnologias, nomeadamente, os diagramas UML - Unified Modeling Language e a concepção de bases de dados, e posteriormente desenvolver um website. Com o desenvolvimento deste website não se propõe a criação de uma nova tecnologia, mas o uso de diversas tecnologias em conjunto com recurso às ferramentas UML. Este encontra-se organizado em três fases principais: análise de requisitos, implementação e desenho das interfaces. Na análise de requisitos efectuou-se o levantamento dos objectivos propostos para o sistema e das necessidades/requisitos necessários à sua implementação, auxiliado essencialmente pelo Diagrama de Use Cases do sistema. Na fase de implementação foram elaborados os arquivos e directórios que formam a arquitectura lógica de acordo com os modelos descritos no Diagrama de Classes e no Diagrama de Entidade-Relação. Os requisitos identificados foram analisados e usados na composição das interfaces e sistema de navegação. Por fim, na fase de desenho das interfaces foram aperfeiçoadas as interfaces desenvolvidas, com base no conceito artístico e criativo do autor. Este aperfeiçoamento vai de encontro ao gosto pessoal e tem como objectivo elaborar uma interface que possa também agradar ao maior número possível de utilizadores. Este pode ser observado na maneira como se encontram distribuídas as ligações (links) entre páginas, nos títulos, nos cabeçalhos, nas cores e animações e no seu design em geral. Para o desenvolvimento do website foram utilizadas diferentes linguagens de programação, nomeadamente a HyperText Markup Language (HTML), a Page Hypertext Preprocessor (PHP) e Javascript. A HTML foi utilizada para a disposição de todo o conteúdo visível das páginas e para definição do layout das mesmas e a PHP para executar pequenos scripts que permitem interagir com as diferentes funcionalidades do site. A linguagem Javascript foi usada para definir o design das páginas e incluir alguns efeitos visuais nas mesmas. Para a construção das páginas que compõem o website foi utilizado o software Macromedia Dreamweaver, o que simplificou a sua implementação pela facilidade com que estas podem ser construídas. Para interacção com o sistema de gestão da base de dados, o MySQL, foi utilizada a aplicação phpMyAdmin, que simplifica o acesso à base de dados, permitindo definir, manipular e consultar os seus dados.
Resumo:
Generally, the evolution process of applications has impact on their underlining data models, thus becoming a time-consuming problem for programmers and database administrators. In this paper we address this problem within an aspect-oriented approach, which is based on a meta-model for orthogonal persistent programming systems. Applying reflection techniques, our meta-model aims to be simpler than its competitors. Furthermore, it enables database multi-version schemas. We also discuss two case studies in order to demonstrate the advantages of our approach.
Resumo:
We consider an optimal control problem with a deterministic finite horizon and state variable dynamics given by a Markov-switching jump–diffusion stochastic differential equation. Our main results extend the dynamic programming technique to this larger family of stochastic optimal control problems. More specifically, we provide a detailed proof of Bellman’s optimality principle (or dynamic programming principle) and obtain the corresponding Hamilton–Jacobi–Belman equation, which turns out to be a partial integro-differential equation due to the extra terms arising from the Lévy process and the Markov process. As an application of our results, we study a finite horizon consumption– investment problem for a jump–diffusion financial market consisting of one risk-free asset and one risky asset whose coefficients are assumed to depend on the state of a continuous time finite state Markov process. We provide a detailed study of the optimal strategies for this problem, for the economically relevant families of power utilities and logarithmic utilities.
Resumo:
Composition is a practice of key importance in software engineering. When real-time applications are composed, it is necessary that their timing properties (such as meeting the deadlines) are guaranteed. The composition is performed by establishing an interface between the application and the physical platform. Such an interface typically contains information about the amount of computing capacity needed by the application. For multiprocessor platforms, the interface should also present information about the degree of parallelism. Several interface proposals have recently been put forward in various research works. However, those interfaces are either too complex to be handled or too pessimistic. In this paper we propose the generalized multiprocessor periodic resource model (GMPR) that is strictly superior to the MPR model without requiring a too detailed description. We then derive a method to compute the interface from the application specification. This method has been implemented in Matlab routines that are publicly available.
Resumo:
Mestrado em Engenharia Electrotécnica e de Computadores - Área de Especialização em Automação e Sistemas
Resumo:
A racionalização do consumo de energia elétrica é um tema que assume uma importância crescente nos dias de hoje. O elevado consumo de energia, principalmente a nível comercial/industrial, tem motivado o aparecimento de questões políticas, económico-sociais e ambientais que visam a sensibilização dos consumidores para a gestão eficiente dos seus recursos. Neste sentido, as empresas e instituições têm demonstrado interesse em encontrar soluções de gestão nas suas instalações elétricas que permitam a monitorização de indicadores e a previsão de falhas cuja ocorrência acarreta elevados custos de reparação/substituição, de paragem de produção, entre outros. O estudo aqui apresentado surge no âmbito de um projeto académico, cuja finalidade se prende com a implementação de um sistema de monitorização da qualidade e consumo de energia elétrica no Instituto Superior de Engenharia do Porto (ISEP). Baseado numa rede de dispositivos analisadores de parâmetros de energia elétrica, estes equipamentos de medição dispõem de software próprio, o GridVis, que permite o acesso remoto, através de uma rede Ethernet, aos parâmetros de energia (grandezas físicas elétricas). O sistema desenvolvido é capaz de identificar parâmetros de consumo de energia anómalos e emitir alertas, pré-programados em linguagem C++ e diagrama de blocos. Permite, por exemplo, detetar um consumo instantâneo excessivo de energia e alertar a sua ocorrência. As páginas de acesso aos parâmetros medidos por cada dispositivo são acessíveis através de uma interface gráfica desenvolvida em Adobe Flash que inclui, de uma forma simples e organizada, a informação relativa à distribuição dos dispositivos de medição. Num contexto de expansão deste projeto para outros edifícios do ISEP, a solução desenvolvida encontra-se preparada para ser adaptada em qualquer local, desde que reúna certos requisitos.
Resumo:
A methodology to increase the probability of delivering power to any load point through the identification of new investments in distribution network components is proposed in this paper. The method minimizes the investment cost as well as the cost of energy not supplied in the network. A DC optimization model based on mixed integer non-linear programming is developed considering the Pareto front technique in order to identify the adequate investments in distribution networks components which allow increasing the probability of delivering power for any customer in the distribution system at the minimum possible cost for the system operator, while minimizing the energy not supplied cost. Thus, a multi-objective problem is formulated. To illustrate the application of the proposed methodology, the paper includes a case study which considers a 180 bus distribution network
Resumo:
This paper presents a modified Particle Swarm Optimization (PSO) methodology to solve the problem of energy resources management with high penetration of distributed generation and Electric Vehicles (EVs) with gridable capability (V2G). The objective of the day-ahead scheduling problem in this work is to minimize operation costs, namely energy costs, regarding the management of these resources in the smart grid context. The modifications applied to the PSO aimed to improve its adequacy to solve the mentioned problem. The proposed Application Specific Modified Particle Swarm Optimization (ASMPSO) includes an intelligent mechanism to adjust velocity limits during the search process, as well as self-parameterization of PSO parameters making it more user-independent. It presents better robustness and convergence characteristics compared with the tested PSO variants as well as better constraint handling. This enables its use for addressing real world large-scale problems in much shorter times than the deterministic methods, providing system operators with adequate decision support and achieving efficient resource scheduling, even when a significant number of alternative scenarios should be considered. The paper includes two realistic case studies with different penetration of gridable vehicles (1000 and 2000). The proposed methodology is about 2600 times faster than Mixed-Integer Non-Linear Programming (MINLP) reference technique, reducing the time required from 25 h to 36 s for the scenario with 2000 vehicles, with about one percent of difference in the objective function cost value.
Resumo:
Poster presented in 12th European Conference on Wireless Sensor Network (EWSN 2015). 9 to 11, Feb, 2015. Porto, Portugal.
Resumo:
Teaching and learning computer programming is as challenging as difficult. Assessing the work of students and providing individualised feedback to all is time-consuming and error prone for teachers and frequently involves a time delay. The existent tools and specifications prove to be insufficient in complex evaluation domains where there is a greater need to practice. At the same time Massive Open Online Courses (MOOC) are appearing revealing a new way of learning, more dynamic and more accessible. However this new paradigm raises serious questions regarding the monitoring of student progress and its timely feedback. This paper provides a conceptual design model for a computer programming learning environment. This environment uses the portal interface design model gathering information from a network of services such as repositories and program evaluators. The design model includes also the integration with learning management systems, a central piece in the MOOC realm, endowing the model with characteristics such as scalability, collaboration and interoperability. This model is not limited to the domain of computer programming and can be adapted to any complex area that requires systematic evaluation with immediate feedback.
Resumo:
Esta dissertação tem como principal objetivo a criação de uma interface humana, baseada na eletromiografia dos músculos orbicular do olho e frontalis. O algoritmo de programação do microcontrolador ATmega2560 deteta o piscar de olhos voluntário, conta o número de vezes que este acontece e verifica se preenche os requisitos necessários à execução de um comando. Para este efeito foram utilizados elétrodos para a captação do sinal eletromiográfico. O sinal analógico é condicionado pela Shield ECG/EMG da Olimex sendo enviado para o arduíno ATmega2560. Este microcontrolador administra todos os atuadores, dos quais o mais importante é um painel de comandos (quatro comandos diferentes), no qual existe um ponteiro motorizado que indica qual a ação a realizar. O código de execução é extremamente simples: se o utilizador piscar os olhos três vezes, o ponteiro movimenta-se para a secção do painel imediatamente à direita; e se o utilizador piscar os olhos quatro vezes, o ponteiro movimenta-se para a secção do painel imediatamente à esquerda. Os testes realizados com este dispositivo indicam que os utilizadores demoram menos de 10 minutos a aprender a utilizar e executar todos os comandos do painel. Apenas num dos testes realizados o dispositivo não funcionou. Dos utilizadores que realizaram o teste: vários usam óculos; um idoso com graves problemas auditivos, cegueira parcial e dificuldades locomotoras; nenhum foi incapaz de piscar, pelo menos, um dos olhos voluntariamente; e a maioria referiu que, com alguma concentração e principalmente se ouvirem o bip sonoro, a aprendizagem de utilização torna-se muito fácil. Apesar dos limites impostos à concretização de um projeto deste tipo (dos quais se evidenciam as dificuldades em conseguir voluntários com paralisia medular, bem como os limites orçamentais), pode-se afirmar que este dispositivo é eficaz e seria uma mais valia quando implementado num cenário de paralisia medular (total ou parcial). A melhoria de qualidade de vida de um utilizador com estes problemas físicos, ou outros que lhe comprometam a locomoção é garantida. O cenário em que vivem é tremendamente limitado sendo urgente criar soluções para tornar estas vidas mais cómodas. Com os devidos aplicativos, o utilizador poderia abrir portas ou janelas, acender ou apagar luzes, pedir ajuda, ajustar a posição da cama, controlar cadeiras de rodas, entre outros. É neste sentido que surge a minha motivação de criar algo que ajude estas pessoas.