SlideShare uma empresa Scribd logo
1 de 49
PPGI - UNIRIO
Estudos Experimentais com Algoritmos
de Otimização em Engenharia de
Software
Márcio Barros
PPGI / UNIRIO
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Quem sou eu?
• Professor e pesquisador da UNIRIO, Rio de Janeiro, Brasil
• Trabalhando com Engenharia de Software nos últimos 15 anos, mas com um
"passado sujo" queimando EPROM e trabalhando com sistemas operacionais
• UNIRIO é a "Universidade Federal do Estado
do Rio de Janeiro"
• Situação um pouco confusa, dado que temos
a "Universidade Federal do Rio de Janeiro" e
a "Universidade Estadual do Rio de Janeiro"
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Temas de interesse do meu grupo de pesquisa
DESIGN
França, 2009
Pinto, 2014
Monçores, 2015
Barros, 2012/13/14
Barros e Farzat, 2013/15
TESTES
Farzat, 2012
SURVEYS
Barros e Dias-Neto, 2011
UNIRIO + UECE + UFPR + UFAM, 2014
GERÊNCIA
Barreto, 2007 Netto, 2009 Figueiredo, 2012 Costa, 2012
Magdaleno, 2013 Araújo, 2015 Fernandes, 2016 (MSc!) Silva, 2016 (MSc!)
REQUISITOS
Padilha, 2014
Fuchshuber, 2015
Pitangueira, 2016 (DSc!)
CÓDIGO
Farzat, 2017 (DSc!)
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
SBSE: muitas alternativas, pouco tempo.
Algoritmos heurísticos são úteis quando não é viável avaliar todas as
possíveis soluções para um problema.
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
SBSE: muitas alternativas, pouco tempo.
• Quando o número de possíveis soluções é muito grande e não podemos
examinar todas as alternativas, usamos algoritmos heurísticos
• Cada algoritmo adota uma sistemática diferente para examinar um mínimo
de alternativas em busca da melhor solução ... e aqui entram as analogias
» Subidas de encosta, reprodução e evolução das espécies, formigas, abelhas,
pássaros-cuco, cardumes, nuvens, partículas, ...
• Para atender a uma grande diversidade de problemas, os algoritmos se
baseiam em componentes aleatórios
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
SBSE: muitas alternativas, pouco tempo.
IN RANDOM WE TRUST
Como pesquisadores da área, acreditamos que os números aleatórios vão nos
levar às boas soluções que procuramos ...
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
SBSE: muitas alternativas, pouco tempo.
INCERTUM
... ou em termos locais.
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Mas espera aí ...
Nós somos cientistas ... aquela
turma que queimava na fogueira
porque não acreditava em nada.
Como podemos acreditar em
números aleatórios?
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Mas espera aí ...
• Afinal, já provaram que os números aleatórios de fato não existem nos
computadores ...
• ... e isto coloca os números aleatórios um degrau abaixo dos Leprechauns
em termos de comprovação científica.
“One thing that traditional computer systems aren’t
good at is coin flipping.”
Steve Ward, MIT
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Mas espera aí ...
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Mas espera aí ...
• Nosso ceticismo gera uma nova crença: a fé nas observações!
• Como os algoritmos heurísticos têm componentes aleatórios, cada
rodada independente pode produzir resultados diferentes
• Nós confiamos no poder de múltiplas observações para descrever e
comparar o comportamento geral dos algoritmos
• O processo experimental é um ritual pelo qual coletamos e analisamos
as observações
PPGI - UNIRIO
Processo experimental
"One ring to rule them all ..."
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Processo experimental
Salve nossa fé nas observações, nos experimentos e na análise estatística.
Planejamento
Execução
Apresentação
Análise
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Planejamento de estudos experimentais
No planejamento, preparamos a coleta de dados ...
Seleção dos participantes
Formulação das questões de pesquisa
Identificação dos fatores e respostas
Seleção das instâncias
Análise das ameaças de validade
Planejamento
Execução
Apresentação
Análise
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Formulação das questões de pesquisa
Que algoritmo acha as melhores
soluções para um problema?
Que algoritmo encontra soluções mais
rápido para um problema?
Como um algoritmo mono-objetivo se
compara a um multi-objetivo?
Como um algoritmo heurístico se
compara a um método tradicional?
Como a formulação do problema se
compara com uma variante?
Como os resultados se relacionam com
as características das instâncias?
O que podemos aprender com um
algoritmo heurístico?
Search-based Software Engineering Search-based Software Engineering
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Seleção dos fatores e respostas
As questões de pesquisa orientam a escolha dos fatores e das respostas
Fatores: são as variáveis
controladas pelo estudo
experimental e representam
as variações aplicadas no
estudo para avaliação dos
efeitos nos resultados.
Respostas: são os resultados
colhidos durante a execução
do experimento e que
representam os efeitos das
combinações dos fatores.
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Seleção dos fatores e respostas
Observação
Causa Efeito
Fatores Respostas
Teoria
Execução do
experimento
• O projeto do estudo experimental relaciona fatores e respostas
» Cada valor que um fator pode assumir é chamado de tratamento
» Relacionamos os tratamentos com as respostas para explicar uma teoria e
responder a uma questão de pesquisa
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Seleção dos fatores e respostas
Observação
Causa Efeito
Teoria
Comparação e
Conclusão
Aplicação da
Técnica A
Aplicação da
Técnica B
Medida de
Produtividade
Medida de
Produtividade
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Seleção dos fatores e respostas
Fatores:
• Algoritmo 1
• Algoritmo 2
• Algoritmo 3, ...
Respostas:
• Qualidade da solução
• Tempo de execução do algoritmo
• Tempo até a melhor solução
• Hipervolume
• Spread
• Generational distance, ...
Que algoritmo acha as melhores
soluções para um problema?
Que algoritmo encontra soluções mais
rápido para um problema?
Como um algoritmo mono-objetivo se
compara a um multi-objetivo?
Search-based Software Engineering
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Seleção dos fatores e respostas
Como um algoritmo heurístico se
compara a um método tradicional?
Como a formulação do problema se
compara com uma variante?
Como os resultados se relacionam com
as características das instâncias?
O que podemos aprender com um
algoritmo heurístico?
Search-based Software Engineering
Fatores:
• Algoritmo
• Método tradicional
• Formulação A para o problema
• Formulação B para o problema
• Dados das instâncias (número de
módulos, número de dependências,
número de requisitos, número de
clientes, ...).
Respostas:
• Qualidade da solução
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Seleção das instâncias
• É muito importante apresentar detalhes sobre as instâncias selecionadas
» O que caracteriza seu tamanho e sua complexidade?
» Como seus dados foram extraídos?
» Porque foram selecionadas?
» São reais, realistas ou sintéticas?
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Ameaças a validade
Um estudo na Engenharia de Software baseada em Buscas.
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Ameaças a validade
• Ameaças a validade de conclusão verificam se há um relacionamento
estatístico válido entre os tratamentos e os resultados observados
» Não considerar a variação aleatória nos algoritmos
» Não apresentar estatísticas descritivas
» Não considerar uma boa base de comparação
» Não apresentar as questões de pesquisa e hipóteses
• Ameaças a validade interna verificam se diferenças observadas podem
ser atribuídas aos tratamentos ou a fatores fora do controle no estudo
» Falta de parametrização adequada
» Ausência de detalhes sobre a implementação
» Ausência de detalhes sobre os processos de coleta de dados
» Falta de instâncias reais
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Ameaças a validade
• Ameaças a validade de construção questionam se objetos e participantes
do estudo realmente refletem a questão que está sendo abordada
» Falta de clareza nas medidas de qualidade
» Ausência de medidas de custo e tempo de execução
» Ausência de discussão sobre o modelo do problema
• Ameaças a validade externa questionam a capacidade de generalizar os
resultados do estudo para uma população maior que os participantes
» Falta de clareza sobre as instâncias selecionadas
» Falta de clareza sobre o método de seleção de instâncias
» Ausência de variação no tamanho das instâncias
» Ausência de variação na complexidade das instâncias
PPGI - UNIRIO
Análise Estatística
Meu reino por um p-value bem pequeno ...
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Análise estatística
Após a coleta, precisamos discutir os dados observados.
Planejamento
Execução
Apresentação
Análise
Análise gráfica dos dados
Estatísticas descritivas
Inferência estatística
Cálculo de tamanho de efeito
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Análise estatística
Um excelente roteiro focado em SBSE
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Análise estatística
• O projeto do estudo experimental seleciona fatores e organiza rodadas
para avaliar uma ou mais questões de pesquisa
» De todo modo, ao final do estudo temos séries de respostas observadas para
cada tratamento
• Suponhamos um caso simples, em que temos 3 algoritmos competindo
para gerar a melhor solução para um problema
» Algoritmos A, B e C (um fator, 3 valores)
» Considere que temos 20 instâncias, cada uma analisada separadamente
» Como cada rodada pode gerar resultados diferentes, rodamos 30 vezes cada
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Sumarização dos resultados
• Antes de mais nada, precisamos apresentar os dados e as estatísticas
descritivas nos ajudam a cumprir este objetivo
» É fundamental mostrar medidas de tendência central (média, mediana, moda)
e medidas de dispersão (desvio padrão, quartil, range)
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Sumarização dos resultados
• Sempre que possível, é bom utilizar gráficos para mostrar os resultados
» Box-plots são especialmente úteis para mostrar as distribuições dos dados
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Sumarização dos resultados
Gráficos radiais são úteis para apresentar diversos objetivos ao mesmo tempo
e comparar diferentes soluções não-dominadas.
MQ
EVM
IEXE
CS
A
B
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Sumarização dos resultados
E sempre ajuda ser criativo ...
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Inferência estatística para comparação de médias
• Retornando aos nossos algoritmos A, B e C ...
» Tipicamente, queremos avaliar se a média ou mediana dos resultados atingidos
por um algoritmo são diferentes dos resultados de outro
» Chamamos de hipótese nula a identificação de igualdade de média ou mediana
(não há diferença entre os resultados dos algoritmos)
» Os testes de inferência estatística verificam se é possível rejeitar a hipótese
nula, de acordo com os dados observados e suas propriedades estatísticas
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Inferência estatística para comparação de médias
• Entrada: duas ou mais séries de dados que serão comparados
• Saída: uma indicação de médias ou medianas iguais
• Procedimento:
» Fixar o nível de significância do teste, , como 5% ou 1%
» Construir a região crítica de uma estatística com distribuição conhecida
» Obter o valor da estatística com base nos dados coletados
» Se o valor estiver na região crítica, rejeita-se a hipótese nula de igualdade
Aceitação de H0 Rejeição de H0
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Inferência estatística para comparação de médias
Exploração de
relacionamento
Coeficiente de Spearman, Kendall
Testes de
hipótese
2 grupos
3+ grupos
Mann-Whitney
Kruskal-Wallis
Vamos focar na estatística não-paramétrica, menos restrita ao tipo dos dados.
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Inferência estatística para comparação de médias
Nível de confiança
()
Tamanho de
efeito (ES)
Tamanho da
amostra (N)
Existem três informações fundamentais para os cálculos.
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Cuidado para não supervalorizar o p-value!!!
• O p-value foi definido em torno de 1920 como uma “maneira de julgar se as
evidências são significativas e merecem atenção do pesquisador”
• O p-value não é um resultado definitivo e inquestionável da existência de
diferença estatística, pois ele depende do tamanho da população
• Com muitos dados, é possível obter resultados com diferença significativa,
mesmo que a diferença seja tão pequena que não tenha significado prático
• Se fizermos um número suficientemente grande de comparações, em
algum momento iremos encontrar alguma diferença!
• O p-value também não mostra se a diferença observada é relevante na
prática e deve ser complementado com uma medida de tamanho de efeito
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Tamanho de Efeito (Effect-Size)
• Tamanho de efeito é uma medida estatística descritiva da força do
relacionamento entre duas variáveis em uma população ou amostra
» O tamanho de efeito expressa a magnitude do relacionamento sem indicar se
esta o relacionamento entre os dados é casual ou significativo
» Como um exemplo de tamanho de efeito absoluto, podemos dizer que a
técnica de teste A identifica 30 erros a mais que a técnica de teste B
» Como um exemplo de tamanho de efeito padronizado, podemos dizer que
resultados identificados pelo algoritmo A são mais eficientes do que os
resultados obtidos pelo algoritmo B em 80% das execuções
» Medidas de tamanho de efeito padronizados são preferenciais a medidas
absolutas por serem independentes do contexto (no exemplo acima, 30 erros
a mais é muito ou pouco? depende do número total de erros ...)
» Cada tipo de teste estatístico tem um ou mais tipos de tamanho de efeito
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Mann-Whitney (Wilcoxon)
• Comparação de mediana entre duas séries
» Requer que as amostras sejam independentes, com dados nas escalas ordinal,
intervalar ou razão
» Para a realização do teste as observações das amostras são reunidas em um
único grupo, que é ordenado
» As amostras são transformadas em rankings dentro do grupo e calcula-se o
somatório dos rankings da menor amostra
» Finalmente, calcula-se o valor Z que é comparado com uma tabela de valores
publicados em livros de Estatística
» Quando uma série é comparada com mais do que uma segunda série devemos
aplicar correções de p-value (tipicamente Bonferroni ou Holm)
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Mann-Whitney (Wilcoxon)
> ycorretos <- c(0.83, 0.73, 0.87, 0.78, 0.74, 0.74, 0.87, 0.75, 0.86, 0.82, 0.77);
> xcorretos <- c(0.90, 0.89, 0.88, 0.87, 0.97, 0.81, 0.82, 0.86, 0.92, 0.96, 0.98);
> wilcox.test(ycorretos, xcorretos);
Wilcoxon rank sum test with continuity correction
data: xcorretos and ycorretos
W = 108, p-value = 0.001986
alternative hypothesis: true location shift is not equal to 0
Conclusão: é possível afirmar, com pelo menos 95%
de certeza, que existe diferença no percentual de
requisitos corretos encontrados pelos participantes
(p-value < 0.05)
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Mann-Whitney (Wilcoxon)
> ycorretos <- c(0.83, 0.73, 0.87, 0.78, 0.74, 0.74, 0.87, 0.75, 0.86, 0.82, 0.77);
> wilcox.test(ycorretos, um=0.75);
Wilcoxon signed rank test with continuity correction
data: ycorretos
V = 66, p-value = 0.003822
alternative hypothesis: true location is not equal to 0
Warning message:
In wilcox.test.default(ycorretos, um = 0.75) :
cannot compute exact p-value with ties
• Também é possível comparar uma série com um valor constante ...
» Útil para comparar com um resultado conhecido da literatura ou o resultado de
uma técnica tradicional e sem componentes aleatórios
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Mann-Whitney (Wilcoxon)
• Medida de tamanho de efeito (Vargha & Delaney’s Â12)
» O tamanho de efeito é calculado a partir dos rankings dos valores observados
e varia de 0% a 100%
» Sua interpretação física é muito simples: representa o número de vezes em
que a série A foi maior do que a série B
» Â12 = 50% indica que os dois tratamentos têm chances iguais de gerar o
melhor resultado
» Â12 = 80% indica que o primeiro tratamento será melhor que o segundo em
80% das vezes que for aplicado
2
1
1
1
12
2
1
n
n
n
R
Â



