introdução ao projeto de experimentos

48
PROJETO DE EXPERIMENTOS Alexandre Duarte - http://alexandre.ci.ufpb.br/ensino/iad

Upload: alexandre-duarte

Post on 06-Jul-2015

233 views

Category:

Education


1 download

DESCRIPTION

Introdução ao projeto de experimentos fatoriais.

TRANSCRIPT

Page 1: Introdução ao Projeto de Experimentos

PROJETO DE EXPERIMENTOSAlexandre Duarte - http://alexandre.ci.ufpb.br/ensino/iad

Page 2: Introdução ao Projeto de Experimentos

OBJETIVOS

• Apresentar a terminologia básica de um projeto de experimento

• Descrever o processo de elaboração de um projeto de experimentos

• Apresentar os tipos mais comuns de projetos de experimento

Page 3: Introdução ao Projeto de Experimentos

PRA QUE SERVE UM PROJETO DE EXPERIMENTO?

• Comparar quantitativamente

• Sistemas

• Algoritmos

• Protótipos

• Modelos

• etc

Page 4: Introdução ao Projeto de Experimentos

TERMINOLOGIA• Replicação: significa (re-)executar o experimento

com uma configuração específica de níveis para cada um dos fatores

• Ajuda a identificar o impacto de erros experimentais

• Interação: ocorre quando o efeito de um fator depende do nível de um outro fator

Page 5: Introdução ao Projeto de Experimentos

TERMINOLOGIA• Variável resposta: o que se desejar medir

• Fatores: variáveis de entrada do experimento

• O que pode ser controlado pelo experimentador

• Níveis: valores específicos que podem ser atribuídos a cada fator

• Contínuos, discretos ou categóricos

Page 6: Introdução ao Projeto de Experimentos

PERGUNTAS BÁSICAS

• Você conhece as métricas?

• Você conhece os fatores?

• Você conhece os níveis?

Page 7: Introdução ao Projeto de Experimentos

VOCÊ SABE COMO PROJETAR UM EXPERIMENTO QUE COMPROVE OU

REFUTE AS SUAS HIPÓTESES DE PESQUISA?

Page 8: Introdução ao Projeto de Experimentos

OBJETIVOS DE UM PROJETO DE EXPERIMENTO

• Obter a maior quantidade possível de informação sobre o objeto em estudo

• Reduzir o trabalho/esforço de experimentação

• Tipicamente significa rodar o menor número de experimentos possível

• Realizar mais experimentos não é bom (gasta-se tempo e recursos) principalmente se for você o responsável por realizá-lo

• Facilitar a análise dos dados coletados

Page 9: Introdução ao Projeto de Experimentos

REPLICAÇÕES EXPERIMENTAIS• O objeto em estudo será avaliado utilizando vários

níveis de diferentes fatores

• Um execução com uma configuração particular de níveis recebe o nome de replicação

• Em geral, é necessário executar uma mesma replicarão várias vezes para permitir a validação e verificação estatística dos resultados

Page 10: Introdução ao Projeto de Experimentos

INTERAÇÃO ENTRE FATORES

• Alguns fatores têm efeitos completamente independentes um do outro

• Exemplo: Duplique o nível de um fator e reduzirá o valor da variável resposta à metade, independente dos demais fatores

• Mas os efeitos de alguns fatores dependem de outros fatores

• Fatores inter-atuantes

• A presença de fatores inter-atuantes complica o projeto experimental

Page 11: Introdução ao Projeto de Experimentos

ERROS COMUNS• Ignorar o erro experimental

• Existência de parâmetros não controlados (não são fatores)

• Não isolamento dos efeitos de diferentes fatores

• Ignorar as interações entre os fatores

• Projetos que requerem um número excessivo de experimentos

• O que é um número excessivo ?

Page 12: Introdução ao Projeto de Experimentos

TIPOS DE PROJETOS DE EXPERIMENTO

• Projeto simples

• Projeto fatorial completo

• Projeto fatorial fracionado

Page 13: Introdução ao Projeto de Experimentos

PROJETO SIMPLES

• Varie um fator de cada vez

• Assume que os fatores não interagem

• Usualmente requer mais esforço do que se pensa

• Tente evitar este tipo de projeto

Page 14: Introdução ao Projeto de Experimentos

PROJETO FATORIAL COMPLETO

