21 |
[en] AUTOMATIC GENERATION OF USER INTERFACE TEST SUITES SPECIFIED BY USE CASES / [pt] GERAÇÃO AUTOMÁTICA DE SUÍTES DE TESTE DA INTERFACE COM USUÁRIO A PARTIR DE CASOS DE USOEDUARDO DE OLIVEIRA FERREIRA 06 August 2014 (has links)
[pt] Espera-se que o desenvolvimento de suítes de teste a partir de modelos possa contribuir substancialmente para a redução do esforço humano e aumentar a eficácia dos testes gerados. Entende-se por eficácia (ideal) dos testes o percentual de defeitos existentes encontrados a partir desses testes. Uma grande parte dessas técnicas baseia-se em máquinas de estado e quase sempre estão voltadas para o teste de funcionalidade. Entretanto, existe a necessidade de se poder testar sistemas altamente interativos, tais como smartphones e tablets, a partir de uma descrição de sua interface humano-computador. O objetivo da dissertação é efetuar uma primeira avaliação de uma técnica voltada para a geração de suítes de
teste visando o teste de interfaces gráficas. Para tal,desenvolvemos e avaliamos a eficácia de uma ferramenta, chamada Easy, que utiliza casos de uso tabulares e máquina de estados para a geração automática da suíte de testes. Os casos de uso são descritos em linguagem natural restrita. A partir dessa descrição, a ferramenta constrói uma máquina de estado e, a seguir, a utiliza para gerar cenários. Por
construção os cenários estarão em conformidade com os casos de uso. Cada cenário corresponde a um caso de teste. Os cenários são apresentados ao usuário em linguagem natural restrita, permitindo a visualização destes antes da geração dos scripts finais de testes. Os scripts gerados são destinados a uma ferramenta de execução automatizada voltada para o teste de interfaces gráficas. Neste trabalho, utilizou-se a ferramenta UI Automation, responsável pela execução de testes em aplicações destinadas ao iOS, sistema operacional de iPhone, iPad e iPod Touch. A eficácia do processo foi avaliada em uma aplicação real, disponível na loja virtual de aplicativos App Store. Além disso, foram realizados testes de IHC afim
de avaliar a influência no custo da produção da suíte de teste. / [en] It is expected that the development of test suites from models can contribute substantially to reducing the human effort and to increase the effectiveness of the generated tests. Means for tests’ effectiveness (ideal) the percentage of existing defects found by these tests. Most of these techniques is based on state machines and mostly directed to testing the functionality. However, there is a need to be able to test highly interactive systems, such as smartphones and tablets, from a description of its human computer interface. The goal of the dissertation is to make a first evaluation of a technique aimed to generate test suites for test of human computer graphic interface. For this purpose was developed and evaluated its effectiveness, a tool called Easy, using use cases tabular and state machine for the automatic generation of the suite tests. The use cases are described in natural language restricted. From this description, the tool builds a state machine, and then uses this to generate scenarios. By construction scenarios will be in accordance with the use cases. Each scenario corresponds to a test case. The scenarios are presented to the user in natural language, allowing the visualization of them before the generation of the final scripts tests. The generated scripts are intended to a running automated tool geared to testing graphical interfaces. In this work, we used the UI Automation tool, responsible for running tests on applications for the iOS, operational system for iPhones, iPads and iPod touchs. The effectiveness of the procedure was evaluated in a real application, available in the online store applications App Store. In addition, HCI tests were performed in order to evaluate the influence on the cost of production of the test suite.
|
22 |
[en] A MODELING LANGUAGE FOR AGENT BASED SYSTEMS / [pt] UMA LINGUAGEM DE MODELAGEM PARA SISTEMAS BASEADOS EM AGENTESRICARDO CHOREN NOYA 20 August 2004 (has links)
[pt] A tecnologia de agentes tem ganho destaque, tanto na
academia quanto na
indústria, no que se refere ao desenvolvimento de sistemas
distribuídos.
Linguagens de modelagem e processos de desenvolvimento
foram criados para
documentar e formalizar o desenvolvimento de sistemas
baseados em agentes.
Entretanto, as linguagens de modelagem existentes ou se
baseiam em noções de
uma tecnologia de desenvolvimento anterior (orientação a
objetos) ou não
possuem artefatos (modelos) que denotam as características
de agência existentes
no sistema. Esta tese propõe uma linguagem de modelagem
para sistemas
baseados em agentes, a LM-SMA, que gera artefatos (modelos)
que mostram a
modelagem de aspectos de agência, tais como adaptação,
aprendizado, interação e
autonomia. A LM-SMA ainda possui artefatos que permitem a
modelagem da
parte do sistema que não é composta por agentes, por meio
de ontologias. / [en] The agent technology is gaining acceptance, both in academy
and industry,
with regards to distributed systems development. Modeling
languages and
development processes were created to formalize the
development of agent based
systems. Nevertheless, existing modeling languages are
either based on previous
development methods (object oriented) or they do not have
artifacts (models) that
show the agency characteristics that exist in a system.
This thesis proposes a
modeling language, for agent based systems, that generates
artifacts that model
agency aspects, such as adaptation, learning, interaction
and autonomy. The
language has artifacts that allow the modeling of the non-
agent part of an agent
based system, using ontology.
|
23 |
[en] A COMPLIANCE AND RISK-BASED SOFTWARE DEVELOPMENT PROCESS ASSESSMENT APPROACH / [pt] UMA ABORDAGEM PARA A AVALIAÇÃO DE PROCESSOS DE DESENVOLVIMENTO DE SOFTWARE BASEADA EM RISCO E CONFORMIDADERAFAEL DE SOUZA LIMA ESPINHA 30 July 2007 (has links)
[pt] Atualmente, um dos principais requisitos de um projeto de
desenvolvimento
de software é a entrega de um produto de qualidade que
obedeça ao prazo e
orçamento estipulados e atenda às necessidades do cliente.
Utilizando a premissa
de que a qualidade do produto desenvolvido está
intimamente relacionada à
qualidade dos processos utilizados no seu desenvolvimento,
muitas organizações
investem em programas de melhoria contínua de processos,
onde estes processos
são constantemente avaliados e melhorados. Este trabalho
propõe uma abordagem
para a avaliação de processos baseada em análise do risco
e da conformidade em
processos de desenvolvimento. Esta abordagem é constituída
por um método de
avaliação em duas etapas e por uma ferramenta de apoio. Na
primeira fase do
método, uma avaliação em abrangência é realizada para
identificar em que áreas
se encontram os maiores problemas nos processos. Na
segunda fase, uma
avaliação mais elaborada e criteriosa é realizada apenas
nas áreas críticas,
diminuindo o custo e aumentando a eficiência do
investimento em melhoria. A
ferramenta utiliza um mecanismo de questionários e
checklists para verificar o
risco e a conformidade dos processos da organização. Estes
questionários e
checklists estão associados a uma base de conhecimento
organizada segundo um
modelo de maturidade ou norma de qualidade de referência.
Ao final de uma
avaliação são gerados relatórios, tabelas e gráficos que
apóiam a tomada de
decisão e orientam a elaboração de um plano de ação para a
melhoria dos
processos. A abordagem foi utilizada em três experimentos
controlados. / [en] Nowadays, one of the main requirements of a software
development project
is the delivery of a quality product that conforms to the
expected schedule and
budget and satisfies customer needs. Using the hypothesis
that the quality of the
developed product is closely related to the quality of the
processes used in its
development, many organizations invest in process
improvement programs, where
the processes are continuously assessed and improved. In
this work we propose an
approach for process assessment based on risk and process
compliance analysis.
This approach is composed of a two-step appraisal method
and a supporting tool.
In the first step of the method, a quick analysis is
executed to identify the most
problematic areas. In the second one, a more elaborated
analysis is performed
only in the critical areas, reducing the costs and
increasing the effectiveness of the
appraisal. The tool uses a mechanism of surveys and
checklists to verify the risk
and the compliance of the process of the organization. A
knowledge base is
organized in accordance to a reference quality norm or
maturity model. At the end
of an assessment, reports, tables and charts support the
decision-taking, and they
can be used to guide an improvement program. The approach
has been used in
three case studies.
|
24 |
[en] INTRODUCING A VARIABILITY INTO DEVELOPMENT OF MULTI-AGENT SYSTEMS / [pt] INTRODUZINDO VARIABILIDADE NO DESENVOLVIMENTO DE SISTEMAS MULTI-AGENTESGUILHERME NASCIMENTO PATE SANTOS 22 August 2007 (has links)
[pt] As linguagens de modelagem de agentes visam representar o
sistema e
seus agentes através de diagramas, os quais permitem
explicitar seus objetivos,
planos e ações. Mesmo as linguagens fornecendo todos esses
mecanismos de
representação, alguns sistemas ainda não podem ser
expressos de maneira ideal,
pois tais linguagens visam representar sistemas inteiros e
não uma linha de
produção com várias instâncias. O método proposto visa num
primeiro
momento determinar o mapeamento dos pontos de
flexibilização em agentes de
software. Planos e ações podem ser flexibilizados por
apresentarem
características de variabilidade. A variabilidade pode ser
interpretada de duas
formas: a variabilidade de planos que possibilita que um
agente tenha vários
planos distintos, acarretando aplicações distintas em
função do seu plano; e a
variabilidade de ações que possibilita que ações sejam
executadas de maneiras
distintas o que também acarreta aplicações distintas. Com
isso podem ser
observadas ações e planos abstratos que serão herdados por
outras ações e
planos concretos e que definirão uma instância para novas
aplicações. Para isto
o método proposto utiliza diagramas, tags e documentação
para guiar a
instanciação dos planos e ações. Esses agentes gerarão
instâncias de aplicações
devido seus planos e ações os quais determinam uma linha
de produto de
software e conseqüentemente a idéia de framework. Esta
abordagem traz para o
mundo dos agentes as vantagens observadas com o uso destas
técnicas em
orientação a objeto. Além disso, as linguagens atuais
poderão utilizar
concomitantemente tal método. Os benefícios da solução
serão apresentados
através de estudos de caso. / [en] The current agents´ modeling languages aim at representing
the system
and theirs agents in a clear way by diagrams, which permit
shows theirs goals,
plans and actions. Even with all provided by the language,
some systems can´t
be represented a correct form yet, because the current
agents´ modeling
languages represent only a whole system and not a product
line. In this way the
method proposed tries to determine a mapping of the
flexibility points into
software agents. The flexibility points into agents are
defined to theirs plans and
actions. Such points can be flexible if show a variability
characteristic. The
variability is presented by two points of view: the
variability of plans and
variability of action, where the variability of plans can
enable many distinct
plan for an agent, in other words, accept distinct
applications for each one of
theirs plans; and the variability of actions that enable
the actions are executed in
distinct form that result in distinct applications. With
that, we can see an
abstract actions and abstract plans will be inherited by
the concrete actions and
concrete plans, and that in the future will define new
applications. For this the
method uses the diagrams, tags and documentation. The
documentation is used
like a guide in a plan instance and action instance.
After, these agents can
generate the instance of new applications by yours owner
plans and actions
that´s determine the software product line and
consequently it is possible to use
the framework idea. With this approach it is possible to
introduce into agent
world all the advantage of frameworks and product lines,
techniques that are
traditionally used in object orientation. Moreover, the
approach can be used
concomitantly with current agents´ modeling languages. The
benefits of the
approach will be shown in more details through a case
study.
|
25 |
[en] CONTEXT-AWARE APPLICATION DEVELOPMENT USING MULTI-AGENT SYSTEMS / [pt] DESENVOLVIMENTO DE APLICAÇÕES SENSÍVEIS AO CONTEXTO USANDO SISTEMAS MULTI-AGENTESREGIANE LIMA DE SOUSA 06 May 2008 (has links)
[pt] O desenvolvimento de aplicações sensíveis ao contexto
(ASCs) constitui-se como uma tarefa não-trivial em
conseqüência das características relacionadas à
sensibilidade ao contexto, como abertura, comunicação
assíncrona e falta de mecanismos modulares na propagação de
informações de contexto. Por outro
lado, um paradigma de desenvolvimento de software é
considerado uma ferramenta básica para a construção de
sistemas de software. Particularmente, a
Engenharia de Software para Sistemas Multi-Agentes (ESSMA)
tem se apresentado como paradigma promissor para o
desenvolvimento de aplicações distribuídas, abertas e
extensíveis. Agentes de software são elementos cuja
execução leva ao alcance dos objetivos de um sistema
através de suas propriedades de interação, adaptação e
autonomia. Partindo destas características,
é possível propor soluções para o desenvolvimento de ASCs
que facilitem a satisfação dos requisitos mencionados
acima. Este trabalho tem dois objetivos
principais: (1) apresentar estudos de caso envolvendo o uso
de ESSMA no desenvolvimento de ASCs e (2) propor um
framework como ferramenta de reuso de sensibilidade ao
contexto nas aplicações. A avaliação dos estudos e da
proposta do framework é utilizada para a demonstração da
usabilidade de ESSMA em ASCs. A avaliação dos estudos é
efetuada através da generalização de resultados, além da
aplicação de métricas com foco em atributos, como a
modularidade. / [en] The development of context-aware applications (CAAs) is not
a trivial task due to their intrinsic features, such as
openness, asynchrony communication, and the lack of modular
abstractions and mechanisms for the propagation of context
information. On the other hand, a software development
paradigm is actually considered a basic tool for the
construction of any software system. In particular,
the Software Engineering for Multi-Agent Systems (SEMAS) is
often introduced as a promising paradigm for the
development of distributed, open, and extensible
applications. Software agents are elements whose execution
leads to the reach of the system`s goals, through their
interaction, adaptation, and autonomy properties.
From the agent properties, it becomes possible to provide
solutions for the development of CAAs in order to
facilitate the satisfaction of the common
requirements mentioned above. This work has two main
purposes: (1) the development of case studies involving the
use of SEMAS for three CAA-specific applications; (2)
propose a framework to support the reuse of context-
awareness features in the CAAs. The evaluation of the case
studies and of the framework is used for the demonstration
of SEMAS usability in the CAA-specific domain. Some
evidences about the generality of the results are also
provided, beyond the quantitative measurements based on
common quality attributes, such as the modularity.
|
26 |
[en] A QUANTITATIVE APPROACH TO ASPECT ORIENTED SOFTWARE DEVELOPMENT / [pt] UMA ABORDAGEM QUANTITATIVA PARA DESENVOLVIMENTO DE SOFTWARE ORIENTADO A ASPECTOSEDUARDO MAGNO LAGES FIGUEIREDO 05 July 2006 (has links)
[pt] O desenvolvimento de software orientado a aspectos é um
paradigma
recente que introduz novas abstrações e mecanismos com o
objetivo de melhorar a
modularidade de interesses que se espalham pelo sistema.
Entretanto, a satisfação
de atributos de qualidade em sistemas orientados a
aspectos não é tarefa simples e
a utilização equivocada destas novas abstrações pode
resultar em efeitos colaterais
relacionados a princípios importantes da Engenharia de
Software, tais como
elevado acoplamento, baixa coesão dos módulos e incompleta
modularidade dos
interesses em aspectos. Problemas como estes não são
facilmente verificáveis em
sistemas de médio e grande porte sem um método adequado e,
geralmente,
consomem muito tempo e recursos. Portanto, torna-se
necessário um método de
avaliação que auxilie engenheiros de software na análise
de sistemas orientados a
aspectos. Este trabalho de mestrado propõe uma abordagem
que provê suporte à
avaliação quantitativa de implementações orientadas a
aspectos. A abordagem
incluiu: (i) um método de avaliação organizado em etapas,
e (ii) uma ferramenta
de medição e avaliação, chamada AJATO, que dá suporte ao
método proposto. O
método é composto por um conjunto de métricas e regras
heurísticas. As métricas
fornecem informações quantitativas e as heurísticas
contribuem com algum
raciocínio semântico dos números. A ferramenta AJATO é
composta por quatro
módulos que efetuam o parser do código, mapeamento de
estruturas sintáticas em
interesses, medição e avaliação heurística. Um conjunto de
cinco estudos de caso
envolvendo domínios de aplicação distintos foi realizado
para avaliar a utilidade e
usabilidade da abordagem proposta. / [en] Aspect-oriented software development is an emerging
paradigm that
provides new abstractions and mechanisms to support the
modularization of
crosscutting concerns through the software development
lifecycle. However, the
achievement of high-quality aspect-oriented software is
not trivial. The
inappropriate use of aspect-oriented abstractions and
mechanisms potentially
leads to the violation of important design principles,
such as low coupling, high
cohesion, incomplete modularization of crosscutting
concerns into aspects, and so
forth. These problems are not easily detectable and an ad
hoc analysis of large
designs and implementations is often expensive and time-
consuming. Hence there
is a need for an assessment method that assists software
engineers in the analysis
of their aspect-oriented implementations. This work
proposes the development of
a systematic approach to support the quantitative
assessment of aspect-oriented
software. The approach is organized in a stepwise fashion
and is founded on a
metrics suite and a comprehensive set of complementary
rules. Our proposal is
supported by a measurement and assessment tool. A set of
five case studies from
different application domains have been carried out in
order to evaluate the
usability and usefulness of our proposed approach.
|
27 |
[en] LAWML: A LANGUAGE FOR MODELING INTERACTION LAWS IN OPEN MULTI-AGENT SYSTEMS / [pt] LAWML: UMA LINGUAGEM PARA A MODELAGEM DE LEIS DE INTERAÇÃO EM SISTEMAS MULTI-AGENTES ABERTOSRICARDO AUGUSTO RODRIGUES GRALHOZ 13 May 2008 (has links)
[pt] O paradigma de agentes surgiu visando atender à necessidade
de novas abstrações para o desenvolvimento de sistemas
complexos e distribuídos. Para lidar com a mprevisibilidade
do comportamento dos sistemas multi-agentes abertos, que
são sistemas concorrentes e assíncronos formados por
diversos agentes que agem com certo grau de autonomia e que
podem interagir entre si para alcançar objetivos
individuais, são usados mecanismos de governança na
regulação das interações. Na maioria das abordagens
existentes, a especificação das regras de governança é
feita com o uso de linguagens declarativas ou de novas
representações gráficas, o que pode tornar custosa essa
tarefa e dificultar o uso desses mecanismos de governança.
Esta dissertação apresenta a LawML, uma linguagem de
modelagem baseada em UML para a especificação das regras de
interação entre os agentes, com o objetivo de facilitar a
tarefa de modelagem e, portanto, facilitar o uso de um
mecanismo específico de governança baseado em leis de
interação. Um conjunto de regras de transformação é
apresentado junto com a linguagem, para permitir que os
modelos gráficos de lei de interação sejam transformados em
código no formato XMLaw - a linguagem declarativa do
mecanismo de governança. Baseada nessas regras de
transformação, é apresentada a ferramenta LawGenerator de
transformação automática dos modelos de lei, para permitir
o desenvolvimento das leis de interação com o foco nos
modelos. E, por fim, esta abordagem é aplicada em um estudo
baseado em um caso real de sistema distribuído com as
características de um sistema multi-agente aberto - o SELIC,
do Banco Central do Brasil. / [en] The paradigm of agents appeared while aiming to satisfy the
need for new abstractions for the development of complex
and distributed systems. To manage with the unpredictable
behavior of open multi-agent systems, governance
mechanisms are used in the regulation of interactions
between agents. This is due to the concurrent and
asynchronous characteristics of these systems, which are
formed by several agents who can act autonomically and can
interact with each other to reach individual goals. In the
majority of approaches, the governance rules are specified
with declarative languages or new graphical
representations, which can make this task costly and can
make the use of these governance mechanisms
difficult. This essay presents the LawML, a modeling
language based on UML for the specification of rules for
interactions between agents, which is aimed to
facilitate the modeling task and, therefore, to facilitate
the use of a specific governance mechanism based on
interaction laws. A set of transformation rules is
presented in addition to the language to allow the
graphical interaction law models to be transformed into the
declarative language of the governance mechanism, the
XMLaw format code. To allow the model-driven development of
interaction laws, it is presented the LawGenerator, a tool
for the automatic transformation of the law model, based on
these transformation rules. Finally, this approach is
applied to a case study based on a real distributed system,
the Brazilian Central Bank SELIC system, with the
characteristics of an open multi-agent system.
|
28 |
[en] FROM OBJECTS TO AGENTS: AN ASPECT ORIENTED APPROACH / [pt] OBJETOS E AGENTES: UMA ABORDAGEM ORIENTADA A ASPECTOSALESSANDRO FABRICIO GARCIA 13 July 2004 (has links)
[pt] Agentes de software incorporam várias propriedades
específicas, como
autonomia, adaptação, interação, aprendizagem e mobilidade.
A inclusão dessas
propriedades de agência é uma das maiores fontes de
complexidade na construção de
sistemas multiagentes. Dificilmente elas são modularizadas
com abstrações e
mecanismos da engenharia de software orientada a objetos. À
medida que a
complexidade da arquitetura interna dos agentes aumenta,
essas propriedades tendem a
se espalhar através dos vários módulos ou objetos do
sistema. O espalhamento é
observado desde fases preliminares de desenvolvimento, como
a fase de definição
arquitetural. O uso de abstrações e mecanismos existentes
conduz ao projeto e à
implementação de sistemas multiagentes que são difíceis de
manter e reutilizar.
Este trabalho apresenta uma abordagem orientada a aspectos
para o
desenvolvimento de sistemas baseados em agentes. A
abordagem provê suporte para
modularização e composição das propriedades de agência por
meio de abstrações e
mecanismos do paradigma orientado a aspectos. Além disso,
tais propriedades são
incorporadas de forma transparente à funcionalidade básica
do sistema de software,
desde a fase de definição arquitetural. A abordagem
compreende três componentes: (i)
um método arquitetural, (ii) uma linguagem de padrões e
(iii) um framework para
avaliação quantitativa. O método e a linguagem apresentam
um conjunto de soluções
orientadas a aspectos para a definição arquitetural,
projeto e implementação de agentes
de software. O framework define um conjunto de métricas e
um modelo de qualidade
que permite a avaliação empírica da nossa abordagem em
termos de reusabilidade e
manutenibilidade. Estudos experimentais qualitativos e
quantitativos foram realizados
para avaliar nossa proposta em diferentes domínios de
aplicação. Os resultados
empíricos concluíram que nossa abordagem permite a
construção de sistemas baseados
em agentes com modularização superior, menor acomplamento,
menos linhas de código
e menor complexidade interna dos componentes. / [en] Software engineers of Multi-Agent Systems (MASs) are faced
with different
concerns (properties), such as autonomy, adaptation,
interaction, collaboration, learning,
and mobility. Many of these agent concerns cannot be
modularized based only on
object-oriented abstractions. MAS developers however have
relied mostly on objectoriented
design techniques and on object-oriented programming
languages, such as
Java. As the agent complexity increases, the agent concerns
tend to spread across
several system components at the architectural, design and
implementation levels. It
often leads to a poor separation of agent concerns in the
software system, and in turn to
the production of MASs that are difficult to maintain and
reuse.
This thesis presents an innovative aspect-oriented approach
for the seamless
integration of agents into object-oriented software
engineering from the architectural
stage to the implementation stage. Aspect is the
abstraction used to modularize agent
concerns that crosscut several system components. The
proposed approach encourages
the separate handling of agent properties, and provides a
disciplined scheme for their
composition. The approach is composed of an architectural
method, a pattern language,
and an assessment framework. The architectural method and
the pattern language
provide aspect-oriented solutions for modularizing the
agent concerns at different stages
of design and implementation. The purpose of the assessment
framework is to support
the evaluation of the reusability and maintainability of
aspect-oriented solutions based
on a metrics suite and a quality model. Experimental
studies in different application
domains have been conducted to assess the proposed approach
based on qualitative and
quantitative criteria. The use of the aspect-oriented
solutions resulted in fewer lines of
code, fewer design and implementation components, lower
internal complexity of
system components, and lower coupling.
|
29 |
[en] ANNCOM: ARTIFICIAL NEURAL NETWORK LIBRARY FOR HIGH PERFORMANCE COMPUTING USING GRAPHIC CARDS / [pt] ANNCOM: BIBLIOTECA DE REDES NEURAIS ARTIFICIAIS PARA ALTO DESEMPENHO UTILIZANDO PLACAS DE VÍDEODANIEL SALLES CHEVITARESE 24 May 2019 (has links)
[pt] As Redes Neurais Artificiais têm sido utilizadas com bastante sucesso em problemas de previsão, inferência e classificação de padrões. Por essa razão, já se encontram disponíveis diversas bibliotecas que facilitam a modelagem e o treinamento de redes, tais como o NNtool do Matlab ou o WEKA. Embora essas bibliotecas
sejam muito utilizadas, elas possuem limitações quanto à mobilidade, à flexibilidade e ao desempenho. Essa última limitação é devida, principalmente, ao treinamento que pode exigir muito tempo quando existe uma grande quantidade de dados com muitos atributos. O presente trabalho propõe o desenvolvimento de
uma biblioteca (ANNCOM) de fácil utilização, flexível, multiplataforma e que utiliza a arquitetura CUDA (Compute Unified Device Architecture) para reduzir os tempos de treinamento das redes. Essa arquitetura é uma forma de GPGPU (General-Purpose computing on Graphics Processing Units) e tem sido utilizada
como uma solução em computação paralela na área de alto desempenho, uma vez que a tecnologia utilizada nos processadores atuais está chegando ao limite de velocidade. Adicionalmente, foi criada uma ferramenta gráfica que auxilia o desenvolvimento de soluções aplicando as técnicas de redes neurais de forma fácil e clara usando a biblioteca desenvolvida. Para avaliação de desempenho da ANNCOM, foram realizados seis treinamentos para classificação de clientes de baixa tensão de uma distribuidora de energia elétrica. O treinamento das redes, utilizando a ANNCOM com a tecnologia CUDA, alcançou um desempenho quase 30 vezes maior do que a ANNCOM auxiliada pela MKL (Math Kernel Library) da Intel, também utilizada pelo Matlab. / [en] The Artificial Neural Networks have been used quite successfully in problems of prediction, inference and classification standards. For this reason, are already available several libraries that facilitate the modeling and training networks, such as NNtool Matlab or WEKA. While these libraries are widely used, they
have limited mobility, flexibility and performance. This limitation is due mainly to the training that can take a long time when there is a large amount of data with many attributes. This paper proposes the development of a library (ANNCOM) easy to use, flexible platform and architecture that uses the CUDA (Compute Unified Device Architecture) to reduce the training times of the networks. This architecture is a form of GPGPU (GeneralPurpose computing on Graphics Processing Units) and has been used as a solution in parallel computing in the area of high performance, since the technology used in current processors are reaching the limit of speed. Additionally created a graphical tool that helps the development of solutions using the techniques of neural networks easily and clearly using the library developed. For performance evaluation ANNCOM were conducted six trainings for customer classification of a low voltage electricity distribution. The training of networks using ANNCOM with CUDA technology, achieved a performance
nearly 30 times greater than the ANNCOM aided by MKL (Math Kernel Library) by Intel, also used by Matlab.
|
30 |
[en] SEMANTIC-BASED REPOSITORY OF AGENT COMPONENTS / [pt] REPOSITÓRIO DE AGENTES BASEADO EM SEMÂNTICAMERLIN PARRA JIMENEZ 23 January 2017 (has links)
[pt] A adoção de abordagems de desenvolvimento orientada a agentes de software traz inúmeros benefícios, tais como o suporte à análise, ao projeto e a implementação de sistemas de software. Postulamos que um ambiente de desenvolvimento robusto para a construção de sistemas orientados a agentes de software será reforçado por meio de métodos avançados de reuso. O reuso na engenharia de software leva à redução de custos e tempo envolvidos no desenvolvimento dos projetos. Além disso, promove melhorias relacionadas à adatação a diferentes exigências e necessidades dos engenheiros de software, melhorando qualidade dos sistemas desenvolvidos. No entanto, a pesquisa relacionada ao reuso de agentes ainda é escassa. Consequentemente, o problema da organização e do armazenamento de artefatos orientados a agentes ainda não atende as necessidades dos engenheiros de software. Portanto, o processo de recuperação de agentes ainda é um importante desafio a ser superado na engenharia de software orientada a agentes. Neste contexto, esta dissertação propõe uma metodologia e um protótipo de repositório baseado em tecnologias da web semântica que suportam estratégias de reuso, fundamentais ao processo de desenvolvimento de sistemas orientados a agentes. A metodologia proposta inclui (i) um meta-modelo flexível para representar os agentes e as suas características comuns e variáveis. Tais características são modeladas por meio de uma ontologia e um modelo de características (em inglês feature model), (ii) uma taxonomia específica de domínio para classificar os agentes de acordo com o seu domínio de aplicação, (iii) uma taxonomia para classificar os diferentes tipos de agentes, (iv) um serviço de subscrição (RSS) para anunciar a atualização dos agentes associados a categorias específicas, (v) um sistema de recomendação, apoiado por a ontologia e as taxonomias propostas, que permite aos usuários descobrir agentes reutilizáveis inter-relacionados, e (vi) métodos avançados de busca e navegação. Finalmente, avaliamos o repositório construído. O resultado da nossa avaliação mostra que o método proposto promove uma melhoria em relação à relevância da recuperação dos artefatos orientados a agentes. / [en] The adoption of a software agent-oriented development approach brings a number of benefits such as the support of analyses, design and implementation of software systems. We posit that a robust development environment for the construction of agent-oriented software systems will be enhanced by advanced reuse methods. Reuse in software engineering leads to the reduction of cost and time involved for developing projects, improvement of software quality, and easy adaptation to different requirements and needs of software engineers. However, research addressing agent reuse is meager and does not tackle the problem of organizing and storing agent-oriented artifacts according to the software engineers needs. Therefore, the agent retrieval process turns into an important challenge to be overcome in agent-oriented software engineering. In this context, this thesis proposes a methodology and a repository prototype based on semantic web technologies that supports reuse for developing agent systems. The proposed methodology includes (i) a flexible meta-model for representing the agents and their common and variable features, which are represented by means of ontology and feature model, (ii) a domain-specific taxonomy to classify agents according their application domain, (iii) a taxonomy to classify the different behaviors of agents, (iv) a subscription service, RSS, to announce updates to the agents that are associated to specific categories, (v) a recommendation system, supported by the ontology and the taxonomies, that allows end-users to discover reusable interrelated agents and learn new information or agents as needed, and (vi) enhanced search and browsing methods for agents. Finally, we evaluate the constructed repository. The outcome of this evaluation shows that the proposed reuse method is an improvement in terms of the relevance of retrieved agent-oriented artifacts.
|
Page generated in 0.0493 seconds