• Nenhum resultado encontrado

- A Computação Científica é uma área de estudo que, utilizando computadores, se interessa

N/A
N/A
Protected

Academic year: 2021

Share "- A Computação Científica é uma área de estudo que, utilizando computadores, se interessa"

Copied!
37
0
0

Texto

(1)

Definição Computação Científica

Definição

- A Computação Científica é uma área de estudo que, utilizando computadores, se interessa

- pela construção de modelos matemáticos e

- pelas técnicas para determinar soluções numéricas

na análise e resolução de problemas reais (científicos e da engenharia).

- A Computação Científica consiste, em termos práticos, na aplicação

- da simulação computacional e - de outras formas de computação,

na análise e resolução de problemas reais em várias áreas científicas e tecnológicas.

- As aplicações computacionais desenvolvidas para modelar sistemas reais, requerem

- grandes quantidades de dados iniciais e de parâmetros de entrada, - uma grande quantidade de cálculos,

fazendo com que a relação entre Computação Científica e Computação Numérica seja muito forte.

- A Computação Numérica define-se como a utilização de computadores na manipulação de números.

(2)

Definição Computação Científica

- Em algumas áreas do conhecimento,

- a experimentação em laboratório é extremamente cara ou até mesmo impossível, - o que faz com que a Computação Científica tenha um papel de grande importância,

- configurando uma terceira vertente da ciência (complemento à experimentação/observação e à teoria).

- Considere-se o seguinte exemplo:

- tendo em conta a grande aproximação da antena do telemóvel com a cabeça humana, essencialmente aquando da realização de chamadas, os utilizadores são expostos a campos eletromagnéticos de níveis consideráveis em períodos de tempo cada vez maiores.

- Devido à impossibilidade técnica e ética de efetuar medições dos níveis destes campos em seres humanos ou animais, as simulações numéricas são de crucial importância nestes estudos.

- Com a Computação Científica é possível identificar as áreas e os tecidos mais afetados (normalmente são aqueles mais próximos da antena) e os pontos de concentração de ondas eletromagnéticas.

- A construção de Modelos Matemáticos é possivelmente a vertente da Computação Científica

- em que os investigadores têm ocupado mais tempo no seu estudo,

- há um aumento da quantidade de modelos para resolver problemas (cada vez mais complexos), - o desenvolvimento de modelos já existentes.

(3)

Modelo genérico Computação Científica

Modelo genérico

- De uma maneira geral, um modelo é uma estrutura (abstrata ou física) construída para exibir funções e

características (consideradas) fundamentais de um dado sistema “real”.

- Segundo diferentes perspetivas, a mesma “realidade” dá origem a diferentes modelos.

- É importante que o comportamento do modelo

- seja fiel à realidade (ou, melhor, à simplificação da realidade que se idealizou), - seja de fácil manipulação!

- Os modelos permitem

- a experimentação sem interferência com a realidade,

- explicitar relações que não eram claras até ao momento da sua construção e análise.

- O termo "modelo" é habitualmente usado por uma estrutura construída propositadamente, para expor

aspetos e características de alguns objetos entre si.

- É suposto que um modelo

- seja uma representação suficientemente precisa das características essenciais da situação a analisar, - de modo que as conclusões (soluções) obtidas a partir dele sejam também válidas para o problema real.

(4)

Modelo genérico Computação Científica

- O modelo é um esquema simplificado para a interpretação da realidade

- a complexidade do mundo real  a necessidade de formular modelos simplificadores; - a mera acumulação de observações não fornece explicação satisfatória do fenómeno 

 necessidade de sistematizar e racionalizar os factos conhecidos: - selecionando os aspetos mais importantes e

- desprezando os que considera irrelevantes.

- De uma maneira geral, pode-se considerar que existem três tipos de modelos:

- modelos icónicos

- são representações reduzidas de estados, objetos ou acontecimentos; - representam o fenómeno real apenas com uma transformação de escala; - por ex., os mapas.

- modelos analógicos,

- empregam uma propriedade para representar outra; - por ex., utilizar gráficos a cores e com legendas. - modelos simbólicos

