Skip to content

ayoshiaki/tops

Repository files navigation

Overview
=========

ToPS is an objected-oriented framework implemented using C++ that facilitates the integration of probabilistic models for sequences over a user defined alphabet. ToPS contains the implementation of eight distinct models to analyze discrete sequences:

1. Independent and identically distributed model
2. Variable-Length Markov Chain (VLMC)
3. Inhomogeneous Markov Chain
4. Hidden Markov Model
5. Pair Hidden Markov Model
6. Profile Hidden Markov Model
7. Similarity Based Sequence Weighting
8. Generalized Hidden Markov Model (GHMM)

The user can implement models either by manual description of the probability values in a configuration file, or by using training algorithms provided by the system. The ToPS framework also includes a set of programs that implement bayesian classifiers, sequence samplers, and sequence decoders. Finally, ToPS is an extensible and portable system that facilitates the implementation of other probabilistic models, and the development of new programs.

Example of usage is in "example" folder.

Please feel free to contact me if you have any question: André Yoshiaki Kashiwabara <akashiwabara@usp.br>

Documentation
=============

http://tops.sourceforge.net/tutorial.pdf
http://tops.sourceforge.net/api.html


Git Repository
==============

You can download the development version of ToPS by executing the command below:

git clone https://github.com/ayoshiaki/tops.git 

Platforms
=========

ToPS was designed to run on Unix/Linux operating systems. Tested platforms include: MacOS X, and Ubuntu linux.

Software Requirement
====================

ToPS was written in C++. It was compiled using the g++ version 4.2.1 and it requires

- Boost C++ Libraries version 1.52
- CMake
- Git

Installing ToPS
===============

   1. Download ToPS from GitHub  

      git clone https://github.com/ayoshiaki/tops.git

      This will create a directory named tops

   2. Go to the tops directory:

       cd tops

   3. Run the configuration script:

      cmake .

   4. Run make

       make

   5. Run make install

      sudo make install

   6. If you are using linux run ldconfig

      sudo ldconfig