894 resultados para Algoritmos de minimização
Resumo:
Resumen basado en el de la publicación
Resumo:
La aparición de terminales de telefonía móvil cada vez más potentes abre un nuevo abanico de posibilidades en cuanto a usos y aplicaciones. Sin embargo, y dadas las limitaciones tanto de memoria como de CPU que tienen estos dispositivos, algunas de las aplicaciones potenciales resultan muy difíciles o incluso imposibles de llevar a la práctica. Este es el caso, por ejemplo, de aplicaciones de cálculo de rutas. En el contexto del proyecto Itiner@, un asistente para rutas turísticas completamente autónomo que debe funcionar incluso sin conexión a Internet, todos los procesos deben ejecutarse íntegramente de forma local en el dispositivo móvil. Dado que es un proyecto orientado al ocio, es importante que la experiencia del usuario sea satisfactoria, por lo que además de poder ejecutar el algoritmo de cálculo de rutas, el sistema debe hacerlo de forma rápida. En este sentido, los algoritmos recursivos habituales son demasiado costosos o lentos para su uso en Itiner@ y ha sido necesario reinventar este tipo de algoritmos en función de las limitaciones que tienen estos dispositivos. En el presente trabajo se presenta el proceso seguido y las dificultades encontradas para implementar un algoritmo recursivo de cálculo de rutas que se ejecute íntegramente en un dispositivo móvil Android de forma eficiente. Así, finalmente se llega a un algoritmo recursivo de cálculo de rutas para dispositivos móviles que se ejecuta de forma más eficiente frente a algoritmos directamente portados a dispositivos móviles. La principal contribución del trabajo es doble: por un lado ofrece algunas guías útiles al desarrollo de algoritmos más eficientes para dispositivos móviles; y por el otro, muestra un algoritmo de cálculo de rutas que funciona con un tiempo de respuesta aceptable, en un entorno exigente, como es el de las aplicaciones de turismo en móviles
Resumo:
A equação de complexidade de um algoritmo pode ser expressa em termos de uma equação de recorrência. A partir destas equações obtém-se uma expressão assintótica para a complexidade, provada por indução. Neste trabalho, propõem-se um esquema de solução de equações de recorrência usando equações características que são resolvidas através de um "software" de computação simbólica, resultando em uma expressão algébrica exata para a complexidade. O objetivo é obter uma forma geral de calcular a complexidade de um algoritmo desenvolvido pelo método Divisão-e-Conquista.
Resumo:
Este trabalho apresenta novos algoritmos para o roteamento de circuitos integrados, e discute sua aplicação em sistemas de síntese de leiaute. As interconexões têm grande impacto no desempenho de circuitos em tecnologias recentes, e os algoritmos propostos visam conferir maior controle sobre sua qualidade, e maior convergência na tarefa de encontrar uma solução aceitável. De todos os problemas de roteamento, dois são de especial importância: roteamento de redes uma a uma com algoritmos de pesquisa de caminhos, e o chamado roteamento de área. Para o primeiro, procura-se desenvolver um algoritmo de pesquisa de caminhos bidirecional e heurístico mais eficiente, LCS*, cuja aplicação em roteamento explora situações específicas que ocorrem neste domínio. Demonstra-se que o modelo de custo influencia fortemente o esforço de pesquisa, além de controlar a qualidade das rotas encontradas, e por esta razão um modelo mais preciso é proposto. Para roteamento de área, se estuda o desenvolvimento de uma nova classe de algoritmos sugerida em [JOH 94], denominados LEGAL. A viabilidade e a eficiência de tais algoritmos são demonstradas com três diferentes implementações. Devem ser também estudados mecanismos alternativos para gerenciar espaços e tratar modelos de grade não uniforme, avaliando-se suas vantagens e sua aplicabilidade em outros diferentes contextos.
Resumo:
Este trabalho tem como foco a aplicação de técnicas de otimização de potência no alto nível de abstração para circuitos CMOS, e em particular no nível arquitetural e de transferência de registrados (Register Transfer Leve - RTL). Diferentes arquiteturas para projetos especificos de algorítmos de filtros FIR e transformada rápida de Fourier (FFT) são implementadas e comparadas. O objetivo é estabelecer uma metodologia de projeto para baixa potência neste nível de abstração. As técnicas de redução de potência abordadas tem por obetivo a redução da atividade de chaveamento através das técnicas de exploração arquitetural e codificação de dados. Um dos métodos de baixa potência que tem sido largamente utilizado é a codificação de dados para a redução da atividade de chaveamento em barramentos. Em nosso trabalho, é investigado o processo de codificação dos sinais para a obtenção de módulos aritméticos eficientes em termos de potência que operam diretamente com esses códigos. O objetivo não consiste somente na redução da atividade de chavemanto nos barramentos de dados mas também a minimização da complexidade da lógica combinacional dos módulos. Nos algorítmos de filtros FIR e FFT, a representação dos números em complemento de 2 é a forma mais utilizada para codificação de operandos com sinal. Neste trabalho, apresenta-se uma nova arquitetura para operações com sinal que mantém a mesma regularidade um multiplicador array convencional. Essa arquitetura pode operar com números na base 2m, o que permite a redução do número de linhas de produtos parciais, tendo-se desta forma, ganhos significativos em desempenho e redução de potência. A estratégia proposta apresenta resultados significativamente melhores em relação ao estado da arte. A flexibilidade da arquitetura proposta permite a construção de multiplicadores com diferentes valores de m. Dada a natureza dos algoritmos de filtro FIR e FFT, que envolvem o produto de dados por apropriados coeficientes, procura-se explorar o ordenamento ótimo destes coeficientes nos sentido de minimizar o consumo de potência das arquiteturas implementadas.
Resumo:
Este trabalho faz uma análise ampla sobre os algoritmos de posicionamento. Diversos são extraídos da literatura e de publicações recentes de posicionamento. Eles foram implementados para uma comparação mais precisa. Novos métodos são propostos, com resultados promissores. A maior parte dos algoritmos, ao contrário do que costuma encontrar-se na literatura, é explicada com detalhes de implementação, de forma que não fiquem questões em aberto. Isto só possível pela forte base de implementação por trás deste texto. O algorítmo de Fidduccia Mateyeses, por exemplo, é um algorítmo complexo e por isto foi explicado com detalhes de implementação. Assim como uma revisão de técnicas conhecidas e publicadas, este trabalho oferece algumas inovações no fluxo de posicionamento. Propõe-se um novo algorítimo para posicionamento inicial, bem como uma variação inédita do Cluster Growth que mostrta ótimos resultados. É apresentada uma série de evoluções ao algorítmo de Simulated Annealling: cálculo automático de temperatura inicial, funções de perturbação gulosas (direcionadas a força), combinação de funções de perturbação atingindo melhores resultados (em torno de 20%), otimização no cálculo de tamanho dos fios (avaliação das redes modificadas e aproveitamento de cálculos anteriores, com ganhos em torno de 45%). Todas estas modificações propiciam uma maior velocidade e convergência do método de Simulated Annealling. É mostrado que os algorítmos construtivos (incluindo o posicionador do Tropic, baseado em quadratura com Terminal Propagation) apresentam um resultado pior que o Simulated Annealling em termos de qualidade de posicionamento às custas de um longo tempo de CPD. Porém, o uso de técnicas propostas neste trabalho, em conjunto com outras técnicas propostas em outros trabalhos (como o trabalho de Lixin Su) podem acelerar o SA, de forma que a relação qualidade/tempo aumente.
Resumo:
Nesta tese mostramos que uma função de custo contínua e uma tecnologia uniproduto, convexa, monôtona não-crescente e regular implicam que a função de custo mínimo é semicontínua superior em relação ao produto e que a demanda por insumos é fechada. Se a imagem da tecnologia for compacta então a função de custo mínimo é contínua e a demanda por insumos é hemicontínua superior e valor-compacto em relação ao produto. Se a tecnologia possuir a propriedade de ser localmente não-disjunta então a função de custo mínimo é contínua e a demanda por insumos é hemicontínua superior e valorcompacto em relação ao produto. Se a função de custo for monôtona não-decrescente, semicontínua inferior em relação aos contornos inferiores e a tecnologia for uniproduto, convexa, monótona não-crescente, regular, fechada com imagem compacta então a função de custo mínimo é semicontínua inferior em relação ao produto e a demanda ampliada por insumos é hemicontínua superior e valor-compacto em relação ao produto. Se a tecnologia possuir a propriedade de ser localmente não-disjunta então o mesmo resultado é válido. Introduzimos as noções de função monótona não-decrescente e semicontínua inferior em relação aos contornos num espaço topológico ordenado, de correspondência localmente não-disjunta e de demanda ampliada. Mostramos que funções com a propriedade anterior são semicontínuas inferiores e que correspondências convexas localmente não-disjuntas são hemicontínuas inferiores.
Resumo:
A análise de um algoritmo tem por finalidade melhorar, quando possível, seu desempenho e dar condições de poder optar pelo melhor, dentre os algoritmos existentes, para resolver o mesmo problema. O cálculo da complexidade de algoritmos é muito dependente da classe dos algoritmos analisados. O cálculo depende da função tamanho e das operações fundamentais. Alguns aspectos do cálculo da complexidade, entretanto, não dependem do tipo de problema que o algoritmo resolve, mas somente das estruturas que o compõem, podendo, desta maneira, ser generalizados. Com base neste princípio, surgiu um método para o cálculo da complexidade de algoritmos no pior caso. Neste método foi definido que cada estrutura algorítmica possui uma equação de complexidade associada. Esse método propiciou a análise automática da complexidade de algoritmos. A análise automática de algoritmos tem como principal objetivo tornar o processo de cálculo da complexidade mais acessível. A união da metodologia para o pior caso, associada com a idéia da análise automática de programas, serviu de motivação para o desenvolvimento do protótipo de sistema ANAC, que é uma ferramenta para análise automática da complexidade de algoritmos não recursivos. O objetivo deste trabalho é implementar esta metodologia de cálculo de complexidade de algoritmos no pior caso, com a utilização de técnicas de construção de compiladores para que este sistema possa analisar algoritmos gerando como resultado final a complexidade do algoritmo dada em ordens assintóticas.
Resumo:
Neste trabalho é resolvido o problema da minimização do volume de estruturas bidimensionais contínuas submetidas a restrições sobre a flexibilidade (trabalho das forças externas) e sobre as tensões, utilizando a técnica chamada otimização topológica, que visa encontrar a melhor distribuição de material dentro de um domínio de projeto pré-estabelecido. As equações de equilíbrio são resolvidas através do método dos elementos finitos, discretizando a geometria e aproximando o campo de deslocamentos. Dessa forma, essas equações diferenciais são transformadas em um sistema de equações lineares, obtendo como resposta os deslocamentos nodais de cada elemento. A distribuição de material é discretizada como uma densidade fictícia constante por elemento finito. Esta densidade define um material isotrópico poroso de uma seqüência pré-estabelecida (SIMP). A otimização é feita através da Programação Linear Seqüencial. Para tal, a função objetivo e as restrições são sucessivamente linearizadas por expansão em Série de Taylor. A análise de sensibilidade para a restrição de flexibilidade é resolvida utilizando o cálculo da sensibilidade analítico adaptado para elementos finitos de elasticidade plana. Quando as restrições consideradas são as tensões, o problema torna-se mais complexo. Diferente da flexibilidade, que é uma restrição global, cada elemento finito deve ter sua tensão controlada. A tensão de Von Mises é o critério de falha considerado, cuja sensibilidade foi calculada de acordo com a metodologia empregada por Duysinx e Bendsøe [Duysinx e Bendsøe, 1998] Problemas como a instabilidade de tabuleiro e dependência da malha sempre aparecem na otimização topológica de estruturas contínuas. A fim de minimizar seus efeitos, um filtro de vizinhança foi implementado, restringindo a variação da densidade entre elementos adjacentes. Restrições sobre as tensões causam um problema adicional, conhecido como singularidade das tensões, fazendo com que os algoritmos não convirjam para o mínimo global. Para contornar essa situação, é empregada uma técnica matemática de perturbação visando modificar o espaço onde se encontra a solução, de forma que o mínimo global possa ser encontrado. Esse método desenvolvido por Cheng e Guo [Cheng e Guo, 1997] é conhecido por relaxação-ε e foi implementado nesse trabalho.
Resumo:
Nesse trabalho apresentamos algoritmos adaptativos do M´etodo do Res´ıduo M´ınimo Generalizado (GMRES) [Saad e Schultz, 1986], um m´etodo iterativo para resolver sistemas de equa¸c˜oes lineares com matrizes n˜ao sim´etricas e esparsas, o qual baseia-se nos m´etodos de proje¸c˜ao ortogonal sobre um subespa¸co de Krylov. O GMRES apresenta uma vers˜ao reinicializada, denotada por GMRES(m), tamb´em proposta por [Saad e Schultz, 1986], com o intuito de permitir a utiliza¸c˜ao do m´etodo para resolver grandes sistemas de n equa¸c˜oes, sendo n a dimens˜ao da matriz dos coeficientes do sistema, j´a que a vers˜ao n˜ao-reinicializada (“Full-GMRES”) apresenta um gasto de mem´oria proporcional a n2 e de n´umero de opera¸c˜oes de ponto-flutuante proporcional a n3, no pior caso. No entanto, escolher um valor apropriado para m ´e dif´ıcil, sendo m a dimens˜ao da base do subespa¸co de Krylov, visto que dependendo do valor do m podemos obter a estagna¸c˜ao ou uma r´apida convergˆencia. Dessa forma, nesse trabalho, acrescentamos ao GMRES(m) e algumas de suas variantes um crit´erio que tem por objetivo escolher, adequadamente, a dimens˜ao, m da base do subespa¸co de Krylov para o problema o qual deseja-se resolver, visando assim uma mais r´apida, e poss´ıvel, convergˆencia. Aproximadamente duas centenas de experimentos foram realizados utilizando as matrizes da Cole¸c˜ao Harwell-Boeing [MCSD/ITL/NIST, 2003], que foram utilizados para mostrar o comportamento dos algoritmos adaptativos. Foram obtidos resultados muito bons; isso poder´a ser constatado atrav´es da an´alise das tabelas e tamb´em da observa ¸c˜ao dos gr´aficos expostos ao longo desse trabalho.
Resumo:
As organizações estão se conscientizando que a mudança decorrente da transição de estruturas tradicionais para funcionais, da implementação de estruturas, assim como da união de culturas organizacionais, está repleta de riscos. Esta mudança vem em decorrência de downsizing, fusões, incorporações, cisões, joint ventures, entre outras alternativas administrativas, societárias e comerciais praticadas. Com a necessidade de adaptar rapidamente o negócio às exigências externas, os riscos, muitas vezes, não são analisados ou o são superficial ou parcialmente, resultando na elevação dos mesmos e expondo os processos de negócios a potenciais fraudes. O ambiente de controle do negócio tem se mostrado uma área de preocupação, principalmente nos momentos de transição estrutural e organizacional, pelo desconhecimento conceitual do risco e da importância do controle, como também pela forma de implementação das mudanças. Verifica-se também que há empresas, normalmente as grandes, que possuem um sistema estruturado de controles implementado e outras, normalmente as médias e pequenas, que não o possuem, onde, de acordo com pesquisas realizadas, encontra-se um maior número de fraudes, que, proporcionalmente ao seu patrimônio, representa uma perda substancial aos seus negócios. Este estudo objetiva abordar a evidência de contribuição de um sistema estruturado de controle para a minimização de ocorrência de fraudes nas organizações.
Resumo:
Esse trabalho comparou, para condições macroeconômicas usuais, a eficiência do modelo de Redes Neurais Artificiais (RNAs) otimizadas por Algoritmos Genéticos (AGs) na precificação de opções de Dólar à Vista aos seguintes modelos de precificação convencionais: Black-Scholes, Garman-Kohlhagen, Árvores Trinomiais e Simulações de Monte Carlo. As informações utilizadas nesta análise, compreendidas entre janeiro de 1999 e novembro de 2006, foram disponibilizadas pela Bolsa de Mercadorias e Futuros (BM&F) e pelo Federal Reserve americano. As comparações e avaliações foram realizadas com o software MATLAB, versão 7.0, e suas respectivas caixas de ferramentas que ofereceram o ambiente e as ferramentas necessárias à implementação e customização dos modelos mencionados acima. As análises do custo do delta-hedging para cada modelo indicaram que, apesar de mais complexa, a utilização dos Algoritmos Genéticos exclusivamente para otimização direta (binária) dos pesos sinápticos das Redes Neurais não produziu resultados significativamente superiores aos modelos convencionais.
Resumo:
Este trabalho tem como objetivo estudar e avaliar técnicas para a aceleração de algoritmos de análise de timing funcional (FTA - Functional Timing Analysis) baseados em geração automática de testes (ATPG – Automatic Test Generation). Para tanto, são abordados três algoritmos conhecidos : algoritmo-D, o PODEM e o FAN. Após a análise dos algoritmos e o estudo de algumas técnicas de aceleração, é proposto o algoritmo DETA (Delay Enumeration-Based Timing Analysis) que determina o atraso crítico de circuitos que contêm portas complexas. O DETA está definido como um algoritmo baseado em ATPG com sensibilização concorrente de caminhos. Na implementação do algoritmo, foi possível validar o modelo de computação de atrasos para circuitos que contêm portas complexas utilizando a abordagem de macro-expansão implícita. Além disso, alguns resultados parciais demonstram que, para alguns circuitos, o DETA apresenta uma pequena dependência do número de entradas quando comparado com a dependência no procedimento de simulação. Desta forma, é possível evitar uma pesquisa extensa antes de se encontrar o teste e assim, obter sucesso na aplicação de métodos para aceleração do algoritmo.