onde R1 é o somatório dos rankings da primeira série
sob análise quando se considera a ordem dos dados
disponíveis nas duas séries
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Mann-Whitney (Wilcoxon)
Interpretação do tamanho de efeito
Pequeno Médio Grande
d > 0.50 > 0.65 > 0.80
Aplicando um teste de Wilcoxon-Mann-Whitney observamos diferenças significativas na qualidade das
soluções encontradas pelos algoritmos A e B com tamanho de efeito grande (p-value = 0.0019, Â12 =
0.89) favorecendo o algoritmo A.
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Kruskal-Wallis
• Teste de hipótese que avalia a existência de diferença significativa entre as
médias observadas entre dois ou mais grupos
» Permite comparar as médias de diversos tratamentos, sendo usada como uma
extensão do teste de Mann-Whitney quando existem mais de dois tratamentos
» Avalia se a variabilidade dentro dos grupos é maior do que a existente entre os
grupos e supõe apenas a independência das observações
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Kruskal-Wallis
> value <- c(1, 2, 5, 3, 2, 1, 1, 3, 2, 1, 4, 3, 6, 5, 2, 6, 1, 6, 5, 4, 9, 6, 7, 7, 5, 1, 8, 9, 6, 5);
> group <- factor(c(rep(1, 10), rep(2, 10), rep(3, 10));
> data <- data.frame(group, value);
> kruskal.test(value ~group, data)
Kruskal-Wallis rank sum test
data: value by group
Kruskal-Wallis chi-squared = 13.6754, df = 2, p-value = 0.001073
p-value < 0.05  observamos um
efeito significativo do grupo no valor
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Kruskal-Wallis
• Agora que observamos um efeito, temos que identificar onde ele está
» Para identificar este efeito, fazemos um teste chamado post-hoc
» O teste consiste na avaliação de pares de comparações usando o teste de
Mann-Whitney com correção
> pairwise.wilcox.test(value, group, p.adj="bonferroni", exact=FALSE);
Pairwise comparisons using Wilcoxon rank sum test
data: value and group
1 2
2 0.0418 -
3 0.0058 0.0791
P value adjustment method: bonferroni p-value < 0.05  observamos um
efeito significativo entre os
tratamentos 1 e 2 e 1 e 3
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Teste de Kruskal-Wallis
Um teste de Kruskal-Wallis identificou diferenças significativas entre os grupos (p-value = 0.001073).
Uma análise post-hoc usando testes de Mann-Whitney com correção de Bonferroni mostrou que as
diferenças significativas ocorriam entre os algoritmos 1 e 2 (p-value = 0.0418, Â12=17.5%) favorável ao
algoritmo 2 e entre os algoritmos 1 e 3 (p-value = 0.0058, Â12=9%) favorável ao algoritmo 3.
> g1 <- subset(data, data$group == 1)
> g2 <- subset(data, data$group == 2)
> g3 <- subset(data, data$group == 3)
>
> vargha.delaney(g1$value, g2$value)
[1] 0.175
> vargha.delaney(g1$value, g3$value)
[1] 0.09
> vargha.delaney(g2$value, g3$value)
[1] 0.205
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Resumindo ...
PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE
MÁRCIO BARROS, PPGI/UNIRIO
Obrigado pela atenção!

Mais conteúdo relacionado

Semelhante a Estudos experimentais com algoritmos de otimização

TDC2017 Aplicação de Estimativa de Custo e Esforço em Teste de Software com APT
TDC2017 Aplicação de Estimativa de Custo e Esforço em Teste de Software com APTTDC2017 Aplicação de Estimativa de Custo e Esforço em Teste de Software com APT
TDC2017 Aplicação de Estimativa de Custo e Esforço em Teste de Software com APTJeremias Araujo
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Qa test roadsec-bh - testes de segurança, não comece pelo fim!
Qa test   roadsec-bh - testes de segurança, não comece pelo fim!Qa test   roadsec-bh - testes de segurança, não comece pelo fim!
Qa test roadsec-bh - testes de segurança, não comece pelo fim!Welington Monteiro
 
TDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data ScienceTDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data Sciencetdc-globalcode
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aLeonardo Molinari
 
[GUTS-RS] Evento julho 2017 - Como iniciar os testes de performance em uma a...
[GUTS-RS] Evento julho 2017 -  Como iniciar os testes de performance em uma a...[GUTS-RS] Evento julho 2017 -  Como iniciar os testes de performance em uma a...
[GUTS-RS] Evento julho 2017 - Como iniciar os testes de performance em uma a...GUTS-RS
 
Apresentação Artigo SBQS 2015 - Um Comparativo na Execução de Testes Manuais ...
Apresentação Artigo SBQS 2015 - Um Comparativo na Execução de Testes Manuais ...Apresentação Artigo SBQS 2015 - Um Comparativo na Execução de Testes Manuais ...
Apresentação Artigo SBQS 2015 - Um Comparativo na Execução de Testes Manuais ...Vanilton Pinheiro
 
WTDQS 2019 - Uma abordagem para localização de mutantes minimais e equivalent...
WTDQS 2019 - Uma abordagem para localização de mutantes minimais e equivalent...WTDQS 2019 - Uma abordagem para localização de mutantes minimais e equivalent...
WTDQS 2019 - Uma abordagem para localização de mutantes minimais e equivalent...Claudinei Brito Junior
 
Tecnicas de projeto design especificacao modelagem de casos de testes
Tecnicas de projeto design especificacao modelagem de casos de testesTecnicas de projeto design especificacao modelagem de casos de testes
Tecnicas de projeto design especificacao modelagem de casos de testesCristiano Caetano
 
Teste de Desempenho, muito além do JMeter
Teste de Desempenho, muito além do JMeterTeste de Desempenho, muito além do JMeter
Teste de Desempenho, muito além do JMeterJuliano Santos
 
Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)Vanilton Pinheiro
 