- as propriedades do fenómeno real são expressas simbolicamente;

(5)

Modelo matemático Computação Científica

Modelo matemático

- Uma das tarefas mais importantes dos Matemáticos é:

- analisar situações da vida real e

- identificar modelos matemáticos que permitam a sua interpretação.

- Existem, na literatura, muitas definições de modelo matemático.

- Edwards e Hamsom (1990): "um modelo matemático é o produto da transferência de um conjunto de

elementos matemáticos (como sejam, funções ou equações), com vista à obtenção de uma

representação matemática de uma parcela do mundo real".

- Swetz e Hartzler (1991): "modelo matemático de um objeto ou de um fenómeno real é um conjunto de

regras ou leis, de natureza matemática, que representam adequadamente o objeto ou o fenómeno na

mente de um observador".

(6)

Modelo matemático Computação Científica

- Os modelos matemáticos

- São representações idealizadas, mas expressas em termos de símbolos e expressões matemáticas.

- Consistem num sistema de equações e de expressões matemáticas relacionadas, que descrevem os aspetos essenciais do problema.

- Podem ter diversas formas como uma única equação, um sistema de equações, um sistema de inequações ou, para casos mais complexos, um conjunto de equações diferenciais.

- O modo como a teoria e as aplicações da Matemática se relacionam designa-se por:

- matematização ou

- modelação matemática.

- Isto significa, para Ian Stwart (matemático inglês), que "Qualquer descrição matemática do mundo real é

um modelo. Manipulando o modelo esperamos compreender algo da realidade. E já não perguntamos se

o modelo é verdadeiro, perguntamos unicamente se as suas implicações podem ser verificadas

experimentalmente".

(7)

Tipos de modelos matemáticos Computação Científica

Tipos de modelos matemáticos

- Os modelos matemáticos podem ser, pela sua natureza, de dois tipos:

- modelos prescritivos, e

- modelos descritivos.

- Os modelos matemáticos prescritivos têm como característica principal, o facto de o resultado de uma

operação ser prescrita para solucionar um problema do sistema real.

- Os modelos prescritivos

- baseiam-se na representação dos objetivos e das restrições de um processo para o qual se deseja descobrir soluções ótimas;

- ou seja, o modelo é elaborado segundo uma técnica que permite encontrar a melhor solução, ou política de ação, para os condicionamentos representados.

- Exemplos de modelos prescritivos:

- modelos de otimização;

(8)

Tipos de modelos matemáticos Computação Científica

- Os modelos que usam métodos numéricos

- são expressos apenas por uma equação matemática;

- a sua resolução consiste em determinar as soluções que anulam aquela equação (ou seja, os seus zeros).

- Os modelos de otimização podem ser resolvidos usando dois tipos diferentes de métodos:

- exatos, e - aproximados.

- Nos métodos exatos, a solução obtida

- é a melhor, dentre todas as possíveis, dados os condicionamentos do modelo;

- otimiza (maximiza ou minimiza) uma função de mérito (por ex., o custo total de produção); e

- respeita (não viola), em simultâneo, todas as restrições do problema (por ex:, satisfazer a procura).

- Pode ser extremamente caro, em termos computacionais, resolver um problema com métodos exatos.

- Neste caso, pode decidir-se por resolver o problema de forma aproximada (heuristicamente).

(9)

Tipos de modelos matemáticos Computação Científica

- Resolver o problema usando um método aproximado (heurístico)

- significa que não se pode garantir que se obtenha a solução ótima em todos cenários analisados;

- mas pode-se garantir a obtenção de uma solução de “boa qualidade” com baixo custo computacional.

- Uma abordagem heurística tenta utilizar um método racional para encontrar uma boa (próxima do

ótimo) solução.

- Geralmente a heurística apresenta uma maneira mais rápida e fácil de resolver um problema, em

relação ao método matemático prescritivo “puro”.

- Exemplos de métodos heurísticos são

- Algoritmos Evolutivos (Algoritmos Genéticos, Pesquisa Tabu, ...), - Redes Neuronais e

- Busca Local.