• Testa todas as combinações possíveis para os níveis dos fatores

• Captura informação completa sobre a interação entre os fatores

• É, no entanto, um trabalho enorme!!!

• Principalmente quando envolve fatores com muitos níveis diferentes.

Page 15: Introdução ao Projeto de Experimentos

REDUZINDO O TRABALHO COM UM PROJETO FATORIAL COMPLETO• Reduza o número de níveis por fator

• Geralmente é uma boa opção

• Especialmente quando se sabe quais são os fatores mais importantes

• Usar mais níveis para fatores mais relevantes

• Reduza o número de fatores

• Simplifica o modelo experimental

• Cuidado para não remover fatores importantes

Page 16: Introdução ao Projeto de Experimentos

PROJETO FATORIAL FRACIONADO

• Mede apenas uma combinação de níveis de fatores

• O projeto precisa ser cuidadosamente planejado para capturar melhor qualquer interação que possa existir

• Menos trabalho porém pode apresentar maior imprecisão

• Muito útil quando se sabe a priori que alguns fatores não interagem

Page 17: Introdução ao Projeto de Experimentos

PROJETO FATORIAL 2K

• Usado para determinar os efeitos de K fatores com 2 níveis cada

• Em geral, este tipo de projeto é utilizado de maneira preliminar, antes de um estudo mais detalhado

• Cada fator é representado por seus níveis máximo e mínimo

• Pode oferecer “insights" sobre as interações entre os vários fatores

Page 18: Introdução ao Projeto de Experimentos

EFEITOS UNIDIRECIONAIS• Efeitos que variam em uma única direção a medida

que variamos o nível de um fator

• Se essa característica é conhecia a priori, um projeto fatorai 2k nos níveis máximo e mínimo pode ser ainda mais útil

• Pode demonstrar claramente quando um fator tem efeito significativo no experimento

Page 19: Introdução ao Projeto de Experimentos

PROJETO FATORIAL 22

• Dois fatores com dois níveis cada um

• Tipo mais simples de projeto de experimento fatorial

• Exemplo para ilustrar a construção de um experimento 2k

Page 20: Introdução ao Projeto de Experimentos

EXEMPLO

• Queremos avaliar o desempenho de uma máquina de busca composta por N servidores;

• Podemos utilizar vários algoritmos de escalonamento para distribuir as consultas

• O objetivo é completar as consultas no menor tempo possível

Page 21: Introdução ao Projeto de Experimentos

FATORES E NÍVEIS• Primeiro fator : número de núcleos de processamento

• Varia entre 8 e 64

• Segundo fator : algoritmos de escalonamento

• Varia entre aleatório e round-robin

• Outros fatores existem mas serão ignorados neste exemplo

Page 22: Introdução ao Projeto de Experimentos

DEFININDO AS VARIÁVEIS

XA = -1 se 8 servidores

1 se 64 servidores

XB = -1 se escalonamento aleatório

1 se round-robin

Page 23: Introdução ao Projeto de Experimentos

DADOS AMOSTRAIS

• Execução única de uma mesma carga de consultas nas duas configurações resultado nos seguintes tempos de execução

8 serv. (-1) 64 serv. (1)

Aleatório (-1) 820 217

Round Robin (1) 776 197

Page 24: Introdução ao Projeto de Experimentos

MODELO DE REGRESSÃO

Experimento I A B y

1 1 -1 -1 y1 = 820

2 1 1 -1 y2 = 217

3 1 -1 1 y3 = 766

4 1 1 1 y4 = 197

Page 25: Introdução ao Projeto de Experimentos

MODELO DE REGRESSÃO• y = q0 + qAxA + qBxB + qABxAxB

• 820 = q0 - qA - qB + qAB

• 217 = q0 + qA - qB - qAB

• 776 = q0 - qA + qB - qAB

• 197 = q0 + qA + qB + qAB

Page 26: Introdução ao Projeto de Experimentos

SOLUCIONANDO PARA OS QI'S

• q0 = (y1 + y2 + y3 + y4) / 4

• qA = (-y1 + y2 - y3 + y4) / 4

• qB = (-y1 - y2 + y3 + y4) / 4

• qAB = (y1 - y2 - y3 + y4) / 4

Page 27: Introdução ao Projeto de Experimentos

SOLUÇÃO DAS EQUAÇÕES• q0 = (820 + 217 + 776 + 197) / 4 = 502.5