Inovação aberta na indústria de software: Avaliação do perfil de inovação de ...
Inovação aberta na indústria de software: Avaliação do perfil de inovação de ...Inovação aberta na indústria de software: Avaliação do perfil de inovação de ...
Inovação aberta na indústria de software: Avaliação do perfil de inovação de ...Priscila Rosa
 
Projetos de pesquisa: guia rapido para elaboracao
Projetos de pesquisa: guia rapido para elaboracaoProjetos de pesquisa: guia rapido para elaboracao
Projetos de pesquisa: guia rapido para elaboracaoCarlos Fernando Jung
 
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...Rafael Targino
 
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...Marena Cutnei
 
Análise de aderência de práticas ágeis na cultura de startups de software: o ...
Análise de aderência de práticas ágeis na cultura de startups de software: o ...Análise de aderência de práticas ágeis na cultura de startups de software: o ...
Análise de aderência de práticas ágeis na cultura de startups de software: o ...Marvin Ferreira
 
Gerenciamento da Qualidade
Gerenciamento da QualidadeGerenciamento da Qualidade
Gerenciamento da QualidadeMarcelo Yamaguti
 
Engenharia e Treinamentos em Segurança do Trabalho
Engenharia e Treinamentos em Segurança do TrabalhoEngenharia e Treinamentos em Segurança do Trabalho
Engenharia e Treinamentos em Segurança do TrabalhoTiago Augusto de Paula
 