- Mas isto não significa que se deve resolver todos os problemas de grande dimensão e caros, em termos

computacionais, usando métodos aproximados.

(10)

Tipos de modelos matemáticos Computação Científica

- Por exemplo:

- suponha-se que existam 3 trabalhos para serem realizados e 3 máquinas disponíveis para os realizar. - O custo de cada máquina para cada trabalho está na seguinte tabela:

Máquina 1 Máquina 2 Máquina 3

Trabalho 1 10 25 11

Trabalho 2 13 5 6

Trabalho 3 8 6 25

- Heurística 1: Alocação do menor custo dos trabalhos. Qual o custo total? - Heurística 2: Alocação do menor custo das máquinas. Qual o custo total? - Usando a Heurística 1 e afetando por ordem os Trabalhos:

custo total é 40 (10 + 5 + 25),

pares de afetação: (Trabalho 1, Máquina 1), (Trabalho 2, Máquina 2) e (Trabalho 3, Máquina 3). - Usando a Heurística 2 e afetando por ordem as Máquinas:

o custo total é 24 (8 + 5 + 11),

pares de afetação: (Máquina 1, Trabalho 3), (Máquina 2, Trabalho 2) e (Máquina 3, Trabalho 1). - Notar que: a melhor solução (custo 22) é um pouco melhor que a solução da heurística 2 (custo 24).

(11)

Tipos de modelos matemáticos Computação Científica

- Os modelos matemáticos descritivos

- são utilizados para acompanhar o comportamento de um sistema. - As suas conclusões são obtidas através da perceção do modelador. - Os modelos deste tipo mais usuais são os modelos de simulação.

- Os modelos descritivos são utilizados

- na representação de sistemas reais (ou propostos) e

- na experimentação de diferentes cenários e políticas de ação nos mesmos.

- As grandes motivações para o uso destas técnicas são

- a flexibilidade na representação de modelos complexos e - a facilidade de aplicação,

o que possibilita prever o comportamento do sistema modelado no horizonte de planeamento escolhido.

- Os resultados dos testes apresentam uma visão futura do sistema, auxiliando no processo de tomada de

decisões no momento.

(12)

Tipos de modelos matemáticos Computação Científica

- Ao contrário dos métodos prescritivos, os modelos descritivos são utilizados para comparar políticas de

ação já escolhidas pelo decisor, não esperando que o modelo indique a melhor solução possível.

- Por exemplo: suponha-se que se pretende testar duas políticas de filas numa Agência Bancária:

1) cada caixa tem a sua própria fila; 2) uma fila única para todas as caixas. Neste caso, pode-se supor que

- o tempo de atendimento é baseado numa distribuição de Poisson e

- que os tempos de chegada dos clientes à Agência são baseados numa distribuição Exponencial Negativa. Depois, simulam-se as duas políticas para verificar qual delas é a melhor (segundo certo objetivo).

(13)

Modelação matemática Computação Científica

Modelação matemática

- O processo de resolução de um problema

- pode ser visto como uma sequência de etapas que devem ser realizadas e melhoradas,

- até que o modelo matemático construído para representar o problema forneça resultados satisfatórios.

- A construção de um bom modelo matemático exige

- alto nível de abstração e

- de conhecimentos académicos (teoria) e/ou empíricos (prática) sobre o problema em análise.

- Notar que,

- não é possível o controlo sobre a maioria dos sistemas reais (complexos),

- mas é possível controlar a complexidade dos modelos matemáticos que se constroem.

- Os sistemas reais complexos

- podem ser aproximados por modelos matemáticos simples,

- que usam equações matemáticas que podem ser resolvidas analiticamente (obtendo soluções exatas).

- No entanto, estes modelos simples oferecem, provavelmente,

(14)

Modelação matemática Computação Científica

- Uma descrição mais precisa do sistema real pode ser conseguida

- com a introdução de mais características do sistema no modelo matemático,

- o que implica a utilização de equações matemáticas mais complexas e mais difíceis de resolver.

- Para estes casos,

- podem não existir soluções analíticas para o modelo;

