Programas de avaliação

DIP - Desafio de identificação de personagens
Por enquanto os programas existem em Perl. Pode ser que mais tarde também os forneçamos noutras linguagens.

Alguns dos programas aceitam (como útimo argumento) a indicação -d para depuração/debug, o que significa que se tornam muito palavrosos.

Cada programa trata de uma obra. Para fazer a análise das 40 obras, é preciso executar um ciclo que primeiro obtém os ficheiros relativos a cada obra, calcula essa pontuação, e depois agrega todas para calcular a pontuação final.

Nota: os programas têm de ser executados na ordem pela qual são aqui apresentados.

dip_preliminar.pl

Este programa trata dos casos (raros) em que uma mesma designação é usada para personagens diferentes, associando um n úmero distinto ao nome. Deve invocar-se tanto para a coleção dourada como para a resposta do sistema:
dip_preliminar.pl exp139 > expl139
dip_preliminar.pl cd139 > cdl139

dip alinha.pl

Identifica quais as personagens que correspondem a personagens da coleção dourada, para as relações, criando um ficheiro chamado substituicoes.

Exemplo de invocação:

dip_alinha.pl expl139 cdl139

dip_converte.pl

Converte a resposta do sistema para os identificadores da coleção dourada, com base no resultado do programa dip_alinha.pl (ficheiro substituicoes). Argumento: resposta do sistema sobre as relações, e resposta do sistema sobre as personagens

Exemplo de invocação:

  dip_converte.pl exprel139 > exprelconv139
  dip_converte.pl expl139 > expconvl139
  
Nota: este programa pode ter problemas com personagens com o mesmo nome.

dip_avaliacao.pl

Recebe como argumentos a resposta do sistema já convertida e a coleção dourada (parte das personagens), e calcula as quatro primeiras medidas.

Exemplo de invocação:

dip_avaliacao.pl expconvl139 cdl139

dip_filtra_rel_dourada.pl

Escolhe os casos das coleção dourada que poderiam ter sido propostos pelo sistema, com base no resultado do programa dip_alinha.pl (ficheiro substituicoes). Argumento: coleção dourada sobre as relações

Exemplo de invocação:

dip_filtra_rel_dourada.pl relcd139 > dourfilt139

dip_avalia_relacoes.pl

A partir dos dois novos ficheiros obtidos pelo dip_converte.pl e pelo dip_filtra_dourada.pl, calcula a medida de avaliação das relações. Argumentos: os três ficheiros mencionados. Nota: Tem de ser executado com export PERL_UNICODE=SDA

Exemplo de invocação:

dip_avalia_relacoes.pl expconvl139 exprelconv139 dourfilt139

Exemplos de teste

Colocamos aqui o mesmo exemplo que está na
página sobre a avaliação, para servir de primeiro teste aos programas. Aqui a coleção dourada: cd139 e cdrel139.
ficheirosAIACIAGAPOESARTotal
exp139 e exprel1390,3630,5880,50,6150,25 0,463
exp139-2 e exprel139-20,09500,33300,80,2456
exp139-3 e exprel139-30,9811110,920,9802
Mais testes com esta coleção dourada: cd021 e cdrel021
ficheirosAIACIAGAPOESARTotalcomentários
exp021 e exprel021111111igual
exp021-1 e exprel021111111mudança da ordem
exp021-2 e exprel021-20,07101110,614só os 3 primeiros, só o primeiro nome
exp021-3 e exprel021-311100,80,76igual à CD mas sem profissões
exp021-4 e exprel021-411-110,50,5igual à CD mas sem género
exp021-5 e exprel021-50,8150,9610,95710,946alguns nomes de personagens incompletos
exp021-6 e exprel021-60,7140,789110,3330,7672todas as personagens representadas apenas pela última alternativa
exp021-7 e exprel021-711-110,50,5todas as personagens têm o género trocado
exp021-8 e exprel021-811100,2860,657todas as personagens têm uma profissão errada
exp021-9 e exprel021-911100,2860,657alguma variação na profissão
exp021-10 e exprel021-100.7240.773110,2860,7576apenaso primeiro nome para cada personagem
exp021-A e exprel021-A11110,2860,8572apenas variações na ordem dos nomes das personagens dentro de cada personagem
exp021-B e exprel021-B11110,2860,8572apenas variações na ordem das profissões dentro de cada personagem

Os programas em conjunto

Podem obter-se neste zip: programasDIP.zip.

Execuação para todas as obras

Num sistema de Linux para o qual se tenham copiado os ficheiros da CD e os ficheiros a avaliar (estes últimos chamados perscompleto.csv e relcompleto.csv), e se tenha colocado os programas numa diretoria que esteja no PATH, ou colocado os programas na mesma diretoria, e feito
  export PATH=.:$PATH
basta executar
DIP_completo.pdf

Última atualização: 17 de setembro de 2022.