• Nenhum resultado encontrado

Goftester: aprimoramento e implementação da biblioteca libfit em uma ferramenta para testes de aderência

N/A
N/A
Protected

Academic year: 2021

Share "Goftester: aprimoramento e implementação da biblioteca libfit em uma ferramenta para testes de aderência"

Copied!
285
0
0

Texto

(1)

Diego Almeida de Oliveira

GOFTESTER: APRIMORAMENTO E

IMPLEMENTAC

¸ ˜

AO DA BIBLIOTECA LIBFIT EM UMA

FERRAMENTA PARA TESTES DE ADERˆ

ENCIA

Florian´opolis

2016

(2)
(3)

GOFTESTER: APRIMORAMENTO E

IMPLEMENTAC

¸ ˜

AO DA BIBLIOTECA LIBFIT EM UMA

FERRAMENTA PARA TESTES DE ADERˆ

ENCIA

Trabalho de conclus˜

ao de curso

sub-metido ao curso de Bacharelado em

Ciˆencia da Computa¸c˜

ao para a

ob-ten¸c˜

ao do Grau de Bacharel em Ciˆencia

da Computa¸c˜

ao.

Orientador: Prof. Dr. Paulo Jos´e de

Freitas Filho

Florian´opolis

2016

(4)

UFSC.

A ficha de identifica¸c˜

ao ´e elaborada pelo pr´

oprio autor

Maiores informa¸c˜

oes em:

(5)

GOFTESTER: APRIMORAMENTO E

IMPLEMENTAC

¸ ˜

AO DA BIBLIOTECA LIBFIT EM UMA

FERRAMENTA PARA TESTES DE ADERˆ

ENCIA

Este Trabalho de conclus˜ao de curso foi julgado aprovado para

a obten¸c˜

ao do T´ıtulo de “Bacharel em Ciˆencia da Computa¸c˜

ao”, e

aprovado em sua forma final pelo curso de Bacharelado em Ciˆencia da

Computa¸c˜

ao.

Florian´opolis, 24 de outubro 2016.

Prof. Dr. Renato Cislaghi

Coordenador de Projetos

Banca Examinadora:

Prof. Dr. Paulo Jos´e de Freitas Filho

Orientador

(6)
(7)

nha namorada, Ta´ıris, e todos os meus

familiares e amigos que sempre me

apoi-aram e me fizeram chegar at´e aqui.

(8)
(9)

Agrade¸co aos meus queridos pais, Enilce e Jissuy, por toda for¸ca,

carinho, compreens˜

ao, apoio e por sempre me mostrarem o melhor

caminho a ser seguido. Agrade¸co por todo o esfor¸co que fizeram para

criar a mim e meu irm˜ao com dignidade, respeito e educa¸c˜

ao.

Agrade¸co ao meu irm˜ao Lucas pelo companheirismo, amizade e

incentivo em todos os momentos de minha vida.

Agrade¸co meus av´

os Jissuy e Helo´ısa por terem me recebido em

Florian´opolis e me dado a oportunidade de crescer em diversos aspectos.

Agrade¸co aos meus familiares que apesar de muitos estarem

dis-tantes sempre me apoiaram, principalmente meus falecidos av´

os Jo˜ao

Ribeiro e Paschoalina Benedetti, que sem eles eu dificilmente chegaria

t˜ao longe.