- havendo necessidade de se recorrer à determinação de soluções “aproximadas”, obtidas através de - métodos numéricos ou

- métodos heurísticos.

- Existem, na literatura, vários diagramas para descrever o processo de resolução de um problema

(modelação matemática).

- Assim, pode-se considerar que este processo é composto por cinco etapas (ver diagrama em baixo):

1ª) Definição (Formulação) do Problema, 2ª) Construção do Modelo (Matemático), 3ª) Determinação da Solução (do Modelo), 4ª) Validação do Modelo e Análise da Solução, 5ª) Implementação da Solução.

(15)
(16)
(17)

Modelação matemática - Definição do Problema Computação Científica

Modelação matemática - Definição do Problema

- Elabora-se a definição (formulação) matemática do problema real a ser resolvido.

- Normalmente,

- começa-se com um diagnóstico da situação e

- termina-se com uma descrição formal do problema.

- Uma definição cuidadosa do problema é crucial,

- pois caso contrário pode-se estar, mais tarde, a resolver o problema errado; - ou seja, deve-se evitar extrair a resposta certa do problema errado!

- Envolve a "Perceção do Problema" e a "Recolha de Dados".

- Deve-se identificar as entidades associadas ao problema, que são as seguintes:

- os dados (o que é conhecido),

- o objetivo (que é desconhecido e pretende-se determinar) e - as restrições (as condições do problema apresentadas).

(18)

Modelação matemática - Construção do Modelo Matemático Computação Científica

Modelação matemática - Construção do Modelo Matemático

- Consiste na transformação do problema real num problema matemático através de uma formulação

matemática, a qual deve ser tratável em termos computacionais.

- Deve-se começar por

- tentar selecionar um modelo, entre os vários já conhecidos e que possam ser aplicados ao problema (é frequente ser possível aplicar diferentes modelos ao mesmo problema real).

- Geralmente o modelo matemático possui mais soluções que o problema real.

- Também deve haver uma grande comunicação com a fase da “Recolha de Dados”, pois o modelo pode

necessitar de algo mais do que foi feito na etapa anterior,

- quer em termos dos dados recolhidos - quer na forma como são apresentados.

- Nesta etapa deve-se reproduzir as relações entre os componentes do problema (objetivos, variáveis de

decisão, parâmetros, restrições, ...).

(19)

Modelação matemática - Determinação da Solução do Modelo Computação Científica

Modelação matemática - Determinação da Solução do Modelo

- Faz-se a escolha do método numérico mais apropriado para resolver o modelo matemático, obtido na

construção do modelo matemático.

- Na escolha do método mais eficiente deve-se ter em conta os seguintes aspetos:

- precisão desejada para os resultados;

- capacidade do método em conduzir aos resultados desejados (velocidade de convergência); - esforço computacional despendido (tempo de processamento e economia de memória).

- Depois de feita a escolha do método,

- este é descrito através de um algoritmo,

- o qual é posteriormente implementado num computador através de uma linguagem de programação; - por fim, a execução daquele programa tem em vista a obtenção dos resultados numéricos (soluções).

- Esta etapa pode, então, ser subdividida nas 3 fases seguintes (depois de escolhido o método):

- elaboração do algoritmo,

- implementação do algoritmo (codificação do programa), - processamento (execução) do programa.

(20)

Modelação matemática - Validação do Modelo e Análise da Solução Computação Científica

Modelação matemática - Validação do Modelo e Análise da Solução

- Verifica-se

- a consistência da solução obtida para o modelo (validação do modelo) e - a sua adequação ao problema real (análise da solução).

- Se a solução não se mostrar satisfatória (modelo não válido) deve-se

- construir um novo modelo matemático, através de uma nova formulação matemática, e - determinar uma nova solução numérica.

- Alguns modelos matemáticos podem

- produzir várias soluções (e não apenas uma) e

- algumas delas (ou todas) não terem sentido físico ou químico

- por exemplo: tempo negativo, concentração complexa, etc.

- Um dos objetivos desta etapa é justamente discernir qual a solução válida para o problema real dentre

as várias fornecidas pelo modelo matemático (se existirem algumas).

(21)

