Análise Numérica Aplicada, ou "Mamãe, Excel dá Errado!"

Post on 25-Jul-2015

490 views 0 download

Transcript of Análise Numérica Aplicada, ou "Mamãe, Excel dá Errado!"

Análise Numérica AplicadaMamãe, o Excel dá errado!

Alejandro C. Frery

LaCCAN

Laboratório de Computação Científicae Análise Numérica

Universidade Federal de Alagoas

XIII ERBASE

1 / 42

Por que esse tema e esse título?

As razões que me levaram a propor esse tema e esse título são asseguintes:

1 A análise numérica é um assunto “em baixa” na nossacomunidade. Muito embora seja medular para a Ciência daComputação, ele é mais frequentemente trabalhado pelo pessoalda Matemática Aplicada.

2 A Análise Numérica clássica requer habilidades matemáticas nãotriviais, mas veremos um viés diferente: o da Análise NuméricaAplicada.

3 O Excel c© está presente em quase todo lugar. . . e veremos que aqualidade das suas respostas é duvidosa.

4 O Matlab c© é praticamente uma commodity. . . e nem sempre éconfiável.

2 / 42

Por que esse tema e esse título?

As razões que me levaram a propor esse tema e esse título são asseguintes:

1 A análise numérica é um assunto “em baixa” na nossacomunidade. Muito embora seja medular para a Ciência daComputação, ele é mais frequentemente trabalhado pelo pessoalda Matemática Aplicada.

2 A Análise Numérica clássica requer habilidades matemáticas nãotriviais, mas veremos um viés diferente: o da Análise NuméricaAplicada.

3 O Excel c© está presente em quase todo lugar. . . e veremos que aqualidade das suas respostas é duvidosa.

4 O Matlab c© é praticamente uma commodity. . . e nem sempre éconfiável.

2 / 42

Por que esse tema e esse título?

As razões que me levaram a propor esse tema e esse título são asseguintes:

1 A análise numérica é um assunto “em baixa” na nossacomunidade. Muito embora seja medular para a Ciência daComputação, ele é mais frequentemente trabalhado pelo pessoalda Matemática Aplicada.

2 A Análise Numérica clássica requer habilidades matemáticas nãotriviais, mas veremos um viés diferente: o da Análise NuméricaAplicada.

3 O Excel c© está presente em quase todo lugar. . . e veremos que aqualidade das suas respostas é duvidosa.

4 O Matlab c© é praticamente uma commodity. . . e nem sempre éconfiável.

2 / 42

Por que esse tema e esse título?

As razões que me levaram a propor esse tema e esse título são asseguintes:

1 A análise numérica é um assunto “em baixa” na nossacomunidade. Muito embora seja medular para a Ciência daComputação, ele é mais frequentemente trabalhado pelo pessoalda Matemática Aplicada.

2 A Análise Numérica clássica requer habilidades matemáticas nãotriviais, mas veremos um viés diferente: o da Análise NuméricaAplicada.

3 O Excel c© está presente em quase todo lugar. . . e veremos que aqualidade das suas respostas é duvidosa.

4 O Matlab c© é praticamente uma commodity. . . e nem sempre éconfiável.

2 / 42

Resumo

1 Introdução

2 Precisão Numérica

3 Avaliação de planilhas

4 Avaliação de linguagens de programação/prototipação

3 / 42

Análise das propriedades numéricas de softwareO ponto de vista do usuário

Quão confiável são, por exemplo, Excel, Matlab, R, Phyton etc.?Não é possível ou desejável, em geral, abrir o sistema.Aplicamos protocolos: situações reais ou construídas difíceis deserem resolvidas, mas para as quais temos a resposta exata.

4 / 42

Análise das propriedades numéricas de softwareO ponto de vista do usuário

Quão confiável são, por exemplo, Excel, Matlab, R, Phyton etc.?Não é possível ou desejável, em geral, abrir o sistema.Aplicamos protocolos: situações reais ou construídas difíceis deserem resolvidas, mas para as quais temos a resposta exata.

4 / 42

Análise das propriedades numéricas de softwareO ponto de vista do usuário

Quão confiável são, por exemplo, Excel, Matlab, R, Phyton etc.?Não é possível ou desejável, em geral, abrir o sistema.Aplicamos protocolos: situações reais ou construídas difíceis deserem resolvidas, mas para as quais temos a resposta exata.

4 / 42

Análise das propriedades numéricas de softwareO ponto de vista do usuário

Fizemos isso para linguagens e plataformas de programação (R,Matlab, Phyton, SciLab, Octave, Ox) e para planilhas (Excel,Gnumeric, NeoOffice, Calc, Oleo), sempre que possível em trêssistemas operacionais (Windows, Linux, Mac OS) e dois tipos dehardware (i386 e amd64).Analisamos estatísticas básicas (média, desvio padrão,correlação), densidades e funções de distribuição acumuladas,regressão linear e não linear, estatística F do ANOVA, geração denúmeros pseudoaleatórios, e operações sobre matrizes.