Agrade¸co `

a minha namorada Ta´ıris por todo amor, carinho,

aten¸c˜

ao e por ter me ajudado nas v´

arias fases deste trabalho e da

minha gradua¸c˜

ao.

Agrade¸co aos meus amigos e colegas pelos momentos bons que

passamos juntos e por todo apoio dado a minha jornada, tanto na UFSC

quanto fora dela.

Agrade¸co aos meus professores por me passarem seus

conheci-mentos e por terem me ajudado a chegar at´e aqui.

Agrade¸co especialmente ao professor Dr. Paulo Jos´e de Freitas

Filho pelas oportunidades e pela orienta¸c˜

ao para a realiza¸c˜

ao deste

trabalho.

Agrade¸co aos membros da banca Mauro Roisenberg e S´ılvia

Mo-desto Nassar, por aceitarem o convite e pelas considera¸c˜

oes sobre este

trabalho.

Muito obrigado a todas as pessoas que contribu´ıram diretamente

ou indiretamente para que eu completasse mais essa jornada.

(10)
(11)

And smiles you’ll give and tears you’ll cry

And all you touch and all you see

Is all your life will ever be”

(12)
(13)

Os testes de aderˆencia s˜ao procedimentos estat´ısticos frequentemente

empregados quando se deseja verificar se uma dada amostra aleat´

oria

de dados adere alguma distribui¸c˜

ao te´orica. Entretanto, para se

apli-car os testes, todo um processo de tratamento dos dados, estimativa

dos parˆ

ametros das distribui¸c˜

oes, gera¸c˜

oes de tabelas de frequˆencia,

entre outros procedimentos, podem ser necess´

arios de se realizar.

To-dos esses procedimentos s˜ao aplicaTo-dos com o aux´ılio computacional, de

modo a agilizar o processo e, principalmente, fornecer para o usu´

ario

uma an´

alise dos resultados atrav´es de dados estat´ısticos e gr´

aficos

visualiz´aveis.

Este trabalho concentrou-se principalmente no

aper-fei¸coamento da biblioteca de testes de aderˆencia libfit, atrav´es da

in-clus˜

ao do teste Qui-Quadrado para algumas distribui¸c˜

oes de

probabi-lidade discretas, e no projeto e desenvolvimento de uma ferramenta

em C++ utilizando o framework Qt. Esta ferramenta, chamada

GOF-Tester, faz uso da libfit para realizar os testes de aderˆencia e gerar

resultados satisfat´

orios para o usu´

ario.

Palavras-chave: Distribui¸c˜

ao de Probabilidade, Teste de Aderˆencia,

Qui-Quadrado, libfit, C++, Qt.

(14)
(15)

Goodness-of-fit tests are tools frequently employed with the purpose of

verifying whether a given sample of random data fits some theoretical

probability distribution. However, in order to apply the tests, an

ela-borated process of manipulating samples, estimating parameters of

dis-tributions, creating frequency tables, among other procedures, might

be applied. All these procedures can be accomplished with the

sup-port of computers, accelerating the entire process and providing to the

user a solid analysis of the outcomes through statistic data and plotted

graphs. This research focuses mostly in improving the goodness-of-fit

library called libfit, by adding Qui-Square tests for some discrete

distri-butions, and designing and implementing a goodness-of-fit tool using

C++ and Qt framework. This tool, called GOFTester, uses libfit in

order to perform goodness-of-fit tests and provide satisfactory results

to the user.

Keywords: Probability Distribution, Goodness-of-fit Test, Chi-Square,

libfit, C++, Qt.

(16)
(17)

Figura 1 Fun¸c˜

ao massa da distribui¸c˜

ao Uniforme Discreta . . . 35

Figura 2 Fun¸c˜

ao massa da distribui¸c˜

ao Poisson. . . 36

Figura 3 Fun¸c˜

oes densidades da distribui¸c˜

ao Uniforme . . . 37

Figura 4 Fun¸c˜

oes densidades da distribui¸c˜

ao Exponencial . . . 37

Figura 5 Fun¸c˜

oes densidades da distribui¸c˜

ao Gamma . . . 39

Figura 6 Fun¸c˜

oes densidades da distribui¸c˜

ao Weibull . . . 40

Figura 7 Fun¸c˜

oes densidades da distribui¸c˜

ao Normal . . . 41

Figura 8 Fun¸c˜

oes densidades da distribui¸c˜

ao Lognomal . . . 42

Figura 9 Fun¸c˜

oes densidades da distribui¸c˜

ao Beta . . . 43

Figura 10 Fun¸c˜

oes densidades da distribui¸c˜

ao Triangular . . . 44

Figura 11 Relacionamento entre distribui¸c˜

oes de probabilidade . . . 45

Figura 12 Screenshot do Arena Input Analyzer . . . 54

Figura 13 Screenshot do Oracle Crystal Ball . . . 55

Figura 14 Screenshot do @Risk . . . 56

Figura 15 Diagrama de atividades para teste de aderˆencia vers˜

ao

original libfit . . . 58

Figura 16 Diagrama de classes do namespace fit da vers˜

ao original

da libfit . . . 59

Figura 17 Diagrama de classe da ferramenta GOFTester . . . 70

Figura 18 Tela de obten¸c˜

ao de parˆ

ametros com raiz quadrada como

crit´erio de intervalo do histograma . . . 80

Figura 19 Tela de obten¸c˜

ao de parˆ

ametros com Sturges como crit´erio

de intervalo do histograma . . . 81

Figura 20 Tela de escolha de distribui¸c˜

ao . . . 82

(18)
(19)

Tabela 1 Estimadores dos Parˆ

ametros de Distribui¸c˜

oes de

Proba-bilidade Discretas e Cont´ınuas. . . 46

Tabela 2 Compara¸c˜

ao de resultados de testes Qui-Quadrado usando

amostras de distribui¸c˜

ao Normal com parˆ

ametros µ = 10 e σ = 5.. 84

Tabela 3 Compara¸c˜

ao de resultados de testes Qui-Quadrado de

distribui¸c˜

ao Poisson com parˆ

ametro λ = 2, 5. . . 85

(20)
(21)

A-D

Teste Anderson Darling

DP

Distribui¸c˜

ao de Probabilidade

FDA

Fun¸c˜

ao Distribui¸c˜

ao Acumulada

FDP

Fun¸c˜

ao Densidade de Probabilidade

K-S

Teste Kolmogorov-Smirnov

M&S

Modeling and Simulation

MLE

Maximum Likelihood Estimation

(22)
(23)

a

Parˆ

ametro DP Uniforme Discreta, Uniforme e Triangular

α

Parˆ

ametro de forma e n´ıvel de significˆancia

A

2

n

Estat´ıstica do teste Anderson-Darling

b

Parˆ

ametro DP Uniforme Discreta, Uniforme e Triangular

β

Parˆ

ametro DP Exponencial, Gamma, Weibull e Beta

c

Moda da DP Triangular

Dn

Estat´ıstica do teste Kolmogorov-Smirnov

f ej

Frequˆencia esperada em uma classe ou intervalo j

f oj

Frequˆencia observada em uma classe ou intervalo j

Fn(x)

Fun¸c˜

ao de distribui¸c˜

ao emp´ırica

F (x)

Fun¸c˜

ao distribui¸c˜

ao acumulada

f (x)

Fun¸c˜

ao densidade

F M P

Fun¸c˜

ao massa de probabilidade

H0

Hip´

otese nula de teste de hip´

otese

H1

Hip´

otese alternativa de teste de hip´

otese

λ

Parˆ

ametro DP Poisson

µ

M´edia amostral

n

Tamanho de uma amostra de dados

χ

2

Estat´ıstica do teste Qui-Quadrado

S

Desvio padr˜

ao de uma amostra

valor p Probabilidade de significˆancia

¯

(24)
(25)

4.1

Fun¸c˜

ao de verifica¸c˜

ao do tipo das amostras . . . 60

4.2

Classe Histogram: histogram.h . . . 72

4.3

Classe Histogram: cria¸c˜

ao de intervalos . . . 73

4.4

Classe DistributionFit: distribution fit.h . . . 74

4.5

Classe DistributionFit: obten¸c˜

ao de pontos da FDP . . . . 75

4.6

Classe GoodnessOfFit: goodness of fit.h . . . 76

4.7

Classe GoodnessOfFit: aplica¸c˜

ao de teste de aderˆencia . . 77

4.8

Classe GOFTester: gof tester.h . . . 78

(26)
(27)

1

INTRODUC

¸ ˜

AO . . . .

27

1.1

JUSTIFICATIVA . . . 28

1.2

OBJETIVOS . . . 29

1.2.1 Objetivo Geral . . . 29

1.2.2 Objetivos Espec´ıficos . . . 29

1.3

METODOLOGIA . . . 29

1.4

ESTRUTURA DO TRABALHO . . . 31

2

FUNDAMENTAC

¸ ˜

AO TE ´

ORICA . . . .

33

2.1

DISTRIBUIC

¸ ˜

OES DE PROBABILIDADE . . . 33

2.1.1 Distribui¸

oes Discretas . . . 34

2.1.1.1 Uniforme Discreta . . . 34

2.1.1.2 Poisson . . . 35

2.1.2 Distribui¸

oes Cont´ınuas . . . 36

2.1.2.1 Uniforme . . . 36

2.1.2.2 Exponencial . . . 37

2.1.2.3 Gamma . . . 38

2.1.2.4 Weibull . . . 39

2.1.2.5 Normal ou Gaussiana . . . 40

2.1.2.6 Lognormal . . . 41

2.1.2.7 Beta . . . 42

2.1.2.8 Triangular . . . 43

2.1.3 Relacionamento entre as Distribui¸

oes de

Proba-bilidade . . . 44

2.2

ESTIMAC

¸ ˜

AO DE PAR ˆ

AMETROS DE DISTRIBUIC

¸ ˜

OES

DE PROBABILIDADE . . . 45

2.3

TESTES DE HIP ´

OTESES . . . 47

2.3.1 Testes de Aderˆ

encia . . . 48

2.3.1.1 Teste Qui-Quadrado . . . 48

2.3.1.2 Kolmogorov-Smirnov . . . 49

2.3.1.3 Anderson-Darling . . . 50

3

ESTADO DA ARTE . . . .

53

3.1

ARENA INPUT ANALYZER . . . 53

3.2

ORACLE CRYSTAL BALL . . . 54

3.3

@RISK . . . 55

4

PROPOSTA . . . .

57

4.1

APERFEIC

¸ OAMENTO DA BIBLIOTECA LIBFIT . . . 57

(28)

TER . . . 61

4.2.1 An´

alise de Requisitos . . . 62

4.2.1.1 Requisitos Funcionais . . . 62

4.2.1.2 Requisitos N˜

ao-Funcionais . . . 63

4.2.2 Projeto . . . 63

4.2.2.1 Casos de Uso . . . 63

4.2.2.2 Modelagem da Solu¸c˜

ao . . . 69

4.2.3 Implementa¸

ao . . . 71

4.2.3.1 Classe Histogram . . . 71

4.2.3.2 Classe DistributionFit . . . 74

4.2.3.3 Classe GoodnessOfFit . . . 76

4.2.3.4 Classe GOFTester . . . 78

4.2.3.5 Classe MainWindow . . . 79

4.2.3.6 Classe WidgetSamplesAndHistogram . . . 79

4.2.3.7 Classe WidgetDistribToFit . . . 81

4.2.3.8 Classe WidgetChiResults . . . 82

4.2.4 Avalia¸

ao . . . 83

5

CONCLUS ˜

AO . . . .

87

REFERˆ

ENCIAS . . . .

89

APˆ

ENDICE A -- Tutorial de utiliza¸

ao da

ferra-menta GOFTester . . . .

93

APˆ

ENDICE B -- Artigo . . . .

99

APˆ

ENDICE C -- C´

odigo-Fonte . . . 109

(29)

1 INTRODUC

¸ ˜

AO

A sociedade atual, em contraste com civiliza¸c˜

oes mais antigas,

a chegou a um patamar em que muitas conquistas foram atingidas e

grandes feitos j´

a foram realizados, como por exemplo a inven¸c˜

ao dos

avi˜

oes, que hoje carregam centenas de pessoas. Por´em, junto a essa

evolu¸c˜

ao, desafios maiores e mais complexos v˜

ao surgindo, como no

caso dos avi˜

oes, no qual um grande desafio era coloc´

a-los no ar com

algum piloto que j´

a possu´ısse alguma experiˆencia de voo sem nunca ter

pilotado antes. Quando algu´em se depara com problemas desse tipo

e tenta contorn´a-los, diversos fatores podem dificult´

a-los e torn´a-los

invi´

aveis ou at´e mesmo imposs´ıveis de serem tratados diretamente.

Para auxiliar nesta tarefa, um dos caminhos ´e o uso do paradigma

de Modelagem e Simula¸c˜

ao de sistemas, ou Modeling and Simulation

(M&S). A simula¸c˜

ao de sistemas, como definido por Shannon (1998),

´e uma t´ecnica usada para projetar um modelo de um sistema real e

fazer experimentos com este modelo, permitindo ent˜ao uma melhor

compreens˜

ao do comportamento do sistema e a possibilidade de avaliar

suas poss´ıveis estrat´egias de operabilidade. M&S pode ser usado em,

por exemplo, modelos para:

• Um sistema de pilotagem de avi˜ao para que se possa fazer

ava-lia¸c˜

oes e otimiza¸c˜

oes do mesmo, ou treinar futuros pilotos;

• Simular a quantidade de clientes por hora nos caixas de um

su-permercado, de forma a se saber em quais hor´

arios ´e necess´ario

ter mais operadores de caixas dispon´ıveis;

• Um sistema de previs˜ao de tempo.

Diversas vari´

aveis aleat´

orias podem estar envolvidas no sistema

real em quest˜ao, cada uma apresentando uma natureza n˜

ao

deter-min´ıstica distinta da outra. Para represent´a-las de forma fiel e confi´avel,

pode-se obter uma amostragem de dados que caracterize esse

compor-tamento. O pr´

oximo passo ´e utilizar modelos estat´ısticos que

repre-sentem bem essas vari´

aveis aleat´

orias. A escolha desse modelo pode

ser realizada com o aux´ılio da estimativa por m´axima verossimilhan¸ca,

que ´e um m´etodo para se estimar os parˆ

ametros de algum modelo

es-tat´ıstico, como por exemplo estimar a m´edia e o desvio padr˜

ao de uma

distribui¸c˜

ao Normal.

Entretanto, apesar da obten¸c˜

ao dos parˆ

ametros de uma

distri-bui¸c˜

ao de probabilidade (DP) n˜

ao ser um procedimento complexo em

(30)

alguns casos, ainda ´e preciso medir o qu˜

ao bem um conjunto de dados

segue uma determinada distribui¸c˜

ao, isto ´e, se adere ou n˜

ao a aquela

DP. Atualmente j´

a existem m´etodos que realizam essa avalia¸c˜

ao, que

s˜ao conhecidos como testes de aderˆencia.

Existem diversos tipos de testes de aderˆencia na literatura, sendo

que os testes Anderson-Darling, Qui-Quadrado e Kolmogorov-Smirnov

est˜ao entre os mais conhecidos. Um dos focos deste trabalho ´e dar

continuidade a biblioteca libfit (FORMIGHIERI, 2007), que tem como

principal objetivo a realiza¸c˜

ao de testes de aderˆencia. A biblioteca,

entretanto, fornece somente testes Qui-Quadrado para distribui¸c˜

oes

cont´ınuas. Por este motivo, um dos objetivos ´e aprimorar a biblioteca

com a inclus˜

ao do Qui-Quadrado para distribui¸c˜

oes discretas.

Como apontado por Freitas Filho (2008), uma das maneiras de

avaliar o resultado de um teste de aderˆencia ´e atrav´es da forma visual

fazendo compara¸c˜

ao de gr´

aficos. Ao comparar a distˆancia entre um

histograma gerado atrav´es da amostra de dados e o gr´

afico da

distri-bui¸c˜

ao te´orica, isto ´e, o gr´

afico da distribui¸c˜

ao aderida, quanto menor

a distˆancia melhor ´e a aderˆencia entre as duas. Baseado na avalia¸c˜

ao

visual e te´orica (estat´ıstica), o outro foco deste trabalho ´e no projeto e

implementa¸c˜

ao de uma ferramenta para realizar testes de aderˆencia

uti-lizando a biblioteca libfit, de forma que possua uma interface amig´

avel

no qual o usu´

ario possa, principalmente, avaliar os resultados dos testes

atrav´es de resultados estat´ısticos e com a visualiza¸c˜

ao de gr´

aficos.

1.1 JUSTIFICATIVA

Os testes de aderˆencia s˜ao procedimentos estat´ısticos que j´

a

fo-ram bastante estudados na literatura. Al´em de existir uma infinidade

de estudos realizados, tamb´em existem muitas ferramentas

desenvolvi-das que proveem a realiza¸c˜

ao desses testes. Algumas dessas ferramentas

s˜ao acess´ıveis aos usu´

arios comuns, como os estudantes, enquanto que

outras j´

a n˜

ao s˜ao t˜ao acess´ıveis. Al´em do fato delas muitas vezes terem

custos elevados, geralmente s˜ao de prop´

osito mais geral, como no caso

de alguns softwares para se realizar modelagem e simula¸c˜

ao de sistemas.

Se um usu´

ario deseja realizar somente testes de aderˆencia, ele

acaba se encontrando em uma situa¸c˜

ao no qual ´e preciso obter softwares

mais robustos que possuem testes estat´ısticos acoplados ao seu sistema.

A op¸c˜

ao de se obter uma ferramenta gratuita que realiza os testes, no

qual o usu´

ario pode comparar resultados atrav´es de dados estat´ısticos

ou de forma visual com gr´

aficos, mostra-se uma boa solu¸c˜

ao para esse

(31)

problema.

Essa ferramenta, cujo nome atribu´ıdo ´e GOFTester, foi projetada

e desenvolvida de forma a usar a biblioteca libfit para realizar os testes

de aderˆencia. A biblioteca, gra¸cas a sua modularidade, pode ser

aco-plada ao sistema de forma que se possa reaproveitar todas suas fun¸c˜

oes

implementadas, sem a necessidade de reimplementar fun¸c˜

oes de testes

de aderˆencia. Assim, pode-se notar que essa portabilidade permite que

qualquer desenvolvedor reutilize o c´

odigo implementado na libfit em

al-gum programa que ele esteja desenvolvendo, sem a necessidade de que

o programa fique dependente de outras ferramentas.

1.2 OBJETIVOS

Nesta se¸c˜

ao s˜ao apresentados os objetivos gerais e espec´ıficos

deste trabalho.

1.2.1 Objetivo Geral

O objetivo deste trabalho ´e aprimorar a biblioteca libfit e

imple-mentar em uma ferramenta para testes de aderˆencia.

1.2.2 Objetivos Espec´ıficos

1. Identificar quais distribui¸c˜

oes n˜

ao est˜ao presentes na libfit para

realizar o teste Qui-Quadrado, e definir quais ser˜ao

implementa-das.

2. Adicionar `a libfit as distribui¸c˜