Modelação matemática - Implementação da Solução Computação Científica

Modelação matemática - Implementação da Solução

- Nesta etapa deve-se ter em atenção os seguintes aspetos:

- garantir que, do “papel” para o sistema real, não se desvirtua a solução;

- ter abertura para readaptações (modelo e/ou solução) causadas pelas dificuldades de implementação; - verificar a existência de problemas:

- técnicos,

- associados ao comportamento individual dos elementos da organização, - relacionados com o ambiente organizacional;

- dar importância aos aspetos comportamentais;

(22)

Modelação matemática - Exemplo Computação Científica

Modelação matemática - Exemplo

- Definição do Problema

- Um fabricante de plásticos produz 2 tipos de plástico: - Especial e

- Normal.

- Cada tonelada de plástico Especial exige - 2 horas na máquina A e

- 5 horas na máquina B;

- Cada tonelada de plástico Normal exige - 2 horas na máquina A e

- 3 horas na máquina B. - Como

- a máquina A está disponível 8 horas por dia e - a máquina B está disponível 15 horas por dia,

quantas toneladas de cada tipo de plástico devem ser produzidas diariamente de maneira que as duas máquinas se mantenham totalmente ocupadas?

(23)

Modelação matemática - Exemplo Computação Científica

- Construção do Modelo Matemático

plástico Especial = variável X

plástico Normal = variável Y

}

