Aplicação do Algoritmo GRASP Reativo para o Problema do Próximo Release

Page 1

Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Aplica¸c˜ao do algoritmo GRASP Reativo para o Problema do Pr´oximo Release Gabriela Rosa Machado Linhares Curso de Ciˆ encia da Computa¸c˜ ao Universidade Estadual do Cear´ a - UECE

19 de maio de 2010

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

T´opicos

Introdu¸c˜ao Fundamenta¸c˜ao te´orica Metodologia Resultados Conclus˜ao e Trabalhos Futuros

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

T´opicos Introdu¸c˜ao SBSE Problema do Pr´oximo Release Motiva¸c˜ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados Fundamenta¸c˜ao te´orica Metodologia Resultados Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

SBSE I

Search-Based Software Engineering

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

SBSE I

Search-Based Software Engineering

I

In´ıcio da d´ecada de 70 - primeiros artigos na ´area; nos u ´ltimos 10 anos teve um crescimento bastante acentuado.

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

SBSE I

Search-Based Software Engineering

I

In´ıcio da d´ecada de 70 - primeiros artigos na ´area; nos u ´ltimos 10 anos teve um crescimento bastante acentuado. ´ Areas:

I

I I I I I I

Gera¸c˜ao de dados de teste Sele¸c˜ao de casos de teste Estimativa de custo Planejamento Sele¸c˜ao de Requisitos ...

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

SBSE I

Search-Based Software Engineering

I

In´ıcio da d´ecada de 70 - primeiros artigos na ´area; nos u ´ltimos 10 anos teve um crescimento bastante acentuado. ´ Areas:

I

I I I I I I

I

Gera¸c˜ao de dados de teste Sele¸c˜ao de casos de teste Estimativa de custo Planejamento Sele¸c˜ao de Requisitos ...

Ingredientes: I I

Escolha da representa¸c˜ao Defini¸c˜ao da fun¸c˜ao objetivo Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Problema do Pr´oximo Release I

O que ´e Release? I

Libera¸c˜ao de vers˜ao oficial de um software, para homologa¸c˜ao ou produ¸c˜ao.

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Problema do Pr´oximo Release I

O que ´e Release? I

I

Libera¸c˜ao de vers˜ao oficial de um software, para homologa¸c˜ao ou produ¸c˜ao.

NRP: I

Selecionar clientes cuja satisfa¸c˜ao seja 100% e a restri¸c˜ao de custo seja obedecida.

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Problema do Pr´oximo Release - Cont...

I

Abordagens: I I

Sele¸c˜ao de Clientes (2001) Sele¸c˜ao de Requisitos (2007)

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Problema do Pr´oximo Release - Cont...

I

Abordagens: I I

I

Sele¸c˜ao de Clientes (2001) Sele¸c˜ao de Requisitos (2007)

Por que n˜ao otimizar com um m´etodo exato? I

Programa¸c˜ao Linear mostrou-se ineficiente para instˆancias com valores muito altos.

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Motiva¸c˜ao

I

Porque estudar este problema? I

I

I

Satisfa¸c˜ao completa do cliente quanto aos requisitos de software; Dependendo dos tipos de NRP, pode ser NP-Completo ou NP-Dif´ıcil; Algumas metaheur´ısticas n˜ao foram testadas neste problema. EX: I

GRASP Reativo

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Objetivos e Contribui¸co˜es

I

Utilizar GRASP Reativo no NRP

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Objetivos e Contribui¸co˜es

I

Utilizar GRASP Reativo no NRP

I

Comparar com outras metaheur´ısticas

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Objetivos e Contribui¸co˜es

I

Utilizar GRASP Reativo no NRP

I

Comparar com outras metaheur´ısticas

I

Novo m´etodo para gera¸c˜ao de solu¸c˜ oes

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Trabalhos Relacionados

I

The Next Release Problem - Bagnall e Smith (Information and Software Technology - 2001);

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Trabalhos Relacionados

I

The Next Release Problem - Bagnall e Smith (Information and Software Technology - 2001);

I

EasyMeta - Rafael Carmo (TCC - 2008)

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Trabalhos Relacionados

I

The Next Release Problem - Bagnall e Smith (Information and Software Technology - 2001);

I

EasyMeta - Rafael Carmo (TCC - 2008)

I

Release Planning - Felipe Colares (SBPO - 2009)

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Trabalhos Relacionados

I

The Next Release Problem - Bagnall e Smith (Information and Software Technology - 2001);

I

EasyMeta - Rafael Carmo (TCC - 2008)

I

Release Planning - Felipe Colares (SBPO - 2009)

I

STNSNP - Steiner Two-Node-Survivable Network Problem: em uma rede de fibras ´ oticas - Rubino (International Journal os Logistics Systems and Management - 2010)

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

