• Nenhum resultado encontrado

UTILIZAÇÃO E AVALIAÇÃO DA FERRAMENTA

6.1 Exemplo de Uso (Módulo OPLA-GUI)

6.1.4 Obtendo Resultados

Assim que a execução é finalizada, é possível selecionar a aba Results e ter acesso aos resultados da execução. A Figura 6.6 exibe o conteúdo desta aba. Inicialmente em 1 são apresentadas todas as execuções realizadas pela OPLA-Tool até o momento. Essa seção é denominadaExecutions, e apresenta as seguintes informações sobre cada uma das execuções:

• ID: Refere-se ao identificador da execução;

• PLA: Indica qual PLA foi utilizada na execução;

• Algorithm: Qual algoritmo foi utilizado na execução. O valor entre parênteses indica o valor informado no campoSet a description for this execution, mostrado em 6 da Figura 6.3; e

• Created at: Indica a data em que a execução foi realizada.

Figura 6.6: OPLA-GUI - Resultados.

No momento em que uma execução é selecionada, por meio de um duplo clique, a parte referente ao número2 da figura é carregada, listando todas as rodadas do algoritmo realizadas para a execução selecionada. Essa listagem inclui as seguintes informações:

• Run: Refere-se ao identificador da rodada;

• Time (min:seg) : Tempo que a rodada levou para ser executada;

• Genr. Solutions: Número de soluções que foram encontradas; e

• Non Dominated Solutions: Número de soluções não dominadas. O valor apresentado é o mesmo para todas as rodadas pois se refere às soluções não dominadas da execução, e não da rodada.

Ao escolher alguma das rodadas, utilizando novamente um duplo clique, são carregadas as partes da figura referentes aos números3, 4, 5 e 6. Ocombobox sinalizado pelo número3 exibe a listagem de todas as soluções encontradas para a execução selecionada mais as soluções não dominadas encontradas pela execução. Essa última é sempre apresentada juntamente com as soluções da rodada. Por sua vez, o combobox sinalizado em 4 lista as funções objetivo que foram utilizadas na execução. A tabela exibida em5 mostra o valor

total de cada função objetivo para a solução selecionada em Solution(mostrado em 3). A tabela apresentada em 6 exibe os valores das métricas que compõem a função objetivo selecionada em Objective Functions (mostrado em 4).

Ao clicar no botão Non-Dominated Solutions (mostrado em 7), uma nova janela mos-trando informações somente sobre as soluções não dominadas é exibida, como mostrado na Figura 6.7. Esta janela é dividida em duas colunas, nas quais as soluções são ordena-das pelo nome. O lado esquerdo contém um quadro com informação sobre cada função objetivo usada na execução: Nome da solução seguido do valor encontrado para a função objetivo em questão. Na coluna do lado direito é exibida uma tabela contendo a distância euclidiana (ED) [14] à partir da solução ideal para cada uma das soluções não domina-das. Uma solução ideal é uma solução hipotética, a qual tem o menor valor alcançado para cada objetivo dentre todas as soluções encontradas, considerando um problema de minimização. A solução que possui o menor ED tem o melhortrade-off entre os objetivos uma vez que ela é a mais próxima da solução ideal. Essa solução é apresentada abaixo da tabela de ED na Figura 6.7.

Figura 6.7: OPLA-GUI - Informações das soluções não dominadas encontradas.

O botão [Show Configurations] (mostrado em 1 na Figura 6.6) somente é habilitado quando alguma execução está selecionada e tem como objetivo exibir as configurações

utilizadas na execução em questão. A Figura 6.8 exibe esta tela, onde do lado esquerdo (indicado por 1), mostra-se: qual PLA foi utilizada, o algoritmo e seus parâmetros e a lista de operadores de mutação usados. Do lado direito da figura, 2, 3 e 4 indicam o uso ou não do operador de mutação para padrões de projetos, quais funções objetivo foram utilizadas e quais perfis, respectivamente.

Figura 6.8: OPLA-GUI - Exibindo configurações de uma execução.

6.1.5 Experimentos

A próxima aba, Experiments, tem como objetivo fornecer uma forma rápida e fácil de realizar comparações entre as execuções. Dividida em três funções, sendo elas:

