2 resultados para Developer
em Instituto Politécnico do Porto, Portugal
Resumo:
As plataformas com múltiplos núcleos tornaram a programação paralela/concorrente num tópico de interesse geral. Diversos modelos de programação têm vindo a ser propostos, facilitando aos programadores a identificação de regiões de código potencialmente paralelizáveis, deixando ao sistema operativo a tarefa de as escalonar dinamicamente em tempo de execução, explorando o maior grau possível de paralelismo. O Java não foge a esta tendência, disponibilizando ao programador um número crescente de bibliotecas de mecanismos de sincronização e paralelização de código. Neste contexto, esta tese apresenta e discute um conjunto de resultados obtidos através de testes intensivos à eficiência de algoritmos de ordenação implementados com recurso aos mecanismos de concorrência da API do Java 8 (Threads, Threadpools, ExecutorService, CountdownLach, ExecutorCompletionService e ForkJoinPools) em sistemas com um número de núcleos variável. Para cada um dos mecanismos, são apresentadas conclusões sobre o seu funcionamento e discutidos os cenários em que o seu uso pode ser rentabilizado de modo a serem obtidos melhores tempos de execução.
Resumo:
Neste documento, são investigados vários métodos usados na inteligência artificial, com o objetivo de obter previsões precisas da evolução dos mercados financeiros. O uso de ferramentas lineares como os modelos AR, MA, ARMA e GARCH têm muitas limitações, pois torna-se muito difícil adaptá-los às não linearidades dos fenómenos que ocorrem nos mercados. Pelas razões anteriormente referidas, os algoritmos como as redes neuronais dinâmicas (TDNN, NARX e ESN), mostram uma maior capacidade de adaptação a estas não linearidades, pois não fazem qualquer pressuposto sobre as distribuições de probabilidade que caracterizam estes mercados. O facto destas redes neuronais serem dinâmicas, faz com que estas exibam um desempenho superior em relação às redes neuronais estáticas, ou outros algoritmos que não possuem qualquer tipo de memória. Apesar das vantagens reveladas pelas redes neuronais, estas são um sistema do tipo black box, o que torna muito difícil extrair informação dos pesos da rede. Isto significa que estes algoritmos devem ser usados com precaução, pois podem tornar-se instáveis.