SBSE Problema do Pr´ oximo Release Motiva¸c˜ ao Objetivos e Contribui¸c˜ oes Trabalhos Relacionados

Trabalhos Relacionados

I

The Next Release Problem - Bagnall e Smith (Information and Software Technology - 2001);

I

EasyMeta - Rafael Carmo (TCC - 2008)

I

Release Planning - Felipe Colares (SBPO - 2009)

I

STNSNP - Steiner Two-Node-Survivable Network Problem: em uma rede de fibras ´ oticas - Rubino (International Journal os Logistics Systems and Management - 2010)

I

Automated Test Case Prioritization with Reactive Grasp Camila Maia (2010)

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Modelagem do NRP Algoritmos

T´opicos Introdu¸c˜ao Fundamenta¸c˜ao te´orica Modelagem do NRP Algoritmos Metodologia Resultados Conclus˜ao e Trabalhos Futuros Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Modelagem do NRP Algoritmos

Modelagem do NRP

I

Matematicamente, um exemplo de configura¸c˜ao do NRP: I I I I

I I

R = {r1 , r2 , r3 , r4 , r5 , r6 , r7 } c1 = 10, c2 = 6, c3 = 7, c4 = 1, c5 = 4, c6 = 6, c7 = 1 R1 = {r6 }, R2 = {r6 , r7 }, R3 = {r5 } E= {(1, 3), (1, 4), (1, 6), (1, 7), (2, 5), (2, 7), (3, 6), (4, 7), (5, 7)} ˆ 1 = {r1 , r3 , r6 }, R ˆ 2 = {r1 , r3 , r4 , r6 , r7 }, R ˆ 3 = {r2 , r5 } R w1 = 50, w2 = 60, w3 = 70

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Modelagem do NRP Algoritmos

Modelagem do NRP - cont...

I

I

Maximizar o custo total de clientes selecionados ou Evaluate, sujeito a restri¸c˜ oes de custo, B ≤ b, onde b ∈ { 30%, 50%, 70% do custo total de requisitos existentes.} Considerar entre os requisitos: I I

Independˆencia (E = 0): NP-Dif´ıcil; Interdependˆencia: aplica¸c˜ao de heur´ısticas para encontrar solu¸c˜ oes de boa qualidade, em tempo h´abil.

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Modelagem do NRP Algoritmos

Algoritmos

I

Aplicados no NRP original: I I

I

Inicia com conjunto vazio de clientes satisfeitos; Adi¸c˜ao de cada cliente ao conjunto, sem ultrapassar o percentual estabelecido de custos de requisitos. M´etricas de sele¸c˜ao: I I I

I

Maximum Profit: cliente com maior lucro; Minimum Cost: exigˆencia m´ınima de requisitos; Maximum Ratio: ordena o cliente por raz˜ ao entre

lucros . custos

Melhorou os resultados em qualidade, adaptando Maximum Ratio com Grasp: escolher K clientes no topo da lista de candidatos.

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Modelagem do NRP Algoritmos

Tˆempera Simulada I

I

I

Analogia ao processo metal´ urgico de recozimento ou annealing ; Vantagem: Fuga de ´ otimos locais, pois aumenta o universo de solu¸c˜oes, testando solu¸c˜ oes piores que a atual. M´etodo: Aquecimento brusco → Fus˜ao do Metal → Resfriamento Lento → Equil´ıbrio. I I I

f (Energia) < 0: solu¸c˜ao atual melhor que a anterior; f (Energia) = 0: n˜ao houve varia¸c˜ao de energia; f (Energia) > 0: solu¸c˜ao atual tem pior custo com a anterior. I

I I I

, regula a probabilidade Fator de Boltzzman: p = e − f (Energia) T de solu¸co ˜es com pior custo; Gera um n´ umero aleat´ orio entre [0,1]; Se esse n´ umero ´e menor ou igual a p, a solu¸c˜ ao ´e aceita; Caso contr´ ario, solu¸c˜ ao ´e rejeitada. Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Modelagem do NRP Algoritmos

Algoritmo Gen´etico

I

Classe particular de algoritmos evolutivos: hereditariedade, muta¸c˜ao, sele¸c˜ao natural e crossing over ;

I

A cada gera¸c˜ao, uma popula¸c˜ao ´e avaliada de forma a selecionar indiv´ıduos adaptados a pr´ oxima gera¸c˜ao.

I

Vantagem: M´etodo flex´ıvel, de f´acil hibridiza¸c˜ao com outras t´ecnicas e baseia-se no conjunto de solu¸c˜ oes poss´ıveis e n˜ao nos parˆametros de otimiza¸c˜ao;

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Modelagem do NRP Algoritmos

GRASP I I

Baseia-se em constru¸c˜ao e busca local: RCL - Restricted Candidate List I I I

