Primeiro trabalho da disciplina de PPLF. Implementação de dois algoritmos, em Racket, para verificação de similaridade entre textos.
As dependêcias para execução dos algoritmos são:
Racket v6.7
Biblioteca memoize
Definido como duas vezes o número de termos comuns entre os textos comparados, dividido pela soma total de termos dos dois textos.
Considera a similaridade entre duas strings baseado no tamanho da cadeia contígua de caracteres existente em ambas as strings.
O programa recebe os parâmetros por meio de redirecionamento de entrada. Os seguintes parâmetros são aceitos:
-
Coeficiente de correlação:
1
caso o usuário deseje obter o coeficiente de correlação entre os resultados esperados e os resultados dos algoritmos,0
caso deseje apenas visualizar os resultados obtidos pelos algortimos. -
Algoritmo a ser utilizado:
0
para Dice's coefficient,1
para LCS. -
Textos a serem processados: o programa deve receber um conjunto base de 8 textos, para que os mesmos possam ser processados pelo algoritmo escolhido.
Portanto, o redirecionamento deve ser realizado de modo que:
-
A primeira linha contenha a especificação relativa ao coeficiente de correlação;
-
A segunda linha contenha a especificação do algoritmo a ser utilizado;
-
A linhas subsequentes contenham o conjunto de 8 textos a serem processados, um texto por linha.
Um exemplo de redirecionamento pode ser encontrado por meio do caminho ./texts/texts.txt
.