oes selecionadas para serem

imple-mentadas.

3. Projetar e implementar uma ferramenta que fa¸ca uso da libfit

para realizar testes de aderˆencia.

4. Avaliar esta ferramenta.

1.3 METODOLOGIA

Para atingir os objetivos deste trabalho, as seguintes etapas s˜ao

realizadas:

(32)

Etapa 1: Elabora¸c˜

ao da fundamenta¸c˜

ao te´orica

Com o objetivo de garantir uma s´olida compreens˜

ao da

pro-blem´

atica, de modo que se possa dar inicio a modelagem da solu¸c˜

ao,

primeiro ´e feito um estudo da fundamenta¸c˜

ao te´orica que abrange a

tem´

atica deste trabalho. Assuntos como distribui¸c˜

oes de

probabilida-des, estimativa por m´axima verossimilhan¸ca e testes de aderˆencia s˜

ao

abordados.

Etapa 2: Revis˜ao do estado da arte

´

E feita uma avalia¸c˜

ao de algumas ferramentas j´

a existentes que

aplicam testes de aderˆencia. Deste modo ´e poss´ıvel realizar uma

com-para¸c˜

ao entre as funcionalidades existentes em cada uma delas, e ent˜ao

coletar poss´ıveis requisitos para a modelagem proposta neste trabalho.

Etapa 3: Aprimoramento da biblioteca libfit

Consiste nas atividades:

1. Compreens˜

ao das caracter´ısticas da libfit, por exemplo sua

arqui-tetura (em termos de uma biblioteca em C++), classes e fluxo de

execu¸c˜

ao.

2. Modelagem do aprimoramento da libfit. Com base nas

carac-ter´ısticas da biblioteca, ´e abordada a maneira pelo qual a solu¸c˜

ao,

isto ´e, a inclus˜

ao de novas funcionalidades ser´a realizada.

3. Implementa¸c˜

ao das novas funcionalidades. Trata de aspectos

re-levantes com respeito a implementa¸c˜

ao.

Etapa 4: Projeto da ferramenta GOFTester

Modelagem da ferramenta de testes de aderˆencia, onde s˜ao

rea-lizados procedimentos de engenharia de software, como an´

alise de

re-quisitos, casos de uso e diagrama de classes de projeto.

Etapa 5: Implementa¸c˜

ao da ferramenta GOFTester

Detalhes da implementa¸c˜

ao da ferramenta s˜ao apresentados, como

algumas classes e trechos de c´

odigos mais relevantes.

Etapa 6: Avalia¸c˜

ao da ferramenta

Avalia¸c˜

ao daquilo que se conseguiu obter como resultado deste

trabalho. Compara¸c˜oes entre a ferramenta GOFTester e as

apresenta-das no estado da arte.

(33)

1.4 ESTRUTURA DO TRABALHO

Este trabalho est´a dividido em 5 cap´ıtulos, onde s˜ao abordadas

as etapas descritas na se¸c˜

ao 1.3.

No cap´ıtulo 2 ´e feito um estudo da fundamenta¸c˜

ao te´orica, onde

s˜ao apresentados os diferentes tipos de distribui¸c˜

oes de probabilidades

e os relacionamentos entre elas. Em seguida, exp˜

oe-se quest˜oes sobre

a estima¸c˜

ao de parˆ

ametros atrav´es de MLE. Por fim s˜ao apresentados

alguns testes de aderˆencia, com destaque para o Qui-Quadrado.

No cap´ıtulo 3 ´e realizada uma an´

alise do estado da arte,

pesqui-sando e apresentando outros programas que realizam testes de aderˆencia.

No cap´ıtulo 4 ´e abordada a proposta deste trabalho. ´

E feito todo

um processo de modelagem das solu¸c˜

oes e desenvolvimento tanto das

melhorias da libfit quanto da ferramenta GOFTester.

Por fim, no cap´ıtulo 5 trata das considera¸c˜

oes finais, como

con-clus˜