Semelhante a Estudos experimentais com algoritmos de otimização (20)

TDC2017 Aplicação de Estimativa de Custo e Esforço em Teste de Software com APT
TDC2017 Aplicação de Estimativa de Custo e Esforço em Teste de Software com APTTDC2017 Aplicação de Estimativa de Custo e Esforço em Teste de Software com APT
TDC2017 Aplicação de Estimativa de Custo e Esforço em Teste de Software com APT
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Qa test roadsec-bh - testes de segurança, não comece pelo fim!
Qa test   roadsec-bh - testes de segurança, não comece pelo fim!Qa test   roadsec-bh - testes de segurança, não comece pelo fim!
Qa test roadsec-bh - testes de segurança, não comece pelo fim!
 
TDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data ScienceTDC2016SP - Trilha Data Science
TDC2016SP - Trilha Data Science
 
Gerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2aGerenciando Testes Com Qualidade V2a
Gerenciando Testes Com Qualidade V2a
 
[GUTS-RS] Evento julho 2017 - Como iniciar os testes de performance em uma a...
[GUTS-RS] Evento julho 2017 -  Como iniciar os testes de performance em uma a...[GUTS-RS] Evento julho 2017 -  Como iniciar os testes de performance em uma a...
[GUTS-RS] Evento julho 2017 - Como iniciar os testes de performance em uma a...
 