5 / 42

Análise das propriedades numéricas de softwareO ponto de vista do usuário

Fizemos isso para linguagens e plataformas de programação (R,Matlab, Phyton, SciLab, Octave, Ox) e para planilhas (Excel,Gnumeric, NeoOffice, Calc, Oleo), sempre que possível em trêssistemas operacionais (Windows, Linux, Mac OS) e dois tipos dehardware (i386 e amd64).Analisamos estatísticas básicas (média, desvio padrão,correlação), densidades e funções de distribuição acumuladas,regressão linear e não linear, estatística F do ANOVA, geração denúmeros pseudoaleatórios, e operações sobre matrizes.

5 / 42

Por que é importante conhecer os defeitos (além dasvirtudes) desses dispositivos de software?

Deles dependem decisões bursáteis globais (Croll, 2009; Powell etal., 2009)Controle de sistemas (Aliane, 2008)Ensino de matemática (Bäckman, 2008)Treinamento de equipes de hospital (Dzik et al., 2008)Estudos de interação do álcool com drogas (Zoethout et al., 2008)Dosimetria em radioterapia (Bianchi et al., 2008; Roth, 2008)

6 / 42

Por que é importante conhecer os defeitos (além dasvirtudes) desses dispositivos de software?

Deles dependem decisões bursáteis globais (Croll, 2009; Powell etal., 2009)Controle de sistemas (Aliane, 2008)Ensino de matemática (Bäckman, 2008)Treinamento de equipes de hospital (Dzik et al., 2008)Estudos de interação do álcool com drogas (Zoethout et al., 2008)Dosimetria em radioterapia (Bianchi et al., 2008; Roth, 2008)

6 / 42

Por que é importante conhecer os defeitos (além dasvirtudes) desses dispositivos de software?

Deles dependem decisões bursáteis globais (Croll, 2009; Powell etal., 2009)Controle de sistemas (Aliane, 2008)Ensino de matemática (Bäckman, 2008)Treinamento de equipes de hospital (Dzik et al., 2008)Estudos de interação do álcool com drogas (Zoethout et al., 2008)Dosimetria em radioterapia (Bianchi et al., 2008; Roth, 2008)

6 / 42

Por que é importante conhecer os defeitos (além dasvirtudes) desses dispositivos de software?

Deles dependem decisões bursáteis globais (Croll, 2009; Powell etal., 2009)Controle de sistemas (Aliane, 2008)Ensino de matemática (Bäckman, 2008)Treinamento de equipes de hospital (Dzik et al., 2008)Estudos de interação do álcool com drogas (Zoethout et al., 2008)Dosimetria em radioterapia (Bianchi et al., 2008; Roth, 2008)

6 / 42

Por que é importante conhecer os defeitos (além dasvirtudes) desses dispositivos de software?

Deles dependem decisões bursáteis globais (Croll, 2009; Powell etal., 2009)Controle de sistemas (Aliane, 2008)Ensino de matemática (Bäckman, 2008)Treinamento de equipes de hospital (Dzik et al., 2008)Estudos de interação do álcool com drogas (Zoethout et al., 2008)Dosimetria em radioterapia (Bianchi et al., 2008; Roth, 2008)

6 / 42

Por que é importante conhecer os defeitos (além dasvirtudes) desses dispositivos de software?

Deles dependem decisões bursáteis globais (Croll, 2009; Powell etal., 2009)Controle de sistemas (Aliane, 2008)Ensino de matemática (Bäckman, 2008)Treinamento de equipes de hospital (Dzik et al., 2008)Estudos de interação do álcool com drogas (Zoethout et al., 2008)Dosimetria em radioterapia (Bianchi et al., 2008; Roth, 2008)

6 / 42

Resumo

1 Introdução

2 Precisão Numérica

3 Avaliação de planilhas

4 Avaliação de linguagens de programação/prototipação

7 / 42

Rationale

Não temos acesso ao código fonte das planilhas para verificar aqualidade numérica da implementaçãoA metodologia consiste em alimentar as planilhas com conjuntosde dados, e fazer operações para as quais sabemos as repostascertasFeito isso, compararemos as respostas fornecidas com as respostascertificadas

A seguir definiremos a comparação.

8 / 42

Rationale

Não temos acesso ao código fonte das planilhas para verificar aqualidade numérica da implementaçãoA metodologia consiste em alimentar as planilhas com conjuntosde dados, e fazer operações para as quais sabemos as repostascertasFeito isso, compararemos as respostas fornecidas com as respostascertificadas

A seguir definiremos a comparação.

8 / 42

Rationale

Não temos acesso ao código fonte das planilhas para verificar aqualidade numérica da implementaçãoA metodologia consiste em alimentar as planilhas com conjuntosde dados, e fazer operações para as quais sabemos as repostascertasFeito isso, compararemos as respostas fornecidas com as respostascertificadas