ao, objetivos atingidos e trabalhos futuros.

(34)
(35)

2 FUNDAMENTAC

¸ ˜

AO TE ´

ORICA

Neste cap´ıtulo s˜ao apresentados os principais temas envolvidos

neste trabalho. Primeiramente, s˜ao expostas as distribui¸c˜

oes de

proba-bilidade implementadas e as que j´

a se encontravam presentes na libfit.

Em seguida, antes de abordar os testes de aderˆencia, ´e feita uma breve

explica¸c˜

ao sobre a obten¸c˜

ao dos parˆ

ametros das distribui¸c˜

oes atrav´es

de estimadores de M´axima Verossimilhan¸ca. Finalmente, s˜ao

aborda-dos os testes de hip´

oteses, sendo os testes de aderˆencia apresentados de

forma mais detalhada com ˆenfase no Qui-Quadrado.

2.1 DISTRIBUIC

¸ ˜

OES DE PROBABILIDADE

Existem in´

umeras classes de distribui¸c˜

oes de probabilidades, cada

uma apresentando uma caracter´ıstica que se mostra ´

util para uma

dife-rente aplica¸c˜

ao. Certas distribui¸c˜

oes possuem propriedades que tˆem se

mostrado bastante ´

uteis em simula¸c˜

oes de sistemas, sendo assim mais

relevantes para este trabalho.

A seguir s˜ao exploradas de forma breve as distribui¸c˜

oes que j´

a

est˜ao presentes na libfit, os quais s˜ao usadas para verificar se uma

amos-tra de dados segue alguma delas. Al´em destas, que s˜ao todas cont´ınuas,

tamb´em s˜ao apresentadas algumas distribui¸c˜

oes discretas

implementa-das neste trabalho. Para ambas cont´ınuas e discretas ser˜ao exibiimplementa-das as

fun¸c˜oes de distribui¸c˜

oes acumuladas (FDA), que s˜ao utilizadas para

re-alizar os testes de aderˆencia e estima¸c˜

ao de parˆ

ametros das distribui¸c˜

oes

(FORMIGHIERI, 2007;

TEN ´ORIO, 2005). Para as distribui¸c˜

oes cont´ınuas

ser˜ao tamb´em expostas as fun¸c˜

oes densidades de probabilidade f (x),

ou FDP, e para as discretas as fun¸c˜

oes massa de probabilidade p(x), ou

FMP. Na se¸c˜

ao 2.1.3 discute-se brevemente os relacionamentos entre

as distribui¸c˜

oes e, posteriormente, na se¸c˜

ao 2.2 s˜ao discutidas algumas

formas de se estimar os parˆ

ametros de cada DP.

Como apresentado por Freitas Filho (2008), Banks et al. (2005)

e Law (2015), as distribui¸c˜

oes de probabilidade possuem diversas

pro-priedades e aplica¸c˜

oes, como ´e apresentado nas se¸c˜

oes seguintes.

(36)

2.1.1 Distribui¸

oes Discretas

Distribui¸c˜

oes de probabilidade discretas s˜ao aquelas cujas vari´

aveis

podem ter um n´

umero finito de valores. Tais distribui¸c˜

oes normalmente

representam fenˆ

omenos como o n´

umero de ocorrˆencias de algum evento,

por exemplo o lan¸camento de dados, ou a quantidade de eventos que

ocorrem em um intervalo de tempo. Existem diversas distribui¸c˜oes

discretas, com diferentes aplica¸c˜

oes, como as distribui¸c˜

oes Binomial,

Geom´etrica, Bernoulli, etc. Neste trabalho ser˜

ao abordadas as

distri-bui¸c˜

oes Uniforme Discreta e a Poisson, sendo ambas bastante usadas

em M&S, principalmente a Poisson, utilizada por exemplo na Teoria

de Filas (FREITAS FILHO, 2008).

2.1.1.1 Uniforme Discreta

A Uniforme Discreta ´e uma DP que ´e bastante utilizada quando

os valores aleat´

orios s˜ao inteiros que tˆem a mesma probabilidade de

acontecer, como por exemplo a probabilidade de se obter um n´

umero

es-pec´ıfico no lan¸camento de um dado. ´

E determinada pelos dois parˆ

ametros

a e b, que definem o valor m´ınimo e m´aximo do intervalo,

respectiva-mente, sendo a o parˆ

ametro de localiza¸c˜

ao e b − a o de escala.

p(x) =

