1. O documento discute a análise numérica aplicada e a precisão de softwares como planilhas e linguagens de programação.
2. Serão avaliadas planilhas como Excel, Calc e Gnumeric, alimentando-as com conjuntos de dados para operações como média, desvio padrão e regressão. As respostas serão comparadas a valores certificados.
3. Também serão avaliadas linguagens de programação como R, Matlab e Python, analisando funcionalidades como geração de números aleatórios e operações de matrizes.
1. Análise Numérica Aplicada
Mamãe, o Excel dá errado!
Alejandro C. Frery
LaCCAN
Laboratório de Computação Científica
e Análise Numérica
Universidade Federal de Alagoas
XIII ERBASE
1 / 42
2. Por que esse tema e esse título?
As razões que me levaram a propor esse tema e esse título são as
seguintes:
1 A análise numérica é um assunto “em baixa” na nossa
comunidade. Muito embora seja medular para a Ciência da
Computação, ele é mais frequentemente trabalhado pelo pessoal
da Matemática Aplicada.
2 A Análise Numérica clássica requer habilidades matemáticas não
triviais, mas veremos um viés diferente: o da Análise Numérica
Aplicada.
3 O Excel c está presente em quase todo lugar... e veremos que a
qualidade das suas respostas é duvidosa.
4 O Matlab c é praticamente uma commodity... e nem sempre é
confiável.
2 / 42
3. Por que esse tema e esse título?
As razões que me levaram a propor esse tema e esse título são as
seguintes:
1 A análise numérica é um assunto “em baixa” na nossa
comunidade. Muito embora seja medular para a Ciência da
Computação, ele é mais frequentemente trabalhado pelo pessoal
da Matemática Aplicada.
2 A Análise Numérica clássica requer habilidades matemáticas não
triviais, mas veremos um viés diferente: o da Análise Numérica
Aplicada.
3 O Excel c está presente em quase todo lugar... e veremos que a
qualidade das suas respostas é duvidosa.
4 O Matlab c é praticamente uma commodity... e nem sempre é
confiável.
2 / 42
4. Por que esse tema e esse título?
As razões que me levaram a propor esse tema e esse título são as
seguintes:
1 A análise numérica é um assunto “em baixa” na nossa
comunidade. Muito embora seja medular para a Ciência da
Computação, ele é mais frequentemente trabalhado pelo pessoal
da Matemática Aplicada.
2 A Análise Numérica clássica requer habilidades matemáticas não
triviais, mas veremos um viés diferente: o da Análise Numérica
Aplicada.
3 O Excel c está presente em quase todo lugar... e veremos que a
qualidade das suas respostas é duvidosa.
4 O Matlab c é praticamente uma commodity... e nem sempre é
confiável.
2 / 42
5. Por que esse tema e esse título?
As razões que me levaram a propor esse tema e esse título são as
seguintes:
1 A análise numérica é um assunto “em baixa” na nossa
comunidade. Muito embora seja medular para a Ciência da
Computação, ele é mais frequentemente trabalhado pelo pessoal
da Matemática Aplicada.
2 A Análise Numérica clássica requer habilidades matemáticas não
triviais, mas veremos um viés diferente: o da Análise Numérica
Aplicada.
3 O Excel c está presente em quase todo lugar... e veremos que a
qualidade das suas respostas é duvidosa.
4 O Matlab c é praticamente uma commodity... e nem sempre é
confiável.
2 / 42
6. 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
7. Análise das propriedades numéricas de software
O 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 de
serem resolvidas, mas para as quais temos a resposta exata.
4 / 42
8. Análise das propriedades numéricas de software
O 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 de
serem resolvidas, mas para as quais temos a resposta exata.
4 / 42
9. Análise das propriedades numéricas de software
O 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 de
serem resolvidas, mas para as quais temos a resposta exata.
4 / 42
10. Análise das propriedades numéricas de software
O 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ês
sistemas operacionais (Windows, Linux, Mac OS) e dois tipos de
hardware (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 de
números pseudoaleatórios, e operações sobre matrizes.
5 / 42
11. Análise das propriedades numéricas de software
O 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ês
sistemas operacionais (Windows, Linux, Mac OS) e dois tipos de
hardware (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 de
números pseudoaleatórios, e operações sobre matrizes.
5 / 42
12. Por que é importante conhecer os defeitos (além das
virtudes) desses dispositivos de software?
Deles dependem decisões bursáteis globais (Croll, 2009; Powell et
al., 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
13. Por que é importante conhecer os defeitos (além das
virtudes) desses dispositivos de software?
Deles dependem decisões bursáteis globais (Croll, 2009; Powell et
al., 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
14. Por que é importante conhecer os defeitos (além das
virtudes) desses dispositivos de software?
Deles dependem decisões bursáteis globais (Croll, 2009; Powell et
al., 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
15. Por que é importante conhecer os defeitos (além das
virtudes) desses dispositivos de software?
Deles dependem decisões bursáteis globais (Croll, 2009; Powell et
al., 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
16. Por que é importante conhecer os defeitos (além das
virtudes) desses dispositivos de software?
Deles dependem decisões bursáteis globais (Croll, 2009; Powell et
al., 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
17. Por que é importante conhecer os defeitos (além das
virtudes) desses dispositivos de software?
Deles dependem decisões bursáteis globais (Croll, 2009; Powell et
al., 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
18. 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
19. Rationale
Não temos acesso ao código fonte das planilhas para verificar a
qualidade numérica da implementação
A metodologia consiste em alimentar as planilhas com conjuntos
de dados, e fazer operações para as quais sabemos as repostas
certas
Feito isso, compararemos as respostas fornecidas com as respostas
certificadas
A seguir definiremos a comparação.
8 / 42
20. Rationale
Não temos acesso ao código fonte das planilhas para verificar a
qualidade numérica da implementação
A metodologia consiste em alimentar as planilhas com conjuntos
de dados, e fazer operações para as quais sabemos as repostas
certas
Feito isso, compararemos as respostas fornecidas com as respostas
certificadas
A seguir definiremos a comparação.
8 / 42
21. Rationale
Não temos acesso ao código fonte das planilhas para verificar a
qualidade numérica da implementação
A metodologia consiste em alimentar as planilhas com conjuntos
de dados, e fazer operações para as quais sabemos as repostas
certas
Feito isso, compararemos as respostas fornecidas com as respostas
certificadas
A seguir definiremos a comparação.
8 / 42
22. Rationale
Não temos acesso ao código fonte das planilhas para verificar a
qualidade numérica da implementação
A metodologia consiste em alimentar as planilhas com conjuntos
de dados, e fazer operações para as quais sabemos as repostas
certas
Feito isso, compararemos as respostas fornecidas com as respostas
certificadas
A seguir definiremos a comparação.
8 / 42
23. Rationale
Não temos acesso ao código fonte das planilhas para verificar a
qualidade numérica da implementação
A metodologia consiste em alimentar as planilhas com conjuntos
de dados, e fazer operações para as quais sabemos as repostas
certas
Feito isso, compararemos as respostas fornecidas com as respostas
certificadas
A seguir definiremos a comparação.
8 / 42
24. Log-Relative Error
Definição
LRE(x, c) =
− log10
|x−c|
|c|
se c = 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
25. Log-Relative Error
Definição
LRE(x, c) =
− log10
|x−c|
|c|
se c = 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
26. Dados
Statistical Reference Datasets (StRD)
National Institute of Standards and Technology (NIST)
Classificação: low, average e high
Tipo de dados: observados (reais) e construídos
Dígitos significativos: 15 (StRD), 11 (StRD - Regressão Não
Linear) ou 6 (Mathematica)
Resultados analíticos, Mathematica e outras plataformas de
software amplamente validadas
10 / 42
27. Funcionalidades analisadas
Média Amostral
Desvio Padrão
Coeficiente de Autocorrelação de Primeira Ordem
Estatístico F de ANOVA
Regresões Linear e Não Linear
Geração de Números Pseudo-Aleatórios
Várias Funções de Distribuição
Operações sobre matrizes (somente para Matlab, Octave e SciLab)
Sempre que possível, verifica-se que o algoritmo empregado pela
plataforma seja o mesmo utilizado para obter o valor certificado.
11 / 42
28. 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
29. Planilhas Avaliadas
Plataformas avaliadas
Microsoft Excel
OpenOficce.org Calc
GNU Gnumeric
NeoOffice Calc
GNU Oleo
Motivação
Difundidas
Portáveis
Sofisticadas, em tese
Usabilidade (mamãe!)
Necessitam de poucos
recursos
13 / 42
30. Planilhas Avaliadas
Plataformas avaliadas
Microsoft Excel
OpenOficce.org Calc
GNU Gnumeric
NeoOffice Calc
GNU Oleo
Motivação
Difundidas
Portáveis
Sofisticadas, em tese
Usabilidade (mamãe!)
Necessitam de poucos
recursos
13 / 42
31. Planilhas Avaliadas
Plataformas avaliadas
Microsoft Excel
OpenOficce.org Calc
GNU Gnumeric
NeoOffice Calc
GNU Oleo
Motivação
Difundidas
Portáveis
Sofisticadas, em tese
Usabilidade (mamãe!)
Necessitam de poucos
recursos
13 / 42
32. Planilhas Avaliadas
Plataformas avaliadas
Microsoft Excel
OpenOficce.org Calc
GNU Gnumeric
NeoOffice Calc
GNU Oleo
Motivação
Difundidas
Portáveis
Sofisticadas, em tese
Usabilidade (mamãe!)
Necessitam de poucos
recursos
13 / 42
33. Planilhas Avaliadas
Plataformas avaliadas
Microsoft Excel
OpenOficce.org Calc
GNU Gnumeric
NeoOffice Calc
GNU Oleo
Motivação
Difundidas
Portáveis
Sofisticadas, em tese
Usabilidade (mamãe!)
Necessitam de poucos
recursos
13 / 42
34. Planilhas Avaliadas
Plataformas avaliadas
Microsoft Excel
OpenOficce.org Calc
GNU Gnumeric
NeoOffice Calc
GNU Oleo
Motivação
Difundidas
Portáveis
Sofisticadas, em tese
Usabilidade (mamãe!)
Necessitam de poucos
recursos
13 / 42
41. Regressão Linear
Excel 2007 apresenta os melhores resultados, divergindo em um
caso do Excel 2008 (pior).
Em apenas dois datasets atingiu-se 15 dígitos de precisão.
18 / 42
42. Regressão Linear
Excel 2007 apresenta os melhores resultados, divergindo em um
caso do Excel 2008 (pior).
Em apenas dois datasets atingiu-se 15 dígitos de precisão.
18 / 42
43. Regressão Não Linear
Nenhuma das planilhas apresenta resultados confiáveis.
Os melhores resultados obtidos provém de algoritmos
não-determinísticos nas planilhas OpenOffice.org Calc e
NeoOffice Calc
19 / 42
44. Regressão Não Linear
Nenhuma das planilhas apresenta resultados confiáveis.
Os melhores resultados obtidos provém de algoritmos
não-determinísticos nas planilhas OpenOffice.org Calc e
NeoOffice Calc
19 / 42
46. Geradores de Números Pseudo-Aleatórios
Propriedades desejadas
1 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.
C
alc
Excel2007
Excel2008
G
num
eric
N
eoO
ffice
O
leo
Documentação " "% % " % %
21 / 42
47. Geradores de Números Pseudo-Aleatórios
Propriedades desejadas
1 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.
C
alc
Excel2007
Excel2008
G
num
eric
N
eoO
ffice
O
leo
Documentação " "% % " % %
Semente % " % % % %
21 / 42
48. Alguns resultados
Nenhuma das planilhas apresenta resultados confiáveis.
Para muitas das distruições avaliadas Gnumeric apresenta bons
resultados.
Nenhuma planilha conseque sequer um dígito de precisão para
duas distribuições.
Simulações Monte Carlo não devem ser processadas em planilhas.
22 / 42
49. Alguns resultados
Nenhuma das planilhas apresenta resultados confiáveis.
Para muitas das distruições avaliadas Gnumeric apresenta bons
resultados.
Nenhuma planilha conseque sequer um dígito de precisão para
duas distribuições.
Simulações Monte Carlo não devem ser processadas em planilhas.
22 / 42
50. Alguns resultados
Nenhuma das planilhas apresenta resultados confiáveis.
Para muitas das distruições avaliadas Gnumeric apresenta bons
resultados.
Nenhuma planilha conseque sequer um dígito de precisão para
duas distribuições.
Simulações Monte Carlo não devem ser processadas em planilhas.
22 / 42
51. Alguns resultados
Nenhuma das planilhas apresenta resultados confiáveis.
Para muitas das distruições avaliadas Gnumeric apresenta bons
resultados.
Nenhuma planilha conseque sequer um dígito de precisão para
duas distribuições.
Simulações Monte Carlo não devem ser processadas em planilhas.
22 / 42
52. Conclusões
Nenhuma das planilhas é confiável para fins estatísticos sérios.
Oleo deve ser utilizado somente quando não houver
disponibilidade de interface gráfica.
Experimentos Monte Carlo não devem ser realizados em
planilhas eletrônicas.
Aconselha-se utilizar outras plataformas, sendo R a mais
recomendável.
23 / 42
53. Conclusões
Nenhuma das planilhas é confiável para fins estatísticos sérios.
Oleo deve ser utilizado somente quando não houver
disponibilidade de interface gráfica.
Experimentos Monte Carlo não devem ser realizados em
planilhas eletrônicas.
Aconselha-se utilizar outras plataformas, sendo R a mais
recomendável.
23 / 42
54. Conclusões
Nenhuma das planilhas é confiável para fins estatísticos sérios.
Oleo deve ser utilizado somente quando não houver
disponibilidade de interface gráfica.
Experimentos Monte Carlo não devem ser realizados em
planilhas eletrônicas.
Aconselha-se utilizar outras plataformas, sendo R a mais
recomendável.
23 / 42
55. Conclusões
Nenhuma das planilhas é confiável para fins estatísticos sérios.
Oleo deve ser utilizado somente quando não houver
disponibilidade de interface gráfica.
Experimentos Monte Carlo não devem ser realizados em
planilhas eletrônicas.
Aconselha-se utilizar outras plataformas, sendo R a mais
recomendável.
23 / 42
56. 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
58. 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
59. Metodologia
A mesma metodologia foi aplicada a Octave, (academic) Ox, Python,
R, SciLab e Matlab.
Em alguns casos acrescentamos um estudo Monte Carlo da
estabilidade dos resultados (omitido aqui por brevidade).
27 / 42
60. Estatísticas básicas
Média
Platform OS
PiDigits
Lottery
Lew
Mavro
Michelso
Numacc1
Numacc2
Numacc3
Numacc4
Octave
Windows 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 Inf
Mac 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.9
Linux 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
Scilab
Windows 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.7
Mac OS Inf(0) 8.1(7.92) Inf(0) Inf(0.33) Inf(0.43) Inf Inf Inf 7.7
28 / 42
61. Estatísticas básicas
Desvio padrão
Platform OS
PiDigits
Lottery
Lew
Mavro
Michelso
Numacc1
Numacc2
Numacc3
Numacc4
Octave
Windows 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 Inf
Mac 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.2
Linux 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
Scilab
Windows 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 Inf
Mac 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
62. Estatísticas básicas
Correlação de primeira ordem
Platform OS
PiDigits
Lottery
Lew
Mavro
Michelso
Numacc1
Numacc2
Numacc3
Numacc4
Octave
Windows 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.3
Mac 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.3
Linux 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
Scilab
Windows – – – 0(1.75) 0(2.09) 0.5 0 0 0
Linux – – – 0(2.09) 0(2.09) 0.5 0 0 0
Mac OS – 0(2.39) 0(2.40) 0(1.75) 0(2.09) 0.5 0 0 0
30 / 42
63. Conclusões sobre estatísticas básicas
Octave sofre para calcular a média de dados de baixa
complexidade, mas é o melhor para o desvio padrão (SciLab é o
pior para este último).
SciLab é também a pior plataforma para a correlação, mas
nenhuma se saiu bem.
31 / 42
64. Funções de distribuição
A 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.0
1E-11 3.18310E+10 0 0 0 0 0 6.0 6.0 6.0
1E-12 3.18310E+11 – – – – – 6.0 6.0 6.0
1E-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
65. Funções de distribuição
A 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.0
103 1.41720E-14 1.4 1.4 1.0 1.0 1.0 2.0 0 0
315 1.41948E-14 0 0 0 0 0 0 0 0
400 5.58069E-36 6.4 6.4 6.0 6.0 6.0 0 0 0
900 1.73230E-286 6.0 6.0 6.0 6.0 6.0 0 0 0
33 / 42
66. Funções de distribuição
A 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.0
103 1.41720E-14 1.4 1.4 1.0 1.0 1.0 2.0 0 0
315 1.41948E-14 0 0 0 0 0 0 0 0
400 5.58069E-36 6.4 6.4 6.0 6.0 6.0 0 0 0
900 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.0
1E+07 1E+07 0.500084 7.0 7.0 7.0 7.0 7.0 6.0 6.0 6.0
1E+09 1E+09 0.500008 7.0 7.0 7.0 7.0 7.0 6.0 6.0 6.0
33 / 42
67. Matrizes
Avaliação do determinante
A matriz
M =
b bε
s/ε s
tem determinante nulo para quaisquer b, s, .
Esse determinante é calculado garantindo que sejam feitas as
operações (bε) e (s/ε), e o aferimos com b = 10j e s = 10−j, para
j ∈ 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 plataformas
acertaram em 146, ou seja 60% dos casos.
34 / 42
68. Análise espectral de grafos
Grafos bipartidos
Grafo bipartido K5,3:
w8w7w6
w5w4 w1w3w2
A matriz laplaciana do grafo G é a diferença entre a matriz diagonal de
graus D e a matriz de adjacência A.
35 / 42
69. Análise espectral de grafos
Os autovalores da matriz laplaciana de grafos bipartidos Km,n têm várias
propriedades interessantes: λ1 = 0, λm+n = m + n, há n − 1 autovalores que
valem m, e m − 1 autovalores que valem n.
Analisamos situações de balanceamento quase perfeito (Km,m+1) e situações
com 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 na
igualdade ao valor teórico.
Quanto maior o grafo, pior o resultado
A igual tamanho, desbalanceado é pior
O primeiro e último autovalores retornam bons resultados, sendo
melhor o segundo
Sugestão: calcular em precisão dupla, e tomar as decisões em ponto
flutuante
36 / 42
70. Análise espectral de grafos
Os autovalores da matriz laplaciana de grafos bipartidos Km,n têm várias
propriedades interessantes: λ1 = 0, λm+n = m + n, há n − 1 autovalores que
valem m, e m − 1 autovalores que valem n.
Analisamos situações de balanceamento quase perfeito (Km,m+1) e situações
com 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 na
igualdade ao valor teórico.
Quanto maior o grafo, pior o resultado
A igual tamanho, desbalanceado é pior
O primeiro e último autovalores retornam bons resultados, sendo
melhor o segundo
Sugestão: calcular em precisão dupla, e tomar as decisões em ponto
flutuante
36 / 42
71. Análise espectral de grafos
Os autovalores da matriz laplaciana de grafos bipartidos Km,n têm várias
propriedades interessantes: λ1 = 0, λm+n = m + n, há n − 1 autovalores que
valem m, e m − 1 autovalores que valem n.
Analisamos situações de balanceamento quase perfeito (Km,m+1) e situações
com 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 na
igualdade ao valor teórico.
Quanto maior o grafo, pior o resultado
A igual tamanho, desbalanceado é pior
O primeiro e último autovalores retornam bons resultados, sendo
melhor o segundo
Sugestão: calcular em precisão dupla, e tomar as decisões em ponto
flutuante
36 / 42
72. Análise espectral de grafos
Os autovalores da matriz laplaciana de grafos bipartidos Km,n têm várias
propriedades interessantes: λ1 = 0, λm+n = m + n, há n − 1 autovalores que
valem m, e m − 1 autovalores que valem n.
Analisamos situações de balanceamento quase perfeito (Km,m+1) e situações
com 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 na
igualdade ao valor teórico.
Quanto maior o grafo, pior o resultado
A igual tamanho, desbalanceado é pior
O primeiro e último autovalores retornam bons resultados, sendo
melhor o segundo
Sugestão: calcular em precisão dupla, e tomar as decisões em ponto
flutuante
36 / 42
75. Algumas linhas de pesquisa
Avaliação continuada
Plataforma Web para avaliação
Proposta de novos protocolos
Avaliação de outras plataformas
39 / 42
76. Referencias I
Aliane, N. (2008), ‘Spreadsheet-based control system analysis and design – a
command-oriented toolbox for education’, IEEE Control Systems Magazine
28(5), 108–113.
Almeida, E. S., Medeiros, A. C. Frery, A. C. (2012), ‘How good are Matlab, Octave
and Scilab for computational modelling?’, Computational and Applied Mathematics
31(3), 523–538. URL http://ref.scielo.org/wx9rvn.
Almiron, M., Almeida, E. S. Miranda, M. (2009), ‘The reliability of statistical
functions in four software packages freely used in numerical computation’,
Brazilian Journal of Probability and Statistics Special Issue on Statistical Image and
Signal 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), ‘On
the 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 Agricultural
Economics 35(2), 247–248.
40 / 42
77. Referencias II
Bianchi, 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’, Radiologia
Medica 113(7), 1068–1078.
Bollobas, B. (1998), Modern Graph Theory, Springer.
Croll, G. J. (2009), Spreadsheets and the financial collapse, in ‘Proceedings of the
European Spreadsheet Risks Interest Group’, pp. 145–161. URL
http://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 statistical
process control’, Transfusion 48(10), 2143–2151.
Powell, S. G., Baker, K. R. Lawson, B. (2009), ‘Impact of errors in operational
spreadsheets’, Decision Support Systems 47, 126–132.
Roth, J. (2008), ‘Ergebnisse von qualitätskontrollen der individuellen patientendosen
in 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), ‘A
comparative study of two methods for attaining constant alcohol levels’, British
Journal of Clinical Pharmacology 66(5), 674–681.
41 / 42