e ∈ RCL se c(e) ∈ [cm in, cm in + α(cm ax − cm in)]; α = 0: puramente guloso; α = 1: puramente aleat´ orio;

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Modelagem do NRP Algoritmos

GRASP Reativo I

Especializa¸c˜ao de Grasp: valores de α dependem diretamente das solu¸c˜oes anteriores;

I

A = {a1 , a2 , a3 , · · · , am };

I

pi = m1 , iguais para todos os candidatos; Reavalia¸c˜ao das probabilidades: pi = Pmqi

I

j=i

I I I I

I

qj

e qi =

s∗ Mi .

EX.:

Problema de minimiza¸c˜ao: escolheu αj ; Solu¸c˜ao encontrada: ´ otimo local; Mj diminui, logo pj e qj tamb´em diminuem; Valor de α ´e diretamente proporcional `a qualidade das solu¸c˜oes obtidas atrav´es dele.

Vantagem: maior robustez por conta da menor dependˆencia de acertos na escolha de α; Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Dados Aleat´ orios Parametriza¸c˜ ao das metaheur´ısticas

T´opicos Introdu¸c˜ao Fundamenta¸c˜ao te´orica Metodologia Dados Aleat´orios Parametriza¸c˜ao das metaheur´ısticas Resultados Conclus˜ao e Trabalhos Futuros Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Dados Aleat´ orios Parametriza¸c˜ ao das metaheur´ısticas

Dados Aleat´orios

I

Trˆes instˆancias (M1 , M2 , M3 ); I I I

I

M1 : 10C, 20R, 30%B; M2 : 20C, 40R, 50%B; M3 : 30C, 60R, 70%B;

Densidade de liga¸c˜ oes: 0.05, 0.03 e 0.03; R1

R12

R2

C8

R17

R10

R18

R6

R15

C2

C7

R7

C3

Gabi Linhares

R4

R9

R8

C1

R19

C9

R20

R11

C5

C10

GRASP no PPR

R3

R14

C4

R16

C6


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Dados Aleat´ orios Parametriza¸c˜ ao das metaheur´ısticas

Parametriza¸c˜ao das metaheur´ısticas

I

Algoritmo Gen´ etico: No de itera¸c˜ oes = 35; Popula¸c˜ao = 20; % de Muta¸c˜ao = 20%;

I

Tˆ empera Simulada: Taxa de Decrescimento da Temperatura = 0.95; Crit´erio de Parada = temperatura menor que 0.0005;

I

Grasp: No M´aximo de Itera¸c˜ oes = 50; Alpha = 0.3;

I

Grasp Reativo: No M´aximo de Itera¸c˜ oes = 60; Qtde. de Alpha = 9; Valores de Alpha = 0.1 a 0.9;

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

T´opicos

Introdu¸c˜ao Fundamenta¸c˜ao te´orica Metodologia Resultados Conclus˜ao e Trabalhos Futuros

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Resultados

I

Flutua¸c˜ao de apenas 5% no tempo de execu¸c˜ao.

I

Grasp Reativo mostrou-se melhor que todas as outras metaheur´ısticas, em ambiente de testes;

I

Bom resultado de GReativo pode ser estendido a um cen´ario real, onde este tamb´em ´e a melhor escolha;

I

Os Tipos de instˆancias abordadas no trabalho s˜ao mais abrangentes do que no artigo de Bagnall, pois n˜ao h´a limita¸c˜ao multi-n´ıvel.

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Resultados - Cont...

I

Evaluates encontrados com custo limitado a 30%:

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Resultados - Cont...

I

Evaluates encontrados com custo limitado a 50%:

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Resultados - Cont...

I

Evaluates encontrados com custo limitado a 70%:

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

T´opicos

Introdu¸c˜ao Fundamenta¸c˜ao te´orica Metodologia Resultados Conclus˜ao e Trabalhos Futuros

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

Conclus˜ao e Trabalhos Futuros I

Objetivo atingido: Grasp Reativo ´e uma boa estrat´egia de solu¸c˜ao para problemas de otimiza¸c˜ao na engenharia de requisitos;

I

Trabalho futuro 1: analisar m´edia e desvio-padr˜ao de tempo de execu¸c˜ao, considerando instˆancias mais complexas;

I

Trabalho futuro 2: Aplicar outras metaher´ısticas: Scatter Search, Tabu Search, VNS, BLS, ILS;

I

Trabalho futuro 3: Estudar a vers˜ao mono-objetiva do NRP, aplicando outras metaheur´ısticas e o conceito de Frente de Pareto;

Gabi Linhares

GRASP no PPR


Introdu¸c˜ ao Fundamenta¸c˜ ao te´ orica Metodologia Resultados Conclus˜ ao e Trabalhos Futuros

FIM

Gabi Linhares

GRASP no PPR


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.