Skip to content

A Genome assembler based on greedy and genetic algorithms written in Go [golang.org]

Notifications You must be signed in to change notification settings

viadanna/GeneticAssembler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

# Biocomp #

Bem vindo ao projeto de MO640, siga as instruções para executar o programa.

Rode em um shell ou terminal o executável correspondente à arquitetura do seu sistema.

=======================================================================================

O programa aceita os seguintes argumentos:

"-runs": Número de vezes que o algoritmo completo será executado numa chamada do programa. Por padrão, definido para "-runs=10";

"-genome": Tamanho do genoma que será gerado. Por padrão, definido para "-genome=1000";

"-min": Tamanho minimo dos fragmentos gerados. Por padrão, definido apara "-min=25";

"-max": Tamanho máximo dos fragmentos gerados. Por padrão, definido apara "-max=100";

"-coverage": Fração de cobertura dos fragmentos gerados à sequência original. Por padrão, definido para "-coverage=1";

"-seqerror": Fração de fragmentos gerados que terão erros. Por padrão, definido para "-seqerror=0.01";

"-seqrev": Fração de fragmentos gerados que terão reversões. Por padrão, definido para "-seqrev=0.5";

"-error": Taxa de erro aceita no cálculo das bordas de overlap. Por padrão, definido para "-error=0.1";

"-gen": número de gerações iteradas no algoritmo genético. Por padrão, definido para "-gen=10";

"-child": Número de filhos por geração no algoritmo genético. Por padrão, definido para "-child=10";

"-cutoff": Porcentagem da pontuação máxima existente que será aceita no algoritmo genético para que uma borda possa ser escolhida e adicionada num caminho. Por padrão, definido para "-cutoff=90";

"-mp": Rodar algoritmos em paralelo. Por padrão, definido para: '-mp=true';

==========================================================================================

O programa retorna um JSON no seguinte formato:

{
  "Experiments": [
    {
      "RefGenome": "{...}",
      "RefLength": x,
      "GreedyAssembly": "{...}",
      "GreedyLength": x,
      "GreedyScore": x,
      "GreedyDistance": x,
      "GreedyPlusAssembly": "{...}",
      "GreedyPlusLength": x,
      "GreedyPlusScore": x,
      "GreedyPlusDistance": x,
      "GeneticAssembly": "{...}",
      "GeneticLength": x,
      "GeneticScore": x,
      "GeneticDistance": x,
      "RandomAssembly": "{...}",
      "RandomLength": x,
      "RandomScore": x,
      "RandomDistance": x
    }
  ],
  "GreedyMeanLength": x,
  "GreedyMeanScore": x,
  "GreedyMeanDistance": x,
  "GreedyPlusMeanLength": x,
  "GreedyPlusMeanScore": x,
  "GreedyPlusMeanDistance": x,
  "GeneticMeanLength": x,
  "GeneticMeanScore": x,
  "GeneticMeanDistance": x,
  "RandomMeanLength": x,
  "RandomMeanScore": x,
  "RandomMeanDistance": x
}

Os campos desse retorno significam:

"Experiments": O resultado da execução de uma instância completa do algoritmo.
	[
      "RefGenome": O genoma original, gerado pelo programa, que foi utilizado nessa instância de execução do algoritmo
      "RefLength": Comprimento do genoma original
      "GreedyAssembly": Montagem feita pelo algoritmo guloso ingênuo (sem mismatches e reversões)
      "GreedyLength": Comprimento da montagem feita pelo algoritmo guloso ingênuo,
      "GreedyScore": Pontuação da montagem feita pelo algoritmo guloso ingênuo,
      "GreedyDistance": Distância da montagem feita pelo algoritmo guloso ingênuo ao genoma original,
      "GreedyPlusAssembly": Montagem feita pelo algoritmo guloso considerando mismatches e reversões,
      "GreedyPlusLength": Comprimento da montagem feita pelo algoritmo guloso considerando mismatches e reversões,
      "GreedyPlusScore": Pontuação da montagem feita pelo algoritmo guloso considerando mismatches e reversões,
      "GreedyPlusDistance": Distância da montagem feita pelo algoritmo guloso considerando mismatches e reversões ao genoma original,
      "GeneticAssembly": Montagem feita pelo algoritmo genético,
      "GeneticLength": Comprimento da montagem feita pelo algoritmo genético,
      "GeneticScore": Pontuação da montagem feita pelo algoritmo genético,
      "GeneticDistance": Distância da montagem feita pelo algoritmo genético,
      "RandomAssembly": Montagem feita pelo algoritmo random
      "RandomLength": Comprimento da montagem feita pelo algoritmo random,
      "RandomScore": Pontuação da montagem feita pelo algoritmo random,
      "RandomDistance": Distância da montagem feita pelo algoritmo random
  ],

  "GreedyMeanLength": Média do comprimento das montagens feitas pelo algoritmo guloso ingênuo,
  "GreedyMeanScore": Média da pontuação das montagens feitas pelo algoritmo guloso ingênuo,
  "GreedyMeanDistance": Média da distância das montagens feitas pelo algoritmo guloso ingênuo ao genoma original,
  "GreedyPlusMeanLength": Média do comprimento das montagens feitas pelo algoritmo guloso considerando mismatches e reversõe,
  "GreedyPlusMeanScore": Média da pontuação das montagens feitas pelo algoritmo guloso considerando mismatches e reversões,
  "GreedyPlusMeanDistance": Média da distância das montagens feitas pelo algoritmo guloso considerando mismatches e reversões ao genoma original,
  "GeneticMeanLength": Média do comprimento das montagens feitas pelo algoritmo genético,
  "GeneticMeanScore": Média da pontuação das montagens feitas pelo algoritmo genético,
  "GeneticMeanDistance": Média da distância das montagens feitas pelo algoritmo genético,
  "RandomMeanLength": Média do comprimento das montagens feitas pelo algoritmo random,
  "RandomMeanScore": Média da pontuação das montagens feitas pelo algoritmo random,
  "RandomMeanDistance": Média da distância das montagens feitas pelo algoritmo random

About

A Genome assembler based on greedy and genetic algorithms written in Go [golang.org]

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published