{

2X + 2Y = 8 5X + 3Y = 15

- Determinação da Solução do Modelo

- O processo consiste na resolução de um sistema de duas equações com duas incógnitas, usando o método de substituição de variáveis.

{

2X + 2Y = 8 5X + 3Y = 15 

{

X = 4 −Y 20 −5Y + 3Y = 15 

{

X = 4 −Y Y = 5/2 

{

X = 3/2 = 1.5 Y = 5/2 = 2.5

- Análise dos Resultados (Solução)

Devem ser produzidas:

1,5 toneladas de plástico Especial (variável X) e 2,5 toneladas de plástico Normal (variável Y).

(24)

Elaboração de algoritmos Computação Científica

Elaboração de algoritmos

- Uma das fases mais importantes na resolução de um problema é a elaboração de um algoritmo que

traduza o método associado ao modelo matemático construído.

- Selecionado o método associado ao modelo matemático construído (definido através de expressões

aritméticas e lógicas), o passo seguinte é realizar uma descrição do método através de um algoritmo.

- A descrição do algoritmo, através de uma notação algorítmica, melhora o seu entendimento, pois

- apenas os aspetos do raciocínio matemático são realçados,

(25)

Elaboração de algoritmos - Estrutura do algoritmo Computação Científica

Elaboração de algoritmos - Estrutura do algoritmo

- Um algoritmo

deve iniciar-se com

Algoritmo <nome-do-algoritmo>

e terminar com fim_algoritmo

- Para descrever a finalidade do algoritmo, deve ser utilizado

{ Objetivo: <objetivo-do-algoritmo> }

- Os dados necessários para a execução de um algoritmo são requisitados pelo comando

parâmetros de entrada: <lista-de-variáveis>

onde <lista-de-variáveis> são os nomes das variáveis contendo os valores fornecidos. - Não é necessário descrever exatamente como os valores são fornecidas ao algoritmo.

- Os valores calculados pelo algoritmo são disponibilizados pelo comando

parâmetros de saída: <lista-de-variáveis>

(26)

Elaboração de algoritmos - Variáveis e comentários Computação Científica

Elaboração de algoritmos - Variáveis e comentários

- Uma variável corresponde a uma posição de memória do computador onde está, ou poderá estar,

armazenado um determinado valor.

- As variáveis são representadas por identificadores, podendo os elementos de vetores e matrizes serem

referenciados por subscritos ou índices (por exemplo, v

i

ou v(i) e m

ij

ou m(i,j)).

- Um comentário é

- um texto inserido em qualquer parte o algoritmo para aumentar a sua clareza.; - deve ser delimitado por chavetas ({ <texto> });

(27)

Elaboração de algoritmos - Expressões e comando de atribuição Computação Científica

Elaboração de algoritmos - Expressões e comando de atribuição

- Existem três tipos de expressões, dependendo dos tipos dos operadores e das variáveis envolvidas:

- aritméticas, - lógicas e - literais.

- O símbolo  é usado para atribuir o resultado de uma expressão a uma variável,

<variável>  <expressão>

- Por exemplo,

velocidade  deslocamento/tempo mensagem  “matriz singular”

- Na elaboração dos algoritmos, podem ser usadas

- operadores aritméticos, relacionais e lógicos

(28)

Elaboração de algoritmos - Comandos de entrada e saída Computação Científica

Elaboração de algoritmos - Comandos de entrada e saída

- O comando

leia: <lista-de-variáveis>

indica que a <lista-de-variáveis> está disponível para leitura nalgum dispositivo externo.

- Por sua vez, o comando

escreva: <lista-de-variáveis>

deve ser utilizado para indicar onde certos valores de interesse - estão disponíveis no programa e

(29)

Elaboração de algoritmos - Estruturas condicionais Computação Científica

Elaboração de algoritmos - Estruturas condicionais

- Uma estrutura condicional torna possível a escolha dos comandos a serem executados quando certa

condição for satisfeita ou não.

- Podem ser simples ou compostas.

- Estrutura condicional simples

se <condição> então

<comandos> fim_se

- Estrutura condicional composta

se <condição> então

<comandos_1> senão

<comandos_2> fim_se

(30)

Elaboração de algoritmos - Estruturas de repetição Computação Científica

Elaboração de algoritmos - Estruturas de repetição

- Número indefinido de repetições

repita <comandos_1> se <condição> então interrompa fim_se <comandos_2> fim_repita <comandos_3>

- Número definido de repetições

para <controle>  <valor-inicial> até <valor-final> passo <delta> faça <comandos>

(31)

Elaboração de algoritmos - Falha no algoritmo Computação Científica

Elaboração de algoritmos - Falha no algoritmo

- Para indicar que haverá uma falha evidente na execução do algoritmo, usar o comando

abandone

(32)

Elaboração de algoritmos - Exemplos de algoritmos Computação Científica

Elaboração de algoritmos - Exemplos de algoritmos

- Problema 1:

Dado um vetor x com n componentes (elementos), elaborar um algoritmo para determinar - a média aritmética ̄x e

- o desvio padrão s dos seus elementos, sabendo que ̄ x = 1 n i=1

n xi, e s =

1 n −1

(

i=1

n xi2− 1 n

(

i=1

n xi

)

2

)

.

(33)

Elaboração de algoritmos - Exemplos de algoritmos Computação Científica

- Algoritmo:

Algoritmo Média_desvio

{ Objetivos: Calcular média aritmética e desvio padrão }

parâmetros de entrada: n, x { tamanho e elementos do vetor } parâmetros de saída: Média, DesvioPadrão

Soma  0

Soma2  0

para i  1 até n faça

Soma  Soma + x(i)

Soma2  Soma2 + x(i)2 fim_para

Média  Soma / n

DesvioPadrão  raiz2 ((Soma2 – (Soma2 / n)) / (n-1))

escreva: Média, DesvioPadrão fim_algoritmo

(34)

Elaboração de algoritmos - Complexidade computacional Computação Científica

Elaboração de algoritmos - Complexidade computacional

- É usual definir-se uma função de complexidade para medir o custo de execução de um algoritmo.

- Esta função tanto pode ser uma medida do

- tempo necessário para executar o algoritmo que resolve um problema de tamanho n, - espaço de memória requerido para esta execução.

A complexidade computacional de um algoritmo

- refere-se à estimativa do esforço computacional despendido para resolver o problema,

- é medido pelo número de operações aritméticas e lógicas efetuadas para resolver um sistema linear de ordem n.

- Os problemas têm complexidade computacional e podem-se enquadrar em dois grupos:

- o composto pelos algoritmos polinomiais, sendo a função de complexidade da forma: O(cn pn + c

n-1 pn-1 + ... + c1 p1 + c0)

- o formado pelos algoritmos exponenciais, sendo a função de complexidade da forma: O(cn), c > 1.

(35)

Elaboração de algoritmos - Complexidade computacional Computação Científica - Considere-se o polinómio de Lagrange de grau n definido da seguinte forma:

Ln(x) =

i=0 n yi

j=0 j≠i n x−x j xi−xj

- Expandindo aquela expressão, resulta a Expressão 1: Ln(x) = y0 × x −x1 x0 −x1 × x −x2 x0−x2 ×... × x −xn x0 −xn + + y1× x −x0 x1−x0 × x −x2 x1−x2 ×... × x −xn x1−xn + + . . . + + yn× x −x0 xn−x0 × x −x1 xn−x1 ×... × x −xn−1 xn−xn−1

(36)

Elaboração de algoritmos - Complexidade computacional Computação Científica

- Considerando que o número de pontos m usados na interpolação é igual a n+1, onde n é o grau do

polinómio, então a complexidade computacional do algoritmo é:

Adições:

i=1 m 2(m −1) + 1 = 2(m2−2m + m) = 2(n + 1)2 −(n + 1) = 2n2 +3n + 1 Multiplicações:

i=1 m (m −1) = m2−m = (n + 1)2−(n + 1) = n2+n Divisões:

i=1 m (m −1) = (m2 −m) = (n + 1)2−(n + 1) = n2+n Estes resultados são resumidos na tabela seguinte:

Operações Complexidade

Adições 2n2 + 3n + 1

Multiplicações n2 + n

(37)

Elaboração de algoritmos - Complexidade computacional Computação Científica

- O polinómio de Lagrange também pode ser expandido de modo a resultar a Expressão 2:

Ln(x) = y0× (x −x1) × (x −x2) ×... × (x −xn) (x0 −x1) × (x0−x2) ×... × ( x0−xn) + + y1 × (x −x0) × (x −x2) ×... × (x −xn) (x1−x0) × (x1−x2) ×... × (x1−xn) + + . . . + + yn× (x −x0) × (x −x1) × ... × ( x −xn−1) (xn−x0) × (xn−x1) ×... × (xn−xn−1)

- Analisando a complexidade computacional do algoritmo desta expressão, verifica-se que

- o número de adições é o mesmo (2n2 + 3n + 1), - o de multiplicações é da mesma ordem (n2),

- o número de divisões utilizadas na Expressão 2 é de uma ordem grandeza menor (n).

- O polinómio de Lagrange serve para exemplificar que

- uma mesma notação matemática pode resultar em algoritmos de diferentes complexidades. - Isto deve estar presente ao elaborar-se um algoritmo.

Referências

Documentos relacionados

O presente estudo tem o objetivo de avaliar a prevalência das complicações neurológicas do diabetes secundário à pancreatite, de acordo com os pacientes atendidos no

O Evento 1 é uma chuva de maior intensidade (116,67mm/h), em que as maiores precipitações registradas contribuíram, em forma de escoamento, mais para a bacia do Cascavel

Tabela 1 Valores de L 0 *, a 0 * e b 0 * para os padrões: PVC e PEBD 112   Tabela 2 Parâmetros reológicos do modelo Lei da potência, a diferentes temperaturas, para soluções

Assim, nesse âmbito, o presente trabalho visa avaliar a biodegradabilidade do lodo de esgoto de descarte de reatores anaeróbios no processo da compostagem, sob aspectos

Meyer, “estilo é uma replicação de padronização, seja no comportamento humano ou nos artefatos produzidos pelo comportamento humano, que resulta de uma série de

Prazo de entrega a contar da data da publicação da Licença Ambiental, Todo trabalho deverá ser executado por proissional habilitado e apresentado a SEDUMA em forma de Laudo Técnico,

Com cinco servidores a ociosidade salta para 38% e o tempo de espera das requisições passa de dois (atual) para zero dias com o acréscimo de um ou dois servidores, significando que

homens jovens que realizaram 10 semanas de treinamento, foram realizados exercícios sempre em máxima velocidade e com a série baseada em tempo de execução (30s) em ambos os grupos,