• qA = (-820 + 217 - 776 + 197) / 4 = -295.5

• qB = (-820 - 217 + 776 + 197) / 4 = -16

• qAB = (820 - 217 - 776 + 197) / 4

• Assim, y = 502.5 - 295.5xA - 16xB + 6xAxB

Page 28: Introdução ao Projeto de Experimentos

SOLUÇÃO DAS EQUAÇÕES

• y = 502.5 - 295.5xA - 16xB + 6xAxB

• O número de servidores (A) tem maior impacto no tempo de resposta, e faz uma diferença de +-295.5

Page 29: Introdução ao Projeto de Experimentos

CALCULANDO A VARIAÇÃO

• Calcule a variância amostral de y

• Numerador é o SST (variação total)

• Outra fórmula, SST = 22qA2 + 22qB2 + 22qAB2

• Podemos utilizar isso para entender as causas da variação

Page 30: Introdução ao Projeto de Experimentos

TERMOS NO SST

• 22qA2 é parte da variação explicada pelo efeito de A (SSA)

• 22qB2 é parte da variação explicada pelo efeito de B (SSB)

• 22qAB2 é parte da variação explicada pelo efeito da interação de A e B (SSAB)

Page 31: Introdução ao Projeto de Experimentos

CALCULANDO A VARIAÇÃO• SSA = 349281

• SSB = 1024

• SSAB = 144

• SST = 350449

• Podemos agora calcular a fração da variação total devida a cata fator

Page 32: Introdução ao Projeto de Experimentos

FRAÇÕES DA VARIAÇÃO• Fração explicada por A: 99.67%

• Fração explicada por B: 0.29%

• Fração explica pela interação entre A e B: 0.04%

• Quase toda a variação no resultado é consequência do número de servidores. O escalonamento tem um efeito desprezível na performance do sistema.

Page 33: Introdução ao Projeto de Experimentos

PROJETO FATORIAL 2K

• Usado para analisar os efeitos de k fatores, cada um com 2 níveis

• Projetos 22 são um caso especial

Page 34: Introdução ao Projeto de Experimentos

EXEMPLO• No projeto de um sistema, os três fatores de

maior impacto e que precisam ser estudados são : tamanho do cache, tamanho da memória, e se 1 ou 2 processadores serão usados.

Fator Nível -1 Nível I

A: Tamanho da memória 1 GB 4 GB

B: Tamanho do Cache 128 KB 256 KB

C: # Processadores 1 2

Page 35: Introdução ao Projeto de Experimentos

EXEMPLO

• O projeto 23 e o desempenho medido em MIPS é mostrado na tabela abaixo

1 GB 4 GB

Cache (KB) 1 Proc. 2 Proc. 1 Proc. 2 Proc.

128 14 46 22 58

256 10 50 34 86

Page 36: Introdução ao Projeto de Experimentos

SOLUÇÃOI A B C Y

1 -1 -1 -1 14

1 1 -1 -1 22

1 -1 1 -1 10

1 1 1 -1 34

1 -1 -1 1 46

1 1 -1 1 58

1 -1 1 1 50

1 1 1 1 86

Page 37: Introdução ao Projeto de Experimentos

SOLUÇÃOI A B C AB AC BC ABC Y

1 -1 -1 -1 1 1 1 -1 14

1 1 -1 -1 -1 -1 1 1 22

1 -1 1 -1 -1 1 -1 1 10

1 1 1 -1 1 -1 -1 -1 34

1 -1 -1 1 1 -1 -1 1 46

1 1 -1 1 -1 1 -1 -1 58

1 -1 1 1 -1 -1 1 -1 50

1 1 1 1 1 1 1 1 86

Page 38: Introdução ao Projeto de Experimentos

SOLUÇÃOI A B C AB AC BC ABC Y1 -1 -1 -1 1 1 1 -1 141 1 -1 -1 -1 -1 1 1 221 -1 1 -1 -1 1 -1 1 101 1 1 -1 1 -1 -1 -1 341 -1 -1 1 1 -1 -1 1 461 1 -1 1 -1 1 -1 -1 581 -1 1 1 -1 -1 1 -1 501 1 1 1 1 1 1 1 86

320 80 40 160 40 16 24 8 Total40 10 5 20 5 2 3 1 Total/8