(

1 b−a+1

se x ∈ {a, a + 1, ..., b}

0

caso contr´ario

F (x) =

0

se x < 1

bxc−a+1 b−i+1

se a ≤ x ≤ b

1

se b < x

(37)

Figura 1: Fun¸c˜

ao massa da distribui¸c˜

ao Uniforme Discreta

0 2 4 6 8 10 12 0 0.05 0.1 0.15 0.2 0.25 0.3 a=1 b=11

Fonte: Elaborada pelo autor.

2.1.1.2 Poisson

De grande importˆancia em M&S, a distribui¸c˜

ao de Poisson ´e

muito utilizada para representar a quantidade de eventos que ocorrem

em um intervalo de tempo. ´

E uma DP simples que possui o parˆ

ametro

λ.

p(x) =

e−λλx x!

se x ∈ {0, 1, ...}

e

−λbxc

P

i=0 λi i!

se 0 ≤ x

F (x) =

0

se x < 0

e

−λbxc

P

i=0 λi i!

se 0 ≤ x

(38)

Figura 2: Fun¸c˜

ao massa da distribui¸c˜

ao Poisson

0 5 10 15 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 λ=0.5 λ=1 λ=6

Fonte: Elaborada pelo autor.

2.1.2 Distribui¸

oes Cont´ınuas

2.1.2.1 Uniforme

Essa ´e a DP mais simples, mas que ´e bastante usada em M&S

na gera¸c˜

ao de eventos aleat´orios, gra¸cas a sua distribui¸c˜

ao uniforme de

valores. ´

E tamb´em utilizada em situa¸c˜

oes quando n˜

ao se tem muita

in-forma¸c˜

ao de alguma vari´

avel aleat´

oria de algum sistema que est´a sendo

simulado, com exce¸c˜

ao dos valores m´ınimo e m´aximo. Os parˆ

ametros

que a definem s˜ao dois: o a, que ´e o parˆ

ametro de localiza¸c˜

ao, assim

como o menor valor do intervalo definido pela distribui¸c˜

ao; e o b, que

´e o parˆ

ametro de escala e o maior valor do intervalo.

f (x) =

(

1 b−a

se a ≤ x ≤ b

0

caso contr´ario

F (x) =

0

se x < a

x−a b−a

se a ≤ x ≤ b

1

if b < x

(39)

Figura 3: Fun¸c˜

oes densidades da distribui¸c˜

ao Uniforme

-2 -1 0 1 2 3 0 0.2 0.4 0.6 0.8 1 a=0 b=1 a=-1 b=2

Fonte: Elaborada pelo autor.

2.1.2.2 Exponencial

Distribui¸c˜

ao que geralmente ´e usada para representar o tempo

entre dois eventos que apresentem uma forte aleatoriedade. ´

E

determi-nada pelo parˆ

ametro de escala β.

f (x) =

(

1 β

e

−x/β

se x ≥ 0

0

caso contr´ario

F (x) =

(

1 − e

−x/β

se x ≥ 0

0

caso contr´ario

Figura 4: Fun¸c˜

oes densidades da distribui¸c˜

ao Exponencial

0 1 2 3 4 5 0 0.5 1 1.5 2 λ=1.5 λ=0.5

(40)

2.1.2.3 Gamma

A distribui¸c˜

ao Gamma pode ser considerada uma generaliza¸c˜

ao

da distribui¸c˜

ao Exponencial. Ela geralmente ´e utilizada como um

so-mat´

orio de distribui¸c˜

oes exponenciais independentes que representam

um fenˆ

omeno aleat´

orio observado em etapas. ´

E bastante semelhante

a distribui¸c˜

ao Erlang, com a diferen¸ca de que a quantidade de

dis-tribui¸c˜

oes exponenciais da Erlang, no caso da Gamma, pode ser um

umero n˜

ao inteiro (FREITAS FILHO, 2008). Esse n´

umero ´e o parˆ

ametro

de forma, α, enquanto que β ´e o parˆ

ametro de escala, que ´e a m´edia

das distribui¸c˜

oes exponenciais. Ambos valores s˜ao os parˆ

ametros da

distribui¸c˜

ao Gamma.

f (x) =

(

β−αxα−1e−x/β Γ(α)

se x > 0

0

caso contr´ario

F (x) =

(

Γp(α, x/β)

se x > 0

0

caso contr´ario

Sendo que a fun¸c˜

ao Γp, chamada de fun¸c˜

ao Gamma Incompleta,

´e obtida da seguinte forma:

Γp

=

1

Γ(a)

Z

x

0

e

−t

t

α−1

dt

(a > 0)

E a fun¸c˜

ao Γ(a), que ´e a fun¸c˜

ao Gamma, ´e definida como:

Γ(a) =

Z

0

(41)

Figura 5: Fun¸c˜

oes densidades da distribui¸c˜

ao Gamma

0 1 2 3 4 5 6 7 0 0.2 0.4 0.6 0.8 1 α=1 β=1 α=2 β=1 α=3 β=1

Fonte: Elaborada pelo autor.

2.1.2.4 Weibull

A Weibull ´e uma distribui¸c˜

ao frequentemente usada por

enge-nheiros para representar uma vari´

avel aleat´

oria de algum sistema ou

equipamento. Normalmente essas vari´

aveis representam algum

compo-nente cr´ıtico de um sistema que represente o tempo para ocorrer alguma

falha no mesmo. Essa distribui¸c˜

ao ´e composta por dois parˆ

ametros, o

α e o β, sendo que o α tem forte influˆencia no formato do corpo da

dis-tribui¸c˜

ao, fazendo com que por exemplo a fun¸c˜

ao densidade da Weibull

tenha o formato de curva semelhante ao da distribui¸c˜

ao Normal, e o β

´e o parˆ

ametro de escala.

f (x) =

(

αβ

−α

x

α−1

e

−(x/β)α

se x > 0

0

caso contr´ario

F (x) =

(

1 − e

−(xβ) α

se x > 0

0

caso contr´ario

(42)

Figura 6: Fun¸c˜

oes densidades da distribui¸c˜

ao Weibull

0 0.5 1 1.5 2 2.5 3 3.5 4 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 α=0.5 β=1 α=1 β=1 α=2 β=1

Fonte: Elaborada pelo autor.

2.1.2.5 Normal ou Gaussiana

Conhecida como a curva com forma de sino, a distribui¸c˜

ao

Nor-mal ´e possivelmente a mais importante entre todas as distribui¸c˜

oes

apresentadas neste trabalho. Um dos principais fatores de sua

im-portˆancia se da gra¸cas ao Teorema Central do Limite, o qual determina

que a soma ou m´edia de v´

arios n´

umeros aleat´

orios tende a formar uma

distribui¸c˜

ao Normal. Essa particularidade faz com essa distribui¸c˜

ao

seja bastante utilizada em M&S (FREITAS FILHO 2008, p. 176). Os

parˆ

ametros s˜ao o µ e o σ, que s˜ao a m´edia e o desvio padr˜

ao, ou os

parˆ

ametros de localiza¸c˜

ao e escala, respectivamente.

f (x) =

1

2πσ

2

e

−(x−µ)2 /(2σ2

)

para todo n´

umero real x

F (x) = φ(z) =

1

Z

z 0

e

−x2 /2

dx

Sendo z =

x−µσ

.

(43)

Figura 7: Fun¸c˜

oes densidades da distribui¸c˜

ao Normal

-5 -4 -3 -2 -1 0 1 2 3 4 0 0.2 0.4 0.6 0.8 1 1.2 1.4 μ=0 σ=0.3 μ=0 σ=1 μ=-2 σ=0.5

Fonte: Elaborada pelo autor.

2.1.2.6 Lognormal

Como apontado por Law (2015), a distribui¸c˜

ao Lognormal, ao ter

seus valores aplicados a logaritmos naturais, tem o perfil de uma

distri-bui¸c˜

ao Normal. Esse fenˆ

omeno ´e normalmente explorado em vari´

aveis

aleat´

orias que representam tempo para completar alguma tarefa, falhas

de sistemas, entre in´

umeras outras aplica¸c˜

oes. Normalmente ´e usada

quando se tem pouca informa¸c˜

ao com respeito as amostras. Para

rea-lizar os testes de aderˆencia ou obter os parˆ

ametros da distribui¸c˜

ao, ao

inv´es de se utilizar a fun¸c˜

ao de distribui¸c˜

ao acumulada, basta aplicar

o logaritmo natural nos seus valores e ent˜ao tratar a Lognormal como

uma Normal.

f (x) =

(

1 x√2πσ2

exp

−(ln x−µ)2 2σ2

se x > 0

0

caso contr´ario

F (x) = φ

 ln x − µ

σ



(44)

Figura 8: Fun¸c˜

oes densidades da distribui¸c˜

ao Lognomal

0 0.5 1 1.5 2 2.5 3 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 μ=0 σ=1 μ=0 σ=0.25

Fonte: Elaborada pelo autor.

2.1.2.7 Beta

Por ser bastante simples, ´e uma distribui¸c˜

ao muitas vezes usada

quando n˜

ao se tem dados o suficiente para utilizar uma distribui¸c˜

ao

mais robusta. Entretanto, existem algumas aplica¸c˜

oes em que a Beta

se mostra ´

util, como para representar a propor¸c˜

ao de defeitos em algum

lote de produtos. A distribui¸c˜

ao Beta ´e definida pelos parˆ

ametros de

forma α1

e α2.

f (x) =

(

xα1−1(1−x)α2−1 B(α1,α2)

se 0 < x < 1

0

caso contr´ario

F (x) =

1

B(α1, α2)

Z

x 0

t

α1−1

(1 − t)

α2−1

dt

B(z, w) = B(w, z) =

Γ(z)Γ(w)

Γ(z + w)

=

Z

1 0

t

z−1

(1 − t)

w−1

dt

(45)

Figura 9: Fun¸c˜

oes densidades da distribui¸c˜

ao Beta

0 0.2 0.4 0.6 0.8 1 0 0.5 1 1.5 2 2.5 3 3.5 4 α1=1.5 α2=5 α1=5 α2=5 α1=2 α2=0.8 α1=0.5 α2=0.5

Fonte: Elaborada pelo autor.

2.1.2.8 Triangular

A distribui¸c˜

ao Triangular, devido a sua simplicidade, tamb´em ´e

mais utilizada em situa¸c˜

oes quando n˜

ao se tem muita informa¸c˜

ao. ´

E

definida pelos parˆ

ametros a, b e c, sendo a um parˆ

ametro de localiza¸c˜

ao,

b − a de escala, e c, ou moda, um parˆametro de forma.

f (x) =

2(x−a) (b−a)(c−a)

se a ≤ x ≤ c

2(b−x) (b−a)(b−c)

se c < x ≤ b

0

caso contr´ario

F (x) =

0

se x < a

(x−a)2 (b−a)(c−a)

se a ≤ x ≤ c

1 −

(b−a)(b−c)(b−x)2

se c < x ≤ b

1

se b < x

(46)

Figura 10: Fun¸c˜

oes densidades da distribui¸c˜

ao Triangular

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2 0 0.5 1 1.5 2 a=-1 c=0 b=1 a=-0.5 c=0 b=1 a=-1 c=-1 b=0

Fonte: Elaborada pelo autor.

2.1.3 Relacionamento entre as Distribui¸

oes de Probabilidade

A existˆencia de diversos tipos de distribui¸c˜

oes de probabilidade

aparenta indicar que elas s˜ao completamente diferentes entre elas. Por´em,

existem muitos casos em que uma determinada distribui¸c˜

ao ´e de fato

apenas um caso especial de alguma outra, ou uma pode ser

transfor-mada em outra a partir de uma fun¸c˜

ao de transforma¸c˜

ao. Existem pelo

menos trˆes tipos de relacionamentos entre distribui¸c˜

oes (KOKOSKA;

NE-VISON, 2012):

• A distribui¸c˜ao ´e um caso especial de outra;

• A distribui¸c˜ao pode ser transformada em outra;

• A distribui¸c˜ao ´e uma aproxima¸c˜ao de outra. Isto significa que o

limite de algum parˆ

ametro da distribui¸c˜

ao, tendendo a algum

va-lor espec´ıfico, aproxima ela a alguma outra distribui¸c˜

ao (LEEMIS;

MCQUESTON, 2008).

Na Figura 11, o diagrama exibe os relacionamentos entre as

dis-tribui¸c˜

oes apresentadas neste trabalho. As flechas com linhas

traceja-das representam os relacionamentos em que a distribui¸c˜

ao ´e uma

apro-xima¸c˜

ao, enquanto que as de linha cont´ınua representam os outros dois

casos.

(47)

Figura 11: Relacionamento entre distribui¸c˜

oes de probabilidade

Gamma α, β Uniforme a, b Weibull α, β Qui-Quadrado v Exponencial λ Normal padrão μ=0, σ=1 Lognormal μ, σ Poisson μ Normal μ, σ Uniforme padrão Beta α, β Erlang β, n Triangular a=-1, b=1 ex ln x σ = μ2 μ → ∞ μ = αβ σ = αβ α → ∞ 2 2 X X + X α = β → ∞ α = β → 1 α = n β = 1/n n=1 X + ... + X β = v/2 α=2 α=1 β = 1/λ v=2 λ=1/2 X1/α α=1 -(1/λ) ln X X - X a=0 b=1 a+(b-a)X X-μ σ μ+σX X + ... + X1 1 2 n 2 2 1 n 1 2 1

Fonte: Adaptado de Kokoska e Nevison (2012).

2.2 ESTIMAC

¸ ˜

AO DE PAR ˆ

AMETROS DE DISTRIBUIC

¸ ˜

OES DE

PRO-BABILIDADE

Um dos principais prop´

ositos deste trabalho ´e a aplica¸c˜

ao dos

testes de aderˆencia para verificar se os dados obtidos pelo usu´

ario

se-guem alguma distribui¸c˜

ao te´orica de probabilidades. Por´em, apenas

com os dados brutos n˜

ao ´e poss´ıvel fazer qualquer conclus˜ao em rela¸c˜ao

a aderˆencia deles. Por essa raz˜

ao, a primeira etapa antes de realizar

os testes ´e organizar os dados de modo que eles fa¸cam mais sentido

e apresentem alguma forma, para que ent˜

ao se possa proceder com a

estimativa dos parˆ

ametros. Para realizar a primeira tarefa, pode-se

organizar os dados em tabelas de frequˆencias e histogramas, enquanto

que para a obten¸c˜

ao dos parˆ

ametros existem os estimadores de M´axima

Verossimilhan¸ca.

(48)

em classes de frequˆencia. Para se gerar essas classes, uma possibilidade

´e criar uma tabela de frequˆencia que filtre todos os dados da amostra

em suas respectivas classes. Contudo, n˜

ao existe uma regra ´

unica para

definir a quantidade de classes. Uma das formas, como sugerido por

Scott (1979), ´e usar (1 + log

10

n) classes, sendo n o total de amostras.

Outras sugest˜oes s˜ao

n ou

3

2n classes (BIRTA; ARBEZ, 2007). Por´em,

como indicado por Law (2015), a obten¸c˜

ao do n´

umero de classes ´e uma

tarefa subjetiva, sendo ent˜ao indicado que se tente diversos valores at´e

obter um histograma com varia¸c˜

oes mais suaves. Obtido um

histo-grama que melhor represente os dados amostrais, a pr´

oxima etapa ´e

estimar os parˆ

ametros das distribui¸c˜

oes.

Tabela 1: Estimadores dos Parˆ

ametros de Distribui¸c˜

oes de

Probabili-dade Discretas e Cont´ınuas.

Distribui¸

ao

Parˆ

ametro(s)

Estimador

Uniforme Discreta

i, j

i = min

1≤k≤n

Xk

,

j = max

1≤k≤n

Xk

Poisson

λ

λ = ¯

X(n)

Uniforme

a, b

a = min

1≤i≤n

Xi,

j = max

1≤i≤n

Xi

Exponencial

β

β = ¯

X(n)

Gamma

α, β

α =

XS¯22

,

β =

S2 ¯ X

Weibull

α, β

α: obtido utilizando o m´etodo

de Newton

β =

n P i=1 Xiα n

1/α

Normal

µ, σ

µ = ¯

X(n)

σ =



n−1 n

S

2

(n)



12

Lognormal

µ, σ

ver se¸c˜

ao 2.1.2.6

Beta

α, β

α = ¯

X

hh

¯ X(1− ¯X) S2

i

− 1

i

β = ( ¯

X − 1)

hh

X(1− ¯¯ S2X)

i

− 1

i

Triangular

a, b

a = min

1≤i≤n

Xi,

b = max

1≤i≤n

Xi

Fonte: Law (2015)

(49)

Like-lihood Estimation

(MLE), ´e uma t´ecnica usada para obter, isto ´e,

esti-mar os parˆ

ametros de algum modelo estat´ıstico. Como mencionado

por Law (2015), esse procedimento usufrui de algumas ferramentas

para a estima¸c˜

ao dos parˆ

ametros de algumas distribui¸c˜

oes de

proba-bilidade, como a fun¸c˜

ao de log-verossimilhan¸ca ou atrav´es de

diferen-cia¸c˜

ao. Por´em, essas duas t´ecnicas n˜

ao s˜ao aplic´aveis para todas as

distribui¸c˜

oes, sendo que em alguns casos ´e preciso recorrer a m´etodos

num´ericos. Na literatura j´

a existem f´

ormulas e m´etodos para se obter

os parˆ

ametros de todas as distribui¸c˜

oes usadas neste trabalho, como

apresentado na Tabela 1.

Finalmente, feita a estima¸c˜

ao dos parˆ

ametros, o pr´

oximo passo

´e a realiza¸c˜

ao dos testes de aderˆencia para verificar se a amostra segue

alguma distribui¸c˜

ao de probabilidades.

2.3 TESTES DE HIP ´

OTESES

A estima¸c˜

ao dos parˆ

ametros ´e uma etapa crucial quando se tem

como objetivo verificar se uma amostra segue alguma distribui¸c˜

ao.

Por´em, ´e bastante improv´

avel que a amostra siga perfeitamente a

dis-tribui¸c˜

ao te´orica com os parˆ

ametro estimados. O fato de que, entre as

in´

umeras distribui¸c˜

oes te´oricas, a amostra ir´

a melhor aderir

possivel-mente sopossivel-mente uma delas, ´e um indicativo de que, mesmo obtendo os

parˆ

ametros atrav´es de MLE, existe uma probabilidade de que a amostra

siga uma outra DP ao inv´es da distribui¸c˜

ao verificada.

Para se medir o qu˜ao bem uma amostra segue um determinado

modelo ou distribui¸c˜

ao, uma alternativa s˜ao os testes de aderˆencia, que

s˜ao uma classe de testes de hip´

oteses. De modo geral, o objetivo de

um teste de hip´oteses ´e verificar se alguma afirma¸c˜

ao em rela¸c˜

ao a um

conjunto de dados ´e verdadeira. Essa afirma¸c˜

ao ´e chamada de hip´

otese

nula, denotada por H0, enquanto que a hip´

otese que rejeita, isto ´e, que

contraria H0, ´e denotada por H1. Ao declarar uma afirma¸c˜

ao, seja ela

H0

ou H1, a ideia ´e criar um modelo de decis˜

ao sobre um conjunto de

dados para concluir se essa afirma¸c˜

ao ´e realmente verdadeira. Se for

conclu´ıdo que a afirma¸c˜

ao estava errada, o que se diz ´e que foi um erro

dizer que ela era verdadeira.

Ao se concluir que H0

ou H1

s˜ao verdadeiras, pode-se cair em

uma situa¸c˜

ao no qual essa conclus˜ao estava errada. Por exemplo, a

hip´

otese nula pode ser de fato verdadeira, mas foi conclu´ıdo

erronea-mente que ela ´e falsa. De acordo com Kelton, Sadowski e Sadowski

(1998), esse tipo de erro ´e conhecido como erro do tipo I, e est´a

(50)

as-sociado com o n´ıvel de significˆancia α. O n´ıvel de significˆancia ´e a

probabilidade de se rejeitar H0

quando esta na verdade ´e verdadeira,

sendo assim um falso positivo. Um outro tipo erro ´e o erro do tipo

II, ou β, que ocorre quando H0

´e falsa mas n˜

ao ´e rejeitada, ou seja,

quando houve um falso negativo. Ambos os casos s˜ao definidos pelas

equa¸c˜

oes a seguir:

P (H1|H0

V ) = P (erro tipo I) = α

P (H0|H1

V ) = P (erro tipo II) = β

Existem v´

arios tipos de testes aplic´aveis em diversas situa¸c˜

oes.

Trˆes desses testes s˜ao apresentados neste trabalho, sendo eles o

Qui-Quadrado, Kolmogorov-Smirnov e Anderson-Darling, que s˜ao testes de

aderˆencia.

2.3.1 Testes de Aderˆ

encia

Os testes de aderˆencia s˜ao testes de hip´

oteses em que se deseja

verificar se um conjunto de dados segue (adere) alguma distribui¸c˜

ao

de probabilidade (LAW, 2015). Por se tratar de um tipo de teste de

hip´

oteses, visa-se verificar se a hip´

otese nula H0

´e verdadeira. Nesse

caso, a hip´

otese nula ´e a seguinte:

H0: a amostra ´e composta por vari´

aveis aleat´

orias com fun¸c˜

ao

dis-tribui¸c˜

ao acumulada F .

Neste trabalho s˜ao apresentados os testes Qui-Quadrado,

Kolmogorov-Smirnov a Anderson-Darling. Entretanto, devido a algumas quest˜oes

que dificultam a implementa¸c˜

ao dos dois ´

ultimos, como explicado nas

se¸c˜

oes abaixo, somente o Qui-Quadrado ´e implementado. Os outros

dois testes poder˜

ao ser implementados em trabalhos futuros.

2.3.1.1 Teste Qui-Quadrado

O teste Qui-Quadrado tem como primeiro passo a separa¸c˜

ao das

amostras em k classes (ou intervalos), no qual para cada classe j existe

uma probabilidade te´orica pj

associada, isto ´e, um valor que representa

a propor¸c˜

ao de dados naquele intervalo referente a distribui¸c˜

ao que se

(51)

est´a verificando a aderˆencia.

Por conseguinte, para se obter a estat´ıstica do teste Qui-Quadrado

χ

2

, calcula-se a equa¸c˜

ao (FREITAS FILHO, 2008):

χ

2

=

k

X

j=1

(f oj

− fej)

2

f ej

Onde f oj

´e a frequˆencia observada na classe j, e f ej

´e a frequˆencia

esperada f ej

= npj, sendo n o total de amostras.

Quanto maior χ

2

, pode-se se dizer que menos a amostra adere a

distribui¸c˜

ao em quest˜ao. Portanto, se χ

2

= 0, ent˜ao a amostra segue

perfeitamente a distribui¸c˜

ao de probabilidade.

Entretanto, como geralmente uma amostra n˜

ao segue uma

dis-tribui¸c˜

ao com χ

2

= 0, o que se verifica ´e se a amostra segue

aproxima-damente a distribui¸c˜

ao com v = k − 1 − p graus de liberdade, sendo p a

quantidade de parˆ

ametros da distribui¸c˜

ao te´orica com adi¸c˜

ao de mais

uma unidade.

Uma das formas de realizar essa verifica¸c˜

ao ´e atrav´es da obten¸c˜

ao

do valor p, que em termos gerais indica a probabilidade em se obter

com a distribui¸c˜

ao te´orica um mesmo valor obtido com a amostra, sendo

que quanto menor o p, menor ´e essa probabilidade. Assim, define-se

um n´ıvel de significˆ

ancia α, que ´e um indicador da probabilidade de

se rejeitar H0

sendo ela verdadeira, ou seja, em se cometer um erro do

tipo I, e verifica-se se valor p

≤ α. Se verdadeira, ent˜ao a hip´otese nula

´e rejeitada.

O Qui-Quadrado ´e o ´

unico teste de aderˆencia implementado na

libfit. Mais detalhes sobre o teste e sua implementa¸c˜ao s˜ao apresentados

em Formighieri (2007).

2.3.1.2 Kolmogorov-Smirnov

O teste Kolmogorov-Smirnov (K-S), ao contr´ario do Qui-Quadrado,

ao precisa que as amostras sejam separadas em classes, evitando ent˜ao

perda de informa¸c˜

ao. O que ´e feito ´e uma compara¸c˜

ao entre uma fun¸c˜

ao

de distribui¸c˜

ao emp´ırica Fn(x) e F (x) (LAW, 2015). Ainda em

com-para¸c˜

ao com o Qui-Quadrado, de acordo com Bratley, Fox e Schrage

(1987), o K-S tende a ser mais preciso, dado que o seu resultado ´e exato

para qualquer tamanho n da amostra, enquanto que o Qui-Quadrado

´e baseado em uma aproxima¸c˜

ao que ser´a satisfat´

oria somente quando

se tem um n grande.

(52)

O teste ´e realizado atrav´es do c´

alculo da estat´ıstica Dn, que ´e

basicamente a maior distˆancia vertical entre Fn(x) e F (x). A estat´ıstica

Dn

para uma amostra formada pelos valores ordenados X1, X2, ...Xn

pode ser calculada da seguinte forma:

Dn

= max{D

+ n

, D

−n

}

Sendo que,

D

+ n

= max

1≤i≤n

 i

n

− F (Xi)



,

D

− n

= max

1≤i≤n



F (Xi) −

i − 1

n



Para verificar se a hip´

otese nula ´e verdadeira, isso pode ser feito

usando uma tabela gen´erica (isto ´e, que aplic´avel para qualquer

dis-tribui¸c˜

ao cont´ınua) de valores cr´ıticos do K-S para um dado n´ıvel de

significˆancia α e n amostras. Se Dn

´e maior que o valor cr´ıtico obtido

na tabela, ent˜ao H0

´e rejeitada.

Por´em, embora o K-S possui algumas vantagens em rela¸c˜

ao ao

Qui-Quadrado, como j´

a mencionado, ele apresenta tamb´em algumas

desvantagens. Na pr´

atica o K-S ´e aplic´avel somente para distribui¸c˜

oes

cont´ınuas e, al´em disso, o teste usando a tabela ´e somente consistente

quando os parˆ

ametros das distribui¸c˜

oes s˜ao todos conhecidos, ou seja,

ao foram estimados. Existem algumas adapta¸c˜

oes do K-S para

al-gumas distribui¸c˜

oes cujo parˆ

ametros foram estimados, como pode ser

visto em Law (2015). A tabela gen´erica pode ser utilizada para todas

distribui¸c˜

oes com parˆ

ametros estimados ou n˜

ao, mas o teste perder´

a

um pouco de sua confiabilidade.

2.3.1.3 Anderson-Darling

Como j´

a mencionado, o prop´

osito geral do K-S ´e obter a maior

diferen¸ca entre a distribui¸c˜

ao acumulada emp´ırica e a te´orica. Por´em,

ele tem a desvantagem de n˜

ao considerar os casos quando as

maio-res diferen¸cas ficam na cauda da distribui¸c˜ao, j´

a que o K-S fornece o

mesmo peso para a diferen¸ca |F

n

(x) − F (x)| para qualquer x. Um

ou-tro m´etodo, desenvolvido por Anderson e Darling (1954), prop˜

oe um

teste semelhante ao K-S, mas que ´e baseado no quadrado da diferen¸ca

das distribui¸c˜

oes acumuladas emp´ıricas e te´oricas. Esse m´etodo,

cha-mado de teste Anderson-Darling (A-D), consegue detectar os casos das

distribui¸c˜

oes que possuem maiores diferen¸cas na cauda, e possui uma

(53)

capacidade maior que o K-S na verifica¸c˜

ao da aderˆencia (LAW, 2015).

A estat´ıstica A

2

n

do A-D pode ser obtida da seguinte forma:

A

2n

=

(

n

X

i=1

(2i − 1)[ln F (Xi) + ln(1 − F (Xn+1−i

))]

)

/n

!

− n

Entretanto, assim como para o K-S, quando os parˆ

ametros das

distribui¸c˜

oes foram estimados, uma adapta¸c˜

ao da estat´ıstica A

2

n

e da

tabela de valores cr´ıticos precisa ser utilizada.

Embora o A-D possua essa desvantagem, Cheng e Currie (2009)

prop˜

oe um m´etodo para obter os valores cr´ıticos do A-D das

distri-bui¸c˜

oes que n˜

ao possuem tabelas atrav´es do processo de bootstrap.

(54)
(55)

3 ESTADO DA ARTE

Aderˆencia de dados s˜ao procedimentos estat´ısticos que podem ser

encontrados em diversas ferramentas. Entre as mais conhecidas, todas

tˆem os testes de aderˆencia como funcionalidades adicionais dentro de

um escopo de prop´

osito um pouco mais geral, como por exemplo o

Arena, que tem enfoque em M&S, ou o @Risk, que ´e uma add-in do

Microsoft Excel voltado para an´

alise de riscos.

Neste cap´ıtulo s˜ao apresentados alguns destes programas, sendo

avaliadas quest˜oes como gratuidade, se ´e um add-in, tipos de testes de

aderˆencia, etc. Todas as avalia¸c˜

oes focam somente em quest˜oes

relacio-nadas a execu¸c˜

ao dos testes de aderˆencia, portanto caracter´ısticas que

ao tem rela¸c˜

ao aos testes n˜

ao s˜ao considerados, como por exemplo

alguns dados relacionados a an´

alise de risco.

3.1 ARENA INPUT ANALYZER

O Arena Input Analyzer ´e um componente que acompanha o

software de simula¸c˜

ao de eventos discretos Arena. O Arena, lan¸cado

em 1982

1

, ´e um software bastante conhecido e utilizado na ´

area de

simula¸c˜

ao. Apesar de ser um programa pago, existe uma vers˜

ao para

estudantes com poucas limita¸c˜

oes em rela¸c˜

ao a vers˜ao paga.

No Arena Input Analyzer, o usu´

ario pode tanto gerar as amostras

com base em alguma distribui¸c˜

ao, como tamb´em obtˆe-las a partir de

algum arquivo. Ap´

os a obten¸c˜

ao das amostras, o usu´

ario pode escolher

uma distribui¸c˜

ao espec´ıfica para aderir, ou escolher a op¸c˜

ao ”Fit All”,

que aplica os testes para todas as distribui¸c˜

oes dispon´ıveis e seleciona

a que obtiver o melhor resultado.

Existem dois tipos de testes utilizados: o Qui-Quadrado e o

Kolmogorov-Smirnov. Ambos s˜ao sempre aplicados nos testes de aderˆencia.

Embora simples de usar, o Input Analyzer carece de algumas

funcionalidades, como a exibi¸c˜

ao dos resultados de todas distribui¸c˜

oes

aderidas, sendo elas ordenadas pelo melhor resultado, e informa¸c˜

oes

sobre os eixos do gr´

afico.

(56)

Figura 12: Screenshot do Arena Input Analyzer

Fonte: Arena Input Analyzer, resultados do teste de aderˆencia.

3.2 ORACLE CRYSTAL BALL

O Crystal Ball ´e um add-in do programa Microsoft Excel lan¸cado

em 1987, cujo prop´osito principal ´e sua aplica¸c˜

ao em an´

alise de riscos,

mas que oferece tamb´em testes de aderˆencia de dados. N˜

ao existe

vers˜ao gratuita, somente uma vers˜ao de teste ou paga.

Por ser um add-in do Excel, os dados podem tanto ser obtidos a

partir da interface do Excel, como tamb´em podem ser obtidos a partir

da leitura de um arquivo. Quanto aos testes de aderˆencia, o usu´

ario

pode escolher qualquer uma entre todas as distribui¸c˜

oes para serem

aderidas, assim como para os tipos de testes. Existem trˆes testes: o

Qui-Quadrado, o Kolmogorov-Smirnov e o Anderson-Darling, sendo

que somente um poder´

a ser aplicado.

Os resultados s˜ao exibidos atrav´es da compara¸c˜

ao gr´

afica entre o

histograma e as curvas das fun¸c˜

oes de probabilidade das distribui¸c˜

oes,

assim como atrav´es de dados estat´ısticos. As distribui¸c˜

oes s˜ao

(57)

ordena-das pelo melhor resultado, de modo que o usu´

ario pode ir escolhendo

entre uma delas para ser plotada no gr´

afico comparativo.

O Crystal Ball oferece uma interface de usu´

ario bastante simples

de usar e amig´

avel. Por´em, uma melhoria poderia ser a possibilidade de

aplicar e exibir os resultados de mais de um tipo de teste de aderˆencia.

Outra seria poder visualizar mais de uma curva ao mesmo tempo no

gr´

afico comparativo.

Figura 13: Screenshot do Oracle Crystal Ball

Fonte: Oracle Crystal Ball, resultados do teste de aderˆencia.

3.3 @RISK

Assim como o Crystal Ball, o @Risk ´e um add-in do Microsoft

Excel para an´

alise de riscos, e sua primeira vers˜ao foi lan¸cada em 1987.

ao existe uma vers˜ao gratuita, somente vers˜ao de teste ou paga.

A obten¸c˜

ao das amostras ´e feita a partir da planilha do Excel,

enquanto que para realizar os testes de aderˆencia, a ferramenta oferece

bastante liberdade ao usu´

ario. ´

E poss´ıvel n˜

ao somente escolher as

dis-tribui¸c˜

oes e os tipos de testes, mas tamb´em o crit´erio de defini¸c˜

ao dos

intervalos da tabela de frequˆencia do Qui-Quadrado, e a possibilidade

de usar bootstrap. Os testes de aderˆencia s˜ao os mesmos do Crystal

Ball, sendo que todos s˜ao automaticamente aplicados.

Assim como no Crystal Ball, os resultados mostram as

distri-bui¸c˜

oes ordenadas de acordo com a melhor aderˆencia, por´em no @Risk

(58)

o usu´

ario pode visualizar os resultados de qualquer tipo de teste

(Qui-Quadrado, Anderson-Darling, etc). Al´em disto, o usu´

ario tem a

liber-dade de escolher quais distribui¸c˜

oes ser˜

ao plotadas no gr´

afico

compa-rativo.

Um outro diferencial ´e a possibilidade de aplicar bootstrap nos

testes K-S e A-D, o qual, como mencionado anteriormente, pode ser

utilizado para os casos em que os parˆ

ametros das distribui¸c˜

oes foram

estimados.

Figura 14: Screenshot do @Risk

(59)

4 PROPOSTA

Neste cap´ıtulo ser˜

ao apresentados os problemas e as modelagens

das solu¸c˜

oes para tanto o aprimoramento da libfit quanto para a

im-plementa¸c˜

ao da ferramenta de testes de aderˆencia.

4.1 APERFEIC

¸ OAMENTO DA BIBLIOTECA LIBFIT

A biblioteca libfit, como j´

a citado anteriormente, ´e uma

ferra-menta que congrega in´

umeras fun¸c˜

oes estat´ısticas, cujo objetivo

prin-cipal ´e poder aplicar testes de aderˆencia de dados. Entre os variados

testes existentes na literatura, o teste Qui-Quadrado foi o escolhido e

implementado na primeira vers˜

ao da biblioteca. Tal teste ´e

possivel-mente o mais conhecido e implementado em softwares, talvez por ser

o mais antigo e mais simples de implementar. Entretanto, na libfit

o Qui-Quadrado ´e aplic´avel somente em distribui¸c˜

oes cont´ınuas. Por

esta raz˜

ao este trabalho prop˜

oe a inclus˜

ao das distribui¸c˜

oes discretas

Uniforme Discreta e Poisson.

Nesta se¸c˜

ao ser˜

ao apresentadas algumas caracter´ısticas da libfit,

tais como suas classes e como elas comunicam entre elas para aplicar

os testes de aderˆencia, de forma que em seguida seja poss´ıvel realizar a

modelagem da solu¸c˜

ao do problema aqui proposto.

4.1.1 Caracter´ısticas da biblioteca

Por se tratar de uma biblioteca, isto ´e, um conjunto de fun¸c˜

oes

aplic´aveis em outros programas, ´e desej´

avel que ela possua uma

inter-face simples e concisa, de forma que garanta uma intercomunica¸c˜

ao

efi-ciente e segura entre a aplica¸c˜

ao e a biblioteca. Nessa interface, alguns

detalhes internos n˜

ao precisam (muitas vezes n˜

ao devem) ser acess´ıveis

pela aplica¸c˜

ao, induzindo a uma abstra¸c˜

ao daquilo que ´e irrelevante

para o programa.

(60)

Figura 15: Diagrama de atividades para teste de aderˆencia vers˜ao

ori-ginal libfit

Inicio teste aderência

Escolher distribuição para testar aderência de

dados

parâmetros da distribuição já definidos?

Obter parâmetros através de estimativa

por máxima verossimilhança

Gerar distribuição com parâmetros obtidos

Gerar tabela de frequência

Aplicar teste Chi-Quadrado Obter resultados do teste: valor-p e estatística Chi-Quadrado não sim

Fonte: Elaborada pelo autor.

Como a realiza¸c˜

ao do teste de aderˆencia ´e o principal objetivo da

biblioteca, aquilo que deve ser acess´ıvel `a aplica¸c˜

ao deve n˜

ao somente

permitir aplicar o teste, como tamb´em fornecer dados estat´ısticos

usa-dos durante ou como resultado final do processo de aderˆencia. Na

Figura 15 pode-se ver as etapas mais relevantes de aplica¸c˜

ao do teste

de aderˆencia fornecido pela libfit. Com base no fluxograma, ´e poss´ıvel

notar trˆes etapas: obten¸c˜ao da distribui¸c˜

ao de probabilidade, gera¸c˜

ao

da tabela de frequˆencias e aplica¸c˜

ao do teste de aderˆencia. Toda a

implementa¸c˜

ao da libfit foi feita dentro de um namespace chamado

fit, cujo diagrama de classes simplificado pode ser visualizado na

Referências

Documentos relacionados

CONCLUSÕES E PROPOSTAS PARA TRABALHOS FUTUROS Nesta dissertação, foi apresentada uma avaliação do desempenho das funções de proteção aplicadas em transformadores de potência,

Como o predomínio de consumo energético está no processo de fabricação dos módulos fotovoltaicos, sendo os impactos da ordem de 50 a 80% nesta etapa (WEISSER,

Este artigo está dividido em três partes: na primeira parte descrevo de forma sumária sobre a importância do museu como instrumento para construção do conhecimento, destaco

Portanto, mesmo percebendo a presença da música em diferentes situações no ambiente de educação infantil, percebe-se que as atividades relacionadas ao fazer musical ainda são

Assim, sob a égide das discussões literárias em torno da linguagem, estão os artigos A essência nômade da palavra roseana: uma incursão pelo espaço literário de Ave,

Redução do estoque de carbono após a exploração florestal, alterações no numero de indivíduos e no estoque de carbono da regeneração natural e danos aos indivíduos

Para análise das características gerais e ocorrência de possíveis interações medicamentosas todos os pacientes internados durante o período de estudo, com prontuário

F I G U R E 1   Schematic representation of the experiment undertaken to test different routes of oestradiol benzoate administration for cervical dilation prior to