ERGONOMIA_AULA2.pdf
ERGONOMIA_AULA2.pdfERGONOMIA_AULA2.pdf
ERGONOMIA_AULA2.pdf
 
Apresentação Artigo SBQS 2015 - Um Comparativo na Execução de Testes Manuais ...
Apresentação Artigo SBQS 2015 - Um Comparativo na Execução de Testes Manuais ...Apresentação Artigo SBQS 2015 - Um Comparativo na Execução de Testes Manuais ...
Apresentação Artigo SBQS 2015 - Um Comparativo na Execução de Testes Manuais ...
 
WTDQS 2019 - Uma abordagem para localização de mutantes minimais e equivalent...
WTDQS 2019 - Uma abordagem para localização de mutantes minimais e equivalent...WTDQS 2019 - Uma abordagem para localização de mutantes minimais e equivalent...
WTDQS 2019 - Uma abordagem para localização de mutantes minimais e equivalent...
 
Tecnicas de projeto design especificacao modelagem de casos de testes
Tecnicas de projeto design especificacao modelagem de casos de testesTecnicas de projeto design especificacao modelagem de casos de testes
Tecnicas de projeto design especificacao modelagem de casos de testes
 
Teste de Desempenho, muito além do JMeter
Teste de Desempenho, muito além do JMeterTeste de Desempenho, muito além do JMeter
Teste de Desempenho, muito além do JMeter
 
Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)Minicurso - Teste de software (CACSI 2015)
Minicurso - Teste de software (CACSI 2015)
 
Inovação aberta na indústria de software: Avaliação do perfil de inovação de ...
Inovação aberta na indústria de software: Avaliação do perfil de inovação de ...Inovação aberta na indústria de software: Avaliação do perfil de inovação de ...
Inovação aberta na indústria de software: Avaliação do perfil de inovação de ...
 
Projetos de pesquisa: guia rapido para elaboracao
Projetos de pesquisa: guia rapido para elaboracaoProjetos de pesquisa: guia rapido para elaboracao
Projetos de pesquisa: guia rapido para elaboracao
 
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
 
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
Scrum Gathering Rio 2016 - Cinco Desafios na Definição de uma Metodologia Ági...
 
Análise de aderência de práticas ágeis na cultura de startups de software: o ...
Análise de aderência de práticas ágeis na cultura de startups de software: o ...Análise de aderência de práticas ágeis na cultura de startups de software: o ...
Análise de aderência de práticas ágeis na cultura de startups de software: o ...
 
Gerenciamento da Qualidade
Gerenciamento da QualidadeGerenciamento da Qualidade
Gerenciamento da Qualidade
 
Aula1 Apresentacao TEES
Aula1 Apresentacao TEESAula1 Apresentacao TEES
Aula1 Apresentacao TEES
 
Engenharia e Treinamentos em Segurança do Trabalho
Engenharia e Treinamentos em Segurança do TrabalhoEngenharia e Treinamentos em Segurança do Trabalho
Engenharia e Treinamentos em Segurança do Trabalho
 

Último

Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxedelon1
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxLusGlissonGud
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdfLeloIurk1
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfRavenaSales1
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxTailsonSantos1
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfWagnerCamposCEA
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAHELENO FAVACHO
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfHELENO FAVACHO
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfLuizaAbaAba
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdfLeloIurk1
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasSocorro Machado
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 

Último (20)

Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptxSlide - EBD ADEB 2024 Licao 02 2Trim.pptx
Slide - EBD ADEB 2024 Licao 02 2Trim.pptx
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptx
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
Os editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptxOs editoriais, reportagens e entrevistas.pptx
Os editoriais, reportagens e entrevistas.pptx
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIAPROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
PROJETO DE EXTENSÃO I - AGRONOMIA.pdf AGRONOMIAAGRONOMIA
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdfPROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
PROJETO DE EXTENSÃO I - SERVIÇOS JURÍDICOS, CARTORÁRIOS E NOTARIAIS.pdf
 
atividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdfatividades_reforço_4°ano_231206_132728.pdf
atividades_reforço_4°ano_231206_132728.pdf
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 