Page 39: Introdução ao Projeto de Experimentos

SOLUÇÃOI A B C AB AC BC ABC Y1 -1 -1 -1 1 1 1 -1 141 1 -1 -1 -1 -1 1 1 221 -1 1 -1 -1 1 -1 1 101 1 1 -1 1 -1 -1 -1 341 -1 -1 1 1 -1 -1 1 461 1 -1 1 -1 1 -1 -1 581 -1 1 1 -1 -1 1 -1 501 1 1 1 1 1 1 1 86

320 80 40 160 40 16 24 8 Total40 10 5 20 5 2 3 1 Total/8

Média qA qB qC qAB qAC qBC qABC

Page 40: Introdução ao Projeto de Experimentos

SOLUÇÃO

SST = 23 (qA2+qB2+qC2+qAB2+qAC2+qBC2+qABC2)

SST = 8(102+52+202+52+22+32+12)

SST = 800 + 200 + 3200 + 200 +32 + 72 + 8 = 4512

40 10 5 20 5 2 3 1 Total/8Média qA qB qC qAB qAC qBC qABC

Page 41: Introdução ao Projeto de Experimentos

SOLUÇÃO• A porção de variação explicada por cada fator e suas internações são:

• A: 800/4512 = 18%

• B: 200/4512 = 4%

• C: 3200/4512 = 71%

• AB: 200/4512 = 4%

• AC: 32/4512 = 1%

• BC: 72/4512 = 2%

• ABC: 8/4515 = 0% (pode ser ignorado)

Page 42: Introdução ao Projeto de Experimentos

PROJETOS FATORIAIS 2KR• Projetos fatoriais 2k não permitem estimar os erros

experimentais já que nenhum experimento é repetido

• Se cada um dos 2k experimentos forem repetidos r vezes, teremos 2kr observações

• Poderemos estimar erros experimentais

• Nos permite calcular o % da variação devido aos erros experimentais

Page 43: Introdução ao Projeto de Experimentos

PROJETOS FATORIAIS 22R

• Assume o modelo genérico:

• y = q0 + qAxA + qBxB + qABxAxB + e

• Computar os efeitos (coeficientes) de forma similar aos projetos 2k

Page 44: Introdução ao Projeto de Experimentos

EXEMPLOUm sistema foi avaliado considerando 2 fatores (A e B) cada um deles com dois níveis. Cada experimento foi repetido 3 vezes e os resultados são mostrados na tabela abaixo

I A B AB y Média(y)1 -1 -1 1 (15, 18, 12) 151 1 -1 -1 (45, 48, 51) 481 -1 1 -1 (25, 28, 19) 241 1 1 1 (75, 75, 81) 77

164 86 38 20 Total41 21.5 9.5 5 Total/4q0 qA qB qAB

Page 45: Introdução ao Projeto de Experimentos

ESTIMANDO ERROS EXPERIMENTAIS

I A B AB y Média(y) e

1 -1 -1 1 (15, 18, 12) 15 (0, 3,-3)

1 1 -1 -1 (45, 48, 51) 48 (-3, 0, 3)

1 -1 1 -1 (25, 28, 19) 24 (1, 4, -5)

1 1 1 1 (75, 75, 81) 77 (-2, -2, 4)

SSE = 0 + 9 + 9 + 9 + 0 + 9 + 1 +16 + 25 +4 +4 +16 = 102

Page 46: Introdução ao Projeto de Experimentos

EXPLICANDO A VARIAÇÃO

• SST = SSA + SSB + SSAB + SSE

• SSA = 22rqA2

• SSB = 22rqB2

• SSAB = 22rqAB2

Page 47: Introdução ao Projeto de Experimentos

EXPLICANDO A VARIAÇÃO

• SSA = 22rqA2 = 4*3*(21.5)2 = 5547

• SSB = 22rqB2 = 4*4*(9.5)2 = 1083

• SSAB = 22rqAB2 = 4*3*(5)2 = 300

• SST =5547 + 1083 + 300 + 102 = 7032

Page 48: Introdução ao Projeto de Experimentos

EXPLICANDO A VARIAÇÃO

• O fator A explica 5547/7032 = 78.9% da variação

• O fator B explica 1083/7032 = 15.4%

• A interação entre A e B explica 300/7032 = 4.3%

• Os demais 1.4% são inexplicados e atribuídos a erros experimentais