• Gráfico das soluções no espaço de busca:

Essa opção tem como objetivo a comparação entre duas execuções, a fim de exibir as soluções não dominadas no espaço de busca. Existem algumas restrições para o uso desta função, sendo elas: (a) ambas execuções devem utilizar o mesmo modelo de avaliação (mesmas funções defitness); (b) ambas execuções devem ser referentes a mesma PLA; e (c) somente duas funções defitness podem ser selecionadas por vez.

Na figura 6.9 é exibido o primeiro passo necessário para a geração do gráfico das soluções no espaço de busca. Primeiramente é preciso selecionar quais execuções deseja-se utilizar (mostrado em 1), após escolher as execuções também é preciso clicar no botão[Select Objective Functions]. Essa ação recuperará as funções utilizadas por cada uma das execuções selecionadas (mostrado em 2). No caso da Figura 6.9 as execuções usaram duas funções: Conventional e FeatureDriven.

Figura 6.9: OPLA-GUI - Selecionando execuções.

Feitos estes dois primeiros passos, as funções objetivo devem ser marcadas para as duas execuções escolhidas, e então clicar no botão [Generate Chart]para o gráfico ser exibido, como na Figura 6.10.

Figura 6.10: OPLA-GUI - Soluções no espaço de busca.

Como pode ser visto o gráfico foi gerado conforme as opções selecionadas. O título da janela informa qual PLA foi utilizada, neste caso a Mobile Media Como des-crito anteriormente algumas restrições são aplicadas a essa função. A Figura 6.11 exibe uma mensagem caso o usuário tente selecionar duas execuções consideradas distintas, ou seja, não usam as mesmas funções objetivo.

No caso da Figura 6.11, duas execuções foram selecionadas. Porém, uma usou

Figura 6.11: OPLA-GUI - Validação. Execuções diferentes.

três funções objetivo e outra usou somente duas. Outra restrição é que as funções objetivo selecionadas devem ser as mesmas para ambas as execuções, caso essa restrição não seja satisfeita a mensagem informando o problema será exibida, como mostra a Figura 6.12.

Figura 6.12: OPLA-GUI - Validação. Diferentes funções objetivo.

Neste exemplo, para a geração do gráfico, foram selecionandas funções diferentes para ambas execuções, neste caso, a validação foi realizada, indicando tal problema.

• Gráfico número de soluções por distância euclidiana:

Este gráfico tem como objetivo mostrar o número de soluções encontradas por valor da distância euclidiana. É possível gerar dois tipos de gráficos neste caso, gráfico de linha e de barra. Essa configuração não está presente diretamente na interface com o usuário, mas sim em um arquivo de configuração que se encontra no diretório criado

pela OPLA-Tool, conforme descrito na Seção 6.1.1. Este arquivo possui uma confi-guração chamadaedChartType, e pode conter o valorbar ouline, configurando assim a OPLA-Tool para gerar o gráfico da distância euclidiana no formato de barra ou de linha, respectivamente. Para gerar este gráfico, novamente devem ser selecionadas as execuções que se deseja, e então, clicar no botão [Number of Solutions per Euclidean Distance]. A Figura 6.13 mostra os dois tipos de gráficos possíveis. Entretanto, para este tipo de dado (contagem), é mais indicado o gráfico de barras [38].

Figura 6.13: OPLA-GUI - Soluções por distância euclidiana.

• Tabela hypervolume: Como citado anteriormente, também é possível exibir uma tabela contendo o hypervolume [28] das execuções selecionadas. Essa função está disponível somente em ambientes Unix uma vez que utiliza um script para realizar o cálculo do hypervolume. Caso a OPLA-Tool esteja em uso em ambiente Windows essa opção não estará visível. A Figura 6.14 mostra um exemplo desta função. É exibido o ID da execução, nome da PLA utilizada, algoritmo, a média e o desvio padrão do hypervolume. É possível usar ou não normalização dos valores das fun-ções objetivo. Para isso, deve-se marcar a opção Use Normalization?, mostrada na Figura 6.15.

Figura 6.14: OPLA-GUI - Tabela hypervolume.

Figura 6.15: OPLA-GUI - Normalização.