A seguir definiremos a comparação.

8 / 42

Rationale

Não temos acesso ao código fonte das planilhas para verificar aqualidade numérica da implementaçãoA metodologia consiste em alimentar as planilhas com conjuntosde dados, e fazer operações para as quais sabemos as repostascertasFeito isso, compararemos as respostas fornecidas com as respostascertificadas

A seguir definiremos a comparação.

8 / 42

Rationale

Não temos acesso ao código fonte das planilhas para verificar aqualidade numérica da implementaçãoA metodologia consiste em alimentar as planilhas com conjuntosde dados, e fazer operações para as quais sabemos as repostascertasFeito isso, compararemos as respostas fornecidas com as respostascertificadas

A seguir definiremos a comparação.

8 / 42

Log-Relative Error

Definição

LRE(x, c) =

{− log10

|x−c||c| se c 6= 0

− log10 |x| caso contrário

Valores ótimos: 7 para ponto flutuante e 16 para precisão dupla.

Se x = 0.01521 e c = 0.01522, então LRE(x, c) = 3.182415,Se x = 0.000001521 e c = 0.000001522, então LRE(x, c) = 3.182415

9 / 42

Log-Relative Error

Definição

LRE(x, c) =

{− log10

|x−c||c| se c 6= 0

− log10 |x| caso contrário

Valores ótimos: 7 para ponto flutuante e 16 para precisão dupla.

Se x = 0.01521 e c = 0.01522, então LRE(x, c) = 3.182415,Se x = 0.000001521 e c = 0.000001522, então LRE(x, c) = 3.182415

9 / 42

Dados

Statistical Reference Datasets (StRD)National Institute of Standards and Technology (NIST)Classificação: low, average e highTipo de dados: observados (reais) e construídosDígitos significativos: 15 (StRD), 11 (StRD - Regressão Não

Linear) ou 6 (Mathematica)Resultados analíticos, Mathematica e outras plataformas desoftware amplamente validadas

10 / 42

Funcionalidades analisadas

Média AmostralDesvio PadrãoCoeficiente de Autocorrelação de Primeira OrdemEstatístico F de ANOVARegresões Linear e Não LinearGeração de Números Pseudo-AleatóriosVárias Funções de DistribuiçãoOperações sobre matrizes (somente para Matlab, Octave e SciLab)

Sempre que possível, verifica-se que o algoritmo empregado pelaplataforma seja o mesmo utilizado para obter o valor certificado.

11 / 42

Resumo

1 Introdução

2 Precisão Numérica

3 Avaliação de planilhas

4 Avaliação de linguagens de programação/prototipação

12 / 42

Planilhas Avaliadas

Plataformas avaliadasMicrosoft ExcelOpenOficce.org CalcGNU GnumericNeoOffice CalcGNU Oleo

MotivaçãoDifundidasPortáveisSofisticadas, em teseUsabilidade (mamãe!)Necessitam de poucosrecursos

13 / 42

Planilhas Avaliadas

Plataformas avaliadasMicrosoft ExcelOpenOficce.org CalcGNU GnumericNeoOffice CalcGNU Oleo

MotivaçãoDifundidasPortáveisSofisticadas, em teseUsabilidade (mamãe!)Necessitam de poucosrecursos

13 / 42

Planilhas Avaliadas

Plataformas avaliadasMicrosoft ExcelOpenOficce.org CalcGNU GnumericNeoOffice CalcGNU Oleo

MotivaçãoDifundidasPortáveisSofisticadas, em teseUsabilidade (mamãe!)Necessitam de poucosrecursos

13 / 42

Planilhas Avaliadas

Plataformas avaliadasMicrosoft ExcelOpenOficce.org CalcGNU GnumericNeoOffice CalcGNU Oleo

MotivaçãoDifundidasPortáveisSofisticadas, em teseUsabilidade (mamãe!)Necessitam de poucosrecursos

13 / 42

Planilhas Avaliadas

Plataformas avaliadasMicrosoft ExcelOpenOficce.org CalcGNU GnumericNeoOffice CalcGNU Oleo

MotivaçãoDifundidasPortáveisSofisticadas, em teseUsabilidade (mamãe!)Necessitam de poucosrecursos

13 / 42

Planilhas Avaliadas

Plataformas avaliadasMicrosoft ExcelOpenOficce.org CalcGNU GnumericNeoOffice CalcGNU Oleo

MotivaçãoDifundidasPortáveisSofisticadas, em teseUsabilidade (mamãe!)Necessitam de poucosrecursos

13 / 42

Média Amostral

xn =1n

n

∑i=1

xi =n− 1

nxn−1 +

1n

xn

Datasets Cal

c

Exce

l

Gnu

mer

ic

Neo

Offi

ce

Ole

o

Lew (l) 15.0 15.0 15.0 15.0 15.0Lottery (l) 15.0 15.0 15.0 15.0 15.0Mavro (l) 15.0 15.0 15.0 15.0 15.0Michelso (l) 15.0 15.0 15.0 15.0 15.0NumAcc1 (l) 15.0 15.0 15.0 15.0 6.6PiDigits (l) 15.0 15.0 15.0 15.0 15.0NumAcc2 (a) 14.0 14.0 15.0 14.0 13.9NumAcc3 (a) 15.0 15.0 15.0 15.0 6.6NumAcc4 (h) 13.9 13.9 15.0 13.9 7.6

14 / 42

Média Amostral

xn =1n

n

∑i=1

xi =n− 1

nxn−1 +

1n

xn

Datasets Cal

c

Exce

l

Gnu

mer

ic

Neo

Offi

ce

Ole

o

Lew (l) 15.0 15.0 15.0 15.0 15.0Lottery (l) 15.0 15.0 15.0 15.0 15.0Mavro (l) 15.0 15.0 15.0 15.0 15.0Michelso (l) 15.0 15.0 15.0 15.0 15.0NumAcc1 (l) 15.0 15.0 15.0 15.0 6.6PiDigits (l) 15.0 15.0 15.0 15.0 15.0NumAcc2 (a) 14.0 14.0 15.0 14.0 13.9NumAcc3 (a) 15.0 15.0 15.0 15.0 6.6NumAcc4 (h) 13.9 13.9 15.0 13.9 7.6

14 / 42

Desvio Padrão

sn =

√1n

n

∑i=1

(xi − xn)2 =n− 1

nsn−1 +

1n− 1

(xn − xn)2

Datasets Cal

c

Exce

l07

Exce

l08

Gnu

mer

ic

Neo

Offi

ce

Ole

o

Lew (l) 15.0 15.0 15.0 15.0 15.0 15.0Lottery (l) 15.0 15.0 15.0 15.0 15.0 15.0Mavro (l) 12.9 12.9 9.4 12.9 12.9 8.8Michelso (l) 13.8 13.8 8.2 13.8 13.8 8.2NumAcc1 (l) 15.0 15.0 15.0 15.0 15.0 –PiDigits (l) 15.0 15.0 15.0 15.0 15.0 15.0NumAcc2 (a) 15.0 11.5 11.5 15.0 15.0 12.5NumAcc3 (a) 9.4 9.4 1.4 9.4 9.4 –NumAcc4 (h) 8.2 8.2 0.0 8.2 8.2 –

15 / 42

Desvio Padrão

sn =

√1n

n

∑i=1

(xi − xn)2 =n− 1

nsn−1 +

1n− 1

(xn − xn)2

Datasets Cal

c

Exce

l07

Exce

l08

Gnu

mer

ic

Neo

Offi

ce

Ole

o

Lew (l) 15.0 15.0 15.0 15.0 15.0 15.0Lottery (l) 15.0 15.0 15.0 15.0 15.0 15.0Mavro (l) 12.9 12.9 9.4 12.9 12.9 8.8Michelso (l) 13.8 13.8 8.2 13.8 13.8 8.2NumAcc1 (l) 15.0 15.0 15.0 15.0 15.0 –PiDigits (l) 15.0 15.0 15.0 15.0 15.0 15.0NumAcc2 (a) 15.0 11.5 11.5 15.0 15.0 12.5NumAcc3 (a) 9.4 9.4 1.4 9.4 9.4 –NumAcc4 (h) 8.2 8.2 0.0 8.2 8.2 –

15 / 42

Coeficiente de Autocorrelação

r(1)n =1

(n− 1)s2n

n

∑i=1

(xi−1 − xn)(xi − xn)

Calc Excel NeoOfficeDatasets †/‡ 07/08 Gnumeric 2.2.5/3.0

Lew (l) 5.0 5.0 5.0 5.0Lottery (l) 3.5 3.5 3.5 3.5Mavro (l) 4.1 4.1 4.1 4.1Michelso (l) 5.9 5.9/5.8 5.9 5.9NumAcc1 (l) 15.0 15.0 15.0 15.0PiDigits (l) 5.3 5.3 5.3 5.3NumAcc2 (a) 14.4/15.0 11.3 15.0 11.5/15.0NumAcc3 (a) 12.3 12.3/0.9 12.2 –/12.2NumAcc4 (h) 11.0 11.0/NA 11.0 –/11.0†Versão para Ubuntu‡Versões para Mac OS e Windows

16 / 42

ANOVA

Datasets Excel 07 Gnumeric

SiRstv (l) 13.0 13.0SmLs01 (l) 15.0 15.0SmLs02 (l) 13.8 15.0SmLs03 (l) 13.0 15.0AtmWtAg (a) 10.1 10.1SmLs04 (a) 10.4 10.4SmLs05 (a) 10.2 10.2SmLs06 (a) 10.1 10.1SmLs07 (h) 4.1 4.4SmLs08 (h) 1.8 4.1SmLs09 (h) – 4.1

17 / 42

Regressão Linear

Excel 2007 apresenta os melhores resultados, divergindo em umcaso do Excel 2008 (pior).Em apenas dois datasets atingiu-se 15 dígitos de precisão.

18 / 42

Regressão Linear

Excel 2007 apresenta os melhores resultados, divergindo em umcaso do Excel 2008 (pior).Em apenas dois datasets atingiu-se 15 dígitos de precisão.

18 / 42

Regressão Não Linear

Nenhuma das planilhas apresenta resultados confiáveis.Os melhores resultados obtidos provém de algoritmosnão-determinísticos nas planilhas OpenOffice.org Calc eNeoOffice Calc

19 / 42

Regressão Não Linear

Nenhuma das planilhas apresenta resultados confiáveis.Os melhores resultados obtidos provém de algoritmosnão-determinísticos nas planilhas OpenOffice.org Calc eNeoOffice Calc

19 / 42

Regressão Não Linear

20 / 42

Geradores de Números Pseudo-Aleatórios

Propriedades desejadas1 distribuição uniforme;2 vetores de ocorrências de variáveis aleatórias independentes para

vetores de tamanho moderado;3 reproducibilidade (via semente);4 velocidade;5 período longo.

Calc Excel

2007

Excel

2008

Gnumer

ic

NeoOffi

ce

Oleo

Documentação " "% % " % %

21 / 42

Geradores de Números Pseudo-Aleatórios

Propriedades desejadas1 distribuição uniforme;2 vetores de ocorrências de variáveis aleatórias independentes para

vetores de tamanho moderado;3 reproducibilidade (via semente);4 velocidade;5 período longo.

Calc Excel

2007

Excel

2008

Gnumer

ic

NeoOffi

ce

Oleo

Documentação " "% % " % %

Semente % " % % % %

21 / 42

Alguns resultados

Nenhuma das planilhas apresenta resultados confiáveis.Para muitas das distruições avaliadas Gnumeric apresenta bonsresultados.Nenhuma planilha conseque sequer um dígito de precisão paraduas distribuições.Simulações Monte Carlo não devem ser processadas em planilhas.

22 / 42

Alguns resultados

Nenhuma das planilhas apresenta resultados confiáveis.Para muitas das distruições avaliadas Gnumeric apresenta bonsresultados.Nenhuma planilha conseque sequer um dígito de precisão paraduas distribuições.Simulações Monte Carlo não devem ser processadas em planilhas.

22 / 42

Alguns resultados

Nenhuma das planilhas apresenta resultados confiáveis.Para muitas das distruições avaliadas Gnumeric apresenta bonsresultados.Nenhuma planilha conseque sequer um dígito de precisão paraduas distribuições.Simulações Monte Carlo não devem ser processadas em planilhas.

22 / 42

Alguns resultados

Nenhuma das planilhas apresenta resultados confiáveis.Para muitas das distruições avaliadas Gnumeric apresenta bonsresultados.Nenhuma planilha conseque sequer um dígito de precisão paraduas distribuições.Simulações Monte Carlo não devem ser processadas em planilhas.

22 / 42

Conclusões

Nenhuma das planilhas é confiável para fins estatísticos sérios.Oleo deve ser utilizado somente quando não houverdisponibilidade de interface gráfica.Experimentos Monte Carlo não devem ser realizados emplanilhas eletrônicas.Aconselha-se utilizar outras plataformas, sendo R a maisrecomendável.

23 / 42

Conclusões

Nenhuma das planilhas é confiável para fins estatísticos sérios.Oleo deve ser utilizado somente quando não houverdisponibilidade de interface gráfica.Experimentos Monte Carlo não devem ser realizados emplanilhas eletrônicas.Aconselha-se utilizar outras plataformas, sendo R a maisrecomendável.

23 / 42

Conclusões

Nenhuma das planilhas é confiável para fins estatísticos sérios.Oleo deve ser utilizado somente quando não houverdisponibilidade de interface gráfica.Experimentos Monte Carlo não devem ser realizados emplanilhas eletrônicas.Aconselha-se utilizar outras plataformas, sendo R a maisrecomendável.

23 / 42

Conclusões

Nenhuma das planilhas é confiável para fins estatísticos sérios.Oleo deve ser utilizado somente quando não houverdisponibilidade de interface gráfica.Experimentos Monte Carlo não devem ser realizados emplanilhas eletrônicas.Aconselha-se utilizar outras plataformas, sendo R a maisrecomendável.

23 / 42

Brian D. Ripley“Let’s not kid ourselves: the most widely used piece of software

for statistics is Excel.”

(’Statistical Methods Need Software: A View of Statistical Computing’,RSS 2002)

24 / 42

Jonathan D. Cryer“Friends don’t let friends use Excel for statistics!”

(JSM 2001, Atlanta)

25 / 42

Resumo

1 Introdução

2 Precisão Numérica

3 Avaliação de planilhas

4 Avaliação de linguagens de programação/prototipação

26 / 42

Metodologia

A mesma metodologia foi aplicada a Octave, (academic) Ox, Python,R, SciLab e Matlab.Em alguns casos acrescentamos um estudo Monte Carlo daestabilidade dos resultados (omitido aqui por brevidade).

27 / 42

Estatísticas básicasMédia

Platform OS PiDi

gits

Lott

ery

Lew

Mavr

o

Mich

elso

Numa

cc1

Numa

cc2

Numa

cc3

Numa

cc4

OctaveWindows Inf(0) Inf(0.99) Inf(0) Inf(0.04) Inf(0.04) Inf Inf Inf Inf

Linux Inf(0.04) Inf(10.44) Inf(11.45) Inf(11.35) Inf(10.94) Inf Inf Inf InfMac Os Inf(0) Inf(0.99) Inf(0) Inf(0.33) Inf(0.43) Inf Inf 14.0 Inf

MatLab Windows 16.0(0) 15.1(0.89) 16.0(0) 16.0(0.35) 15.4(10.87) 16.0 14.0 15.0 13.9Linux 16.0(0) 16.0(0.03) 16.0(0) 16.0(0.35) 16.0(11.48) 16.0 14.0 14.0 13.9

ScilabWindows Inf(0.04) 8.1(6.28) Inf(0) Inf(0.04) Inf(0.04) Inf Inf Inf 7.7

Linux Inf(0) 8.1(7.92) Inf(0) Inf(0.33) Inf(0.43) Inf Inf Inf 7.7Mac OS Inf(0) 8.1(7.92) Inf(0) Inf(0.33) Inf(0.43) Inf Inf Inf 7.7

28 / 42

Estatísticas básicasDesvio padrão

Platform OS PiDi

gits

Lott

ery

Lew

Mavr

o

Mich

elso

Numa

cc1

Numa

cc2

Numa

cc3

Numa

cc4

OctaveWindows Inf(0.88) Inf(0.24) Inf(0.87) 13.1(2.94) 13.9(1.96) Inf Inf 9.5 8.3

Linux Inf(11.08) Inf(9.88) Inf(10.80) 13.1(10.88) 13.9(10.88) Inf Inf 8.3 InfMac Os Inf(1.76) Inf(0.35) Inf(0.42) 13.1(2.75) 13.8(1.99) Inf Inf 9.5 8.3

MatLab Windows 14.8(0.70) 16.0(0.35) 15.2(0.53) 13.8(2.06) 13.9(12.85) 16.0 16.0 9.4 8.2Linux 14.8((0.70) 16.0(0.35) 16.0(0.41) 13.8(2.06) 13.9(12.85) 16.0 16.0 9.4 8.2

ScilabWindows 7.9(4.79) 8.1(6.12) 8.2(6.01) 4.1(6.33) 6.2(6.5) Inf Inf Inf Inf

Linux 7.9(8.01) 8.1(7.67) 8.2(7.5) 4.1(11.79) 6.2(9.62) Inf Inf Inf InfMac OS 7.9(6.47) 8.1(7.67) 8.2(7.41) 4.1(11.59) 6.2(9.62) Inf Inf Inf Inf

29 / 42

Estatísticas básicasCorrelação de primeira ordem

Platform OS PiDi

gits

Lott

ery

Lew

Mavr

o

Mich

elso

Numa

cc1

Numa

cc2

Numa

cc3

Numa

cc4

OctaveWindows 4.0(0.48) 2.1(0.67) 2.6(0.75) 1.8(0.56) 3.6(1.90) 0 3.0 3.0 3.0

Linux 4.0(2.10) 2.1(0.60) 2.6(0.50) 1.8(0.55) 3.6(1.81) 0 3.3 3.3 3.3Mac Os 4.0(1.05) 2.1(0.67) 2.6(0.75) 1.8(0.58) 3.6(1.52) 0 3.0 3.0 3.0

MatLab Windows 3.9(6.06) 2.0(3.49) 2.6(4.08) 1.7(2.78) 3.5(4.82) 0 3.3 3.3 3.3Linux 3.9(6.06) 2.0(3.49) 2.6(4.08) 1.7(2.78) 3.5(4.82) 0 3.3 3.3 3.3

ScilabWindows – – – 0(1.75) 0(2.09) 0.5 0 0 0

Linux – – – 0(2.09) 0(2.09) 0.5 0 0 0Mac OS – 0(2.39) 0(2.40) 0(1.75) 0(2.09) 0.5 0 0 0

30 / 42

Conclusões sobre estatísticas básicas

Octave sofre para calcular a média de dados de baixacomplexidade, mas é o melhor para o desvio padrão (SciLab é opior para este último).SciLab é também a pior plataforma para a correlação, masnenhuma se saiu bem.

31 / 42

Funções de distribuiçãoA lei t-Student

Pr(X > x) = p Matlab Octave Scilab

p Certified x Win Lin Win Lin Mac Win Lin Mac

1E-8 3.18310E+07 0 0 0 0 0 6.0 6.0 6.01E-11 3.18310E+10 0 0 0 0 0 6.0 6.0 6.01E-12 3.18310E+11 – – – – – 6.0 6.0 6.01E-13 3.18310E+12 0 0 0 0 0 6.0 6.0 6.0

1E-100 3.18310E+99 – – – – – 8.0 8.0 0

32 / 42

Funções de distribuiçãoA lei Poisson

Prλ=200(X = k) Matlab Octave Scilab

k Certificado Win Lin Win Lin Mac Win Lin Mac

0 1.38390E-87 5.6 5.6 6.0 6.0 6.0 7.0 7.0 7.0103 1.41720E-14 1.4 1.4 1.0 1.0 1.0 2.0 0 0315 1.41948E-14 0 0 0 0 0 0 0 0400 5.58069E-36 6.4 6.4 6.0 6.0 6.0 0 0 0900 1.73230E-286 6.0 6.0 6.0 6.0 6.0 0 0 0

33 / 42

Funções de distribuiçãoA lei Poisson

Prλ=200(X = k) Matlab Octave Scilab

k Certificado Win Lin Win Lin Mac Win Lin Mac

0 1.38390E-87 5.6 5.6 6.0 6.0 6.0 7.0 7.0 7.0103 1.41720E-14 1.4 1.4 1.0 1.0 1.0 2.0 0 0315 1.41948E-14 0 0 0 0 0 0 0 0400 5.58069E-36 6.4 6.4 6.0 6.0 6.0 0 0 0900 1.73230E-286 6.0 6.0 6.0 6.0 6.0 0 0 0

Prλ(X ≤ k) Matlab Octave Scilab

k λ Certificado Win Lin Win Lin Mac Win Lin Mac

1E+05 1E+05 0.500841 1.0 1.0 1.0 1.2 1.0 7.0 7.0 7.01E+07 1E+07 0.500084 7.0 7.0 7.0 7.0 7.0 6.0 6.0 6.01E+09 1E+09 0.500008 7.0 7.0 7.0 7.0 7.0 6.0 6.0 6.0

33 / 42

MatrizesAvaliação do determinante

A matriz

M =

(b bε

s/ε s

)tem determinante nulo para quaisquer b, s, ε.Esse determinante é calculado garantindo que sejam feitas asoperações (bε) e (s/ε), e o aferimos com b = 10j e s = 10−j, paraj ∈ 0, 1, . . . , 15, e

ε = 0. 9 · · · 9︸ ︷︷ ︸k vezes

, k ∈ {1, . . . , 15}.

Foi verificada a igualdade, não o número de dígitos corretos.Das 16× 15 = 240 situações consideradas, todas as plataformasacertaram em 146, ou seja 60% dos casos.

34 / 42

Análise espectral de grafosGrafos bipartidos

Grafo bipartido K5,3:

w8w7w6

w5w4 w1w3w2

A matriz laplaciana do grafo G é a diferença entre a matriz diagonal degraus D e a matriz de adjacência A.

35 / 42

Análise espectral de grafos

Os autovalores da matriz laplaciana de grafos bipartidos Km,n têm váriaspropriedades interessantes: λ1 = 0, λm+n = m + n, há n− 1 autovalores quevalem m, e m− 1 autovalores que valem n.Analisamos situações de balanceamento quase perfeito (Km,m+1) e situaçõescom quase o pior balanceamento possível (K2,2m−1), para m ∈ {9, 99, 999}.Verificamos a precisão de vários autovalores, bem como decisões baseadas naigualdade ao valor teórico.

Quanto maior o grafo, pior o resultado

A igual tamanho, desbalanceado é pior

O primeiro e último autovalores retornam bons resultados, sendomelhor o segundo

Sugestão: calcular em precisão dupla, e tomar as decisões em pontoflutuante

36 / 42

Análise espectral de grafos

Os autovalores da matriz laplaciana de grafos bipartidos Km,n têm váriaspropriedades interessantes: λ1 = 0, λm+n = m + n, há n− 1 autovalores quevalem m, e m− 1 autovalores que valem n.Analisamos situações de balanceamento quase perfeito (Km,m+1) e situaçõescom quase o pior balanceamento possível (K2,2m−1), para m ∈ {9, 99, 999}.Verificamos a precisão de vários autovalores, bem como decisões baseadas naigualdade ao valor teórico.

Quanto maior o grafo, pior o resultado

A igual tamanho, desbalanceado é pior

O primeiro e último autovalores retornam bons resultados, sendomelhor o segundo

Sugestão: calcular em precisão dupla, e tomar as decisões em pontoflutuante

36 / 42

Análise espectral de grafos

Os autovalores da matriz laplaciana de grafos bipartidos Km,n têm váriaspropriedades interessantes: λ1 = 0, λm+n = m + n, há n− 1 autovalores quevalem m, e m− 1 autovalores que valem n.Analisamos situações de balanceamento quase perfeito (Km,m+1) e situaçõescom quase o pior balanceamento possível (K2,2m−1), para m ∈ {9, 99, 999}.Verificamos a precisão de vários autovalores, bem como decisões baseadas naigualdade ao valor teórico.

Quanto maior o grafo, pior o resultado

A igual tamanho, desbalanceado é pior

O primeiro e último autovalores retornam bons resultados, sendomelhor o segundo

Sugestão: calcular em precisão dupla, e tomar as decisões em pontoflutuante

36 / 42

Análise espectral de grafos

Os autovalores da matriz laplaciana de grafos bipartidos Km,n têm váriaspropriedades interessantes: λ1 = 0, λm+n = m + n, há n− 1 autovalores quevalem m, e m− 1 autovalores que valem n.Analisamos situações de balanceamento quase perfeito (Km,m+1) e situaçõescom quase o pior balanceamento possível (K2,2m−1), para m ∈ {9, 99, 999}.Verificamos a precisão de vários autovalores, bem como decisões baseadas naigualdade ao valor teórico.

Quanto maior o grafo, pior o resultado

A igual tamanho, desbalanceado é pior

O primeiro e último autovalores retornam bons resultados, sendomelhor o segundo

Sugestão: calcular em precisão dupla, e tomar as decisões em pontoflutuante

36 / 42

Solução?Não há solução senão a vigilância constante.

Algumas linhas de pesquisa

� Avaliação continuada� Plataforma Web para avaliação

� Proposta de novos protocolos

� Avaliação de outras plataformas

39 / 42

Referencias I

Aliane, N. (2008), ‘Spreadsheet-based control system analysis and design – acommand-oriented toolbox for education’, IEEE Control Systems Magazine28(5), 108–113.

Almeida, E. S., Medeiros, A. C. & Frery, A. C. (2012), ‘How good are Matlab, Octaveand Scilab for computational modelling?’, Computational and Applied Mathematics31(3), 523–538. URL http://ref.scielo.org/wx9rvn.

Almiron, M., Almeida, E. S. & Miranda, M. (2009), ‘The reliability of statisticalfunctions in four software packages freely used in numerical computation’,Brazilian Journal of Probability and Statistics Special Issue on Statistical Image andSignal Processing, 107–119. URL http://www.imstat.org/bjps/.

Almiron, M., Vieira, B. L., Oliveira, A. L. C., Medeiros, A. C. & Frery, A. C. (2010), ‘Onthe numerical accuracy of spreadsheets’, Journal of Statistical Software 34(4), 1–29.URL http://www.jstatsoft.org/v34/i04.

Bäckman, S. (2008), ‘Microeconomics using Excel c©: Integrating economic theory,policy analysis and spreadsheet modelling’, European Review of AgriculturalEconomics 35(2), 247–248.

40 / 42

Referencias IIBianchi, C., Botta, F., Conte, L., Vanoli, P. & Cerizza, L. (2008), ‘Biological effective

dose evaluation in gynaecological brachytherapy: LDR and HDR treatments,dependence on radiobiological parameters, and treatment optimisation’, RadiologiaMedica 113(7), 1068–1078.

Bollobas, B. (1998), Modern Graph Theory, Springer.

Croll, G. J. (2009), Spreadsheets and the financial collapse, in ‘Proceedings of theEuropean Spreadsheet Risks Interest Group’, pp. 145–161. URLhttp://arxiv.org/pdf/0908.4420, Last checked on January 31, 2010.

Dzik, W. S., Beckman, N., Selleng, K., Heddle, N., Szczepiorkowski, Z., Wendel, S. &Murphy, M. (2008), ‘Errors in patient specimen collection: application of statisticalprocess control’, Transfusion 48(10), 2143–2151.

Powell, S. G., Baker, K. R. & Lawson, B. (2009), ‘Impact of errors in operationalspreadsheets’, Decision Support Systems 47, 126–132.

Roth, J. (2008), ‘Ergebnisse von qualitätskontrollen der individuellen patientendosenin der radioonkologie’, Strahlentherapie und Onkologie 184(10), 505–509.

Zoethout, R. W. M., van Gerven, J. M. A., Dumont, G. J. H., Paltansing, S., van Burgel,N. D., van der Linden, M., Dahan, A., Cohen, A. F. & Schoemaker, R. C. (2008), ‘Acomparative study of two methods for attaining constant alcohol levels’, BritishJournal of Clinical Pharmacology 66(5), 674–681.

41 / 42

ContatoAlejandro C. Freryacfrery@gmail.comhttp://sites.google.com/site/acfreryMestrado em Modelagem Computacional de Conhecimento