Estudos experimentais com algoritmos de otimização

  • 1. PPGI - UNIRIO Estudos Experimentais com Algoritmos de Otimização em Engenharia de Software Márcio Barros PPGI / UNIRIO
  • 2. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Quem sou eu? • Professor e pesquisador da UNIRIO, Rio de Janeiro, Brasil • Trabalhando com Engenharia de Software nos últimos 15 anos, mas com um "passado sujo" queimando EPROM e trabalhando com sistemas operacionais • UNIRIO é a "Universidade Federal do Estado do Rio de Janeiro" • Situação um pouco confusa, dado que temos a "Universidade Federal do Rio de Janeiro" e a "Universidade Estadual do Rio de Janeiro"
  • 3. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Temas de interesse do meu grupo de pesquisa DESIGN França, 2009 Pinto, 2014 Monçores, 2015 Barros, 2012/13/14 Barros e Farzat, 2013/15 TESTES Farzat, 2012 SURVEYS Barros e Dias-Neto, 2011 UNIRIO + UECE + UFPR + UFAM, 2014 GERÊNCIA Barreto, 2007 Netto, 2009 Figueiredo, 2012 Costa, 2012 Magdaleno, 2013 Araújo, 2015 Fernandes, 2016 (MSc!) Silva, 2016 (MSc!) REQUISITOS Padilha, 2014 Fuchshuber, 2015 Pitangueira, 2016 (DSc!) CÓDIGO Farzat, 2017 (DSc!)
  • 4. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO SBSE: muitas alternativas, pouco tempo. Algoritmos heurísticos são úteis quando não é viável avaliar todas as possíveis soluções para um problema.
  • 5. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO SBSE: muitas alternativas, pouco tempo. • Quando o número de possíveis soluções é muito grande e não podemos examinar todas as alternativas, usamos algoritmos heurísticos • Cada algoritmo adota uma sistemática diferente para examinar um mínimo de alternativas em busca da melhor solução ... e aqui entram as analogias » Subidas de encosta, reprodução e evolução das espécies, formigas, abelhas, pássaros-cuco, cardumes, nuvens, partículas, ... • Para atender a uma grande diversidade de problemas, os algoritmos se baseiam em componentes aleatórios
  • 6. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO SBSE: muitas alternativas, pouco tempo. IN RANDOM WE TRUST Como pesquisadores da área, acreditamos que os números aleatórios vão nos levar às boas soluções que procuramos ...
  • 7. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO SBSE: muitas alternativas, pouco tempo. INCERTUM ... ou em termos locais.
  • 8. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Mas espera aí ... Nós somos cientistas ... aquela turma que queimava na fogueira porque não acreditava em nada. Como podemos acreditar em números aleatórios?
  • 9. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Mas espera aí ... • Afinal, já provaram que os números aleatórios de fato não existem nos computadores ... • ... e isto coloca os números aleatórios um degrau abaixo dos Leprechauns em termos de comprovação científica. “One thing that traditional computer systems aren’t good at is coin flipping.” Steve Ward, MIT
  • 10. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Mas espera aí ...
  • 11. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Mas espera aí ... • Nosso ceticismo gera uma nova crença: a fé nas observações! • Como os algoritmos heurísticos têm componentes aleatórios, cada rodada independente pode produzir resultados diferentes • Nós confiamos no poder de múltiplas observações para descrever e comparar o comportamento geral dos algoritmos • O processo experimental é um ritual pelo qual coletamos e analisamos as observações
  • 12. PPGI - UNIRIO Processo experimental "One ring to rule them all ..."
  • 13. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Processo experimental Salve nossa fé nas observações, nos experimentos e na análise estatística. Planejamento Execução Apresentação Análise
  • 14. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Planejamento de estudos experimentais No planejamento, preparamos a coleta de dados ... Seleção dos participantes Formulação das questões de pesquisa Identificação dos fatores e respostas Seleção das instâncias Análise das ameaças de validade Planejamento Execução Apresentação Análise
  • 15. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Formulação das questões de pesquisa Que algoritmo acha as melhores soluções para um problema? Que algoritmo encontra soluções mais rápido para um problema? Como um algoritmo mono-objetivo se compara a um multi-objetivo? Como um algoritmo heurístico se compara a um método tradicional? Como a formulação do problema se compara com uma variante? Como os resultados se relacionam com as características das instâncias? O que podemos aprender com um algoritmo heurístico? Search-based Software Engineering Search-based Software Engineering
  • 16. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Seleção dos fatores e respostas As questões de pesquisa orientam a escolha dos fatores e das respostas Fatores: são as variáveis controladas pelo estudo experimental e representam as variações aplicadas no estudo para avaliação dos efeitos nos resultados. Respostas: são os resultados colhidos durante a execução do experimento e que representam os efeitos das combinações dos fatores.
  • 17. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Seleção dos fatores e respostas Observação Causa Efeito Fatores Respostas Teoria Execução do experimento • O projeto do estudo experimental relaciona fatores e respostas » Cada valor que um fator pode assumir é chamado de tratamento » Relacionamos os tratamentos com as respostas para explicar uma teoria e responder a uma questão de pesquisa
  • 18. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Seleção dos fatores e respostas Observação Causa Efeito Teoria Comparação e Conclusão Aplicação da Técnica A Aplicação da Técnica B Medida de Produtividade Medida de Produtividade
  • 19. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Seleção dos fatores e respostas Fatores: • Algoritmo 1 • Algoritmo 2 • Algoritmo 3, ... Respostas: • Qualidade da solução • Tempo de execução do algoritmo • Tempo até a melhor solução • Hipervolume • Spread • Generational distance, ... Que algoritmo acha as melhores soluções para um problema? Que algoritmo encontra soluções mais rápido para um problema? Como um algoritmo mono-objetivo se compara a um multi-objetivo? Search-based Software Engineering
  • 20. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Seleção dos fatores e respostas Como um algoritmo heurístico se compara a um método tradicional? Como a formulação do problema se compara com uma variante? Como os resultados se relacionam com as características das instâncias? O que podemos aprender com um algoritmo heurístico? Search-based Software Engineering Fatores: • Algoritmo • Método tradicional • Formulação A para o problema • Formulação B para o problema • Dados das instâncias (número de módulos, número de dependências, número de requisitos, número de clientes, ...). Respostas: • Qualidade da solução
  • 21. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Seleção das instâncias • É muito importante apresentar detalhes sobre as instâncias selecionadas » O que caracteriza seu tamanho e sua complexidade? » Como seus dados foram extraídos? » Porque foram selecionadas? » São reais, realistas ou sintéticas?
  • 22. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Ameaças a validade Um estudo na Engenharia de Software baseada em Buscas.
  • 23. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Ameaças a validade • Ameaças a validade de conclusão verificam se há um relacionamento estatístico válido entre os tratamentos e os resultados observados » Não considerar a variação aleatória nos algoritmos » Não apresentar estatísticas descritivas » Não considerar uma boa base de comparação » Não apresentar as questões de pesquisa e hipóteses • Ameaças a validade interna verificam se diferenças observadas podem ser atribuídas aos tratamentos ou a fatores fora do controle no estudo » Falta de parametrização adequada » Ausência de detalhes sobre a implementação » Ausência de detalhes sobre os processos de coleta de dados » Falta de instâncias reais
  • 24. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Ameaças a validade • Ameaças a validade de construção questionam se objetos e participantes do estudo realmente refletem a questão que está sendo abordada » Falta de clareza nas medidas de qualidade » Ausência de medidas de custo e tempo de execução » Ausência de discussão sobre o modelo do problema • Ameaças a validade externa questionam a capacidade de generalizar os resultados do estudo para uma população maior que os participantes » Falta de clareza sobre as instâncias selecionadas » Falta de clareza sobre o método de seleção de instâncias » Ausência de variação no tamanho das instâncias » Ausência de variação na complexidade das instâncias
  • 25. PPGI - UNIRIO Análise Estatística Meu reino por um p-value bem pequeno ...
  • 26. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Análise estatística Após a coleta, precisamos discutir os dados observados. Planejamento Execução Apresentação Análise Análise gráfica dos dados Estatísticas descritivas Inferência estatística Cálculo de tamanho de efeito
  • 27. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Análise estatística Um excelente roteiro focado em SBSE
  • 28. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Análise estatística • O projeto do estudo experimental seleciona fatores e organiza rodadas para avaliar uma ou mais questões de pesquisa » De todo modo, ao final do estudo temos séries de respostas observadas para cada tratamento • Suponhamos um caso simples, em que temos 3 algoritmos competindo para gerar a melhor solução para um problema » Algoritmos A, B e C (um fator, 3 valores) » Considere que temos 20 instâncias, cada uma analisada separadamente » Como cada rodada pode gerar resultados diferentes, rodamos 30 vezes cada
  • 29. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Sumarização dos resultados • Antes de mais nada, precisamos apresentar os dados e as estatísticas descritivas nos ajudam a cumprir este objetivo » É fundamental mostrar medidas de tendência central (média, mediana, moda) e medidas de dispersão (desvio padrão, quartil, range)
  • 30. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Sumarização dos resultados • Sempre que possível, é bom utilizar gráficos para mostrar os resultados » Box-plots são especialmente úteis para mostrar as distribuições dos dados
  • 31. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Sumarização dos resultados Gráficos radiais são úteis para apresentar diversos objetivos ao mesmo tempo e comparar diferentes soluções não-dominadas. MQ EVM IEXE CS A B
  • 32. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Sumarização dos resultados E sempre ajuda ser criativo ...
  • 33. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Inferência estatística para comparação de médias • Retornando aos nossos algoritmos A, B e C ... » Tipicamente, queremos avaliar se a média ou mediana dos resultados atingidos por um algoritmo são diferentes dos resultados de outro » Chamamos de hipótese nula a identificação de igualdade de média ou mediana (não há diferença entre os resultados dos algoritmos) » Os testes de inferência estatística verificam se é possível rejeitar a hipótese nula, de acordo com os dados observados e suas propriedades estatísticas
  • 34. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Inferência estatística para comparação de médias • Entrada: duas ou mais séries de dados que serão comparados • Saída: uma indicação de médias ou medianas iguais • Procedimento: » Fixar o nível de significância do teste, , como 5% ou 1% » Construir a região crítica de uma estatística com distribuição conhecida » Obter o valor da estatística com base nos dados coletados » Se o valor estiver na região crítica, rejeita-se a hipótese nula de igualdade Aceitação de H0 Rejeição de H0
  • 35. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Inferência estatística para comparação de médias Exploração de relacionamento Coeficiente de Spearman, Kendall Testes de hipótese 2 grupos 3+ grupos Mann-Whitney Kruskal-Wallis Vamos focar na estatística não-paramétrica, menos restrita ao tipo dos dados.
  • 36. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Inferência estatística para comparação de médias Nível de confiança () Tamanho de efeito (ES) Tamanho da amostra (N) Existem três informações fundamentais para os cálculos.
  • 37. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Cuidado para não supervalorizar o p-value!!! • O p-value foi definido em torno de 1920 como uma “maneira de julgar se as evidências são significativas e merecem atenção do pesquisador” • O p-value não é um resultado definitivo e inquestionável da existência de diferença estatística, pois ele depende do tamanho da população • Com muitos dados, é possível obter resultados com diferença significativa, mesmo que a diferença seja tão pequena que não tenha significado prático • Se fizermos um número suficientemente grande de comparações, em algum momento iremos encontrar alguma diferença! • O p-value também não mostra se a diferença observada é relevante na prática e deve ser complementado com uma medida de tamanho de efeito
  • 38. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Tamanho de Efeito (Effect-Size) • Tamanho de efeito é uma medida estatística descritiva da força do relacionamento entre duas variáveis em uma população ou amostra » O tamanho de efeito expressa a magnitude do relacionamento sem indicar se esta o relacionamento entre os dados é casual ou significativo » Como um exemplo de tamanho de efeito absoluto, podemos dizer que a técnica de teste A identifica 30 erros a mais que a técnica de teste B » Como um exemplo de tamanho de efeito padronizado, podemos dizer que resultados identificados pelo algoritmo A são mais eficientes do que os resultados obtidos pelo algoritmo B em 80% das execuções » Medidas de tamanho de efeito padronizados são preferenciais a medidas absolutas por serem independentes do contexto (no exemplo acima, 30 erros a mais é muito ou pouco? depende do número total de erros ...) » Cada tipo de teste estatístico tem um ou mais tipos de tamanho de efeito
  • 39. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Mann-Whitney (Wilcoxon) • Comparação de mediana entre duas séries » Requer que as amostras sejam independentes, com dados nas escalas ordinal, intervalar ou razão » Para a realização do teste as observações das amostras são reunidas em um único grupo, que é ordenado » As amostras são transformadas em rankings dentro do grupo e calcula-se o somatório dos rankings da menor amostra » Finalmente, calcula-se o valor Z que é comparado com uma tabela de valores publicados em livros de Estatística » Quando uma série é comparada com mais do que uma segunda série devemos aplicar correções de p-value (tipicamente Bonferroni ou Holm)
  • 40. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Mann-Whitney (Wilcoxon) > ycorretos <- c(0.83, 0.73, 0.87, 0.78, 0.74, 0.74, 0.87, 0.75, 0.86, 0.82, 0.77); > xcorretos <- c(0.90, 0.89, 0.88, 0.87, 0.97, 0.81, 0.82, 0.86, 0.92, 0.96, 0.98); > wilcox.test(ycorretos, xcorretos); Wilcoxon rank sum test with continuity correction data: xcorretos and ycorretos W = 108, p-value = 0.001986 alternative hypothesis: true location shift is not equal to 0 Conclusão: é possível afirmar, com pelo menos 95% de certeza, que existe diferença no percentual de requisitos corretos encontrados pelos participantes (p-value < 0.05)
  • 41. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Mann-Whitney (Wilcoxon) > ycorretos <- c(0.83, 0.73, 0.87, 0.78, 0.74, 0.74, 0.87, 0.75, 0.86, 0.82, 0.77); > wilcox.test(ycorretos, um=0.75); Wilcoxon signed rank test with continuity correction data: ycorretos V = 66, p-value = 0.003822 alternative hypothesis: true location is not equal to 0 Warning message: In wilcox.test.default(ycorretos, um = 0.75) : cannot compute exact p-value with ties • Também é possível comparar uma série com um valor constante ... » Útil para comparar com um resultado conhecido da literatura ou o resultado de uma técnica tradicional e sem componentes aleatórios
  • 42. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Mann-Whitney (Wilcoxon) • Medida de tamanho de efeito (Vargha & Delaney’s Â12) » O tamanho de efeito é calculado a partir dos rankings dos valores observados e varia de 0% a 100% » Sua interpretação física é muito simples: representa o número de vezes em que a série A foi maior do que a série B » Â12 = 50% indica que os dois tratamentos têm chances iguais de gerar o melhor resultado » Â12 = 80% indica que o primeiro tratamento será melhor que o segundo em 80% das vezes que for aplicado 2 1 1 1 12 2 1 n n n R Â    onde R1 é o somatório dos rankings da primeira série sob análise quando se considera a ordem dos dados disponíveis nas duas séries
  • 43. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Mann-Whitney (Wilcoxon) Interpretação do tamanho de efeito Pequeno Médio Grande d > 0.50 > 0.65 > 0.80 Aplicando um teste de Wilcoxon-Mann-Whitney observamos diferenças significativas na qualidade das soluções encontradas pelos algoritmos A e B com tamanho de efeito grande (p-value = 0.0019, Â12 = 0.89) favorecendo o algoritmo A.
  • 44. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Kruskal-Wallis • Teste de hipótese que avalia a existência de diferença significativa entre as médias observadas entre dois ou mais grupos » Permite comparar as médias de diversos tratamentos, sendo usada como uma extensão do teste de Mann-Whitney quando existem mais de dois tratamentos » Avalia se a variabilidade dentro dos grupos é maior do que a existente entre os grupos e supõe apenas a independência das observações
  • 45. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Kruskal-Wallis > value <- c(1, 2, 5, 3, 2, 1, 1, 3, 2, 1, 4, 3, 6, 5, 2, 6, 1, 6, 5, 4, 9, 6, 7, 7, 5, 1, 8, 9, 6, 5); > group <- factor(c(rep(1, 10), rep(2, 10), rep(3, 10)); > data <- data.frame(group, value); > kruskal.test(value ~group, data) Kruskal-Wallis rank sum test data: value by group Kruskal-Wallis chi-squared = 13.6754, df = 2, p-value = 0.001073 p-value < 0.05  observamos um efeito significativo do grupo no valor
  • 46. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Kruskal-Wallis • Agora que observamos um efeito, temos que identificar onde ele está » Para identificar este efeito, fazemos um teste chamado post-hoc » O teste consiste na avaliação de pares de comparações usando o teste de Mann-Whitney com correção > pairwise.wilcox.test(value, group, p.adj="bonferroni", exact=FALSE); Pairwise comparisons using Wilcoxon rank sum test data: value and group 1 2 2 0.0418 - 3 0.0058 0.0791 P value adjustment method: bonferroni p-value < 0.05  observamos um efeito significativo entre os tratamentos 1 e 2 e 1 e 3
  • 47. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Teste de Kruskal-Wallis Um teste de Kruskal-Wallis identificou diferenças significativas entre os grupos (p-value = 0.001073). Uma análise post-hoc usando testes de Mann-Whitney com correção de Bonferroni mostrou que as diferenças significativas ocorriam entre os algoritmos 1 e 2 (p-value = 0.0418, Â12=17.5%) favorável ao algoritmo 2 e entre os algoritmos 1 e 3 (p-value = 0.0058, Â12=9%) favorável ao algoritmo 3. > g1 <- subset(data, data$group == 1) > g2 <- subset(data, data$group == 2) > g3 <- subset(data, data$group == 3) > > vargha.delaney(g1$value, g2$value) [1] 0.175 > vargha.delaney(g1$value, g3$value) [1] 0.09 > vargha.delaney(g2$value, g3$value) [1] 0.205
  • 48. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Resumindo ...
  • 49. PPGI - UNIRIOESTUDOS EXPERIMENTAIS COM ALGORITMOS DE OTIMIZAÇÃO EM ENGENHARIA DE SOFTWARE MÁRCIO BARROS, PPGI/UNIRIO Obrigado pela atenção!

Notas do Editor

  1. Explicar que os testes se dividem em paramétricos e não-paramétricos. Explicar as premissas e diferenças entre eles. Relacionar com os tipos de erro, em especial a potência (beta).