Skip to content

Using Particle Swarm Algorithm for chromosome three-dimensional structure construction

Notifications You must be signed in to change notification settings

OluwadareLab/ParticleChromo3D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


ParticleChromo3D - A Particle Swarm Optimization Algorithm for Chromosome 3D Structure Prediction from Hi-C Data


OluwadareLab, University of Colorado, Colorado Springs


Developers:
              David Vadnais
              Department of Computer Science
              University of Colorado, Colorado Springs
              Email: dvadnais@uccs.edu

              Michael Middleton
              Department of Computer Science
              University of Colorado, Colorado Springs
              Email: mmiddlet@uccs.edu

Contact:
              Oluwatosin Oluwadare, PhD
              Department of Computer Science
              University of Colorado, Colorado Springs
              Email: ooluwada@uccs.edu


1. Content of folders:

  • src: Python Source Code and utility's used.
  • input-and-models: Synthetic and Real Hi-C datasets used.
  • Results: Output Structions generated for all the experiments performed.

2. Hi-C Data used in this study:

In our study, we used the synthetic dataset from Adhikari, et al. The contact maps, the original models and their reconstructed models used in this study were downloaded from here

The GM12878 cell Hi-C dataset, GEO Accession number GSE63525, was downloaded from GSDB with GSDB ID: OO7429SF

3. Input matrix file format:

Square Matrix Input format: The square matrix is a space seperated N by N intra-chromosomal contact matrix derived from Hi-C data, where N is the number of equal-sized regions of a chromosome.

4. Dependencies Installation:

Install env with anaconda from spec-file:
conda create --name ParticleChromo3D --file ParticleChromo3d_env.txt

Or install dependencies individually

Dependencies:
    Biopython - 1.7.8
    scipy - 1.5.2
    numpy - 1.19.2

5. Usage:

usage: python3 Ps.py infile [-h] [-ss SWARMSIZE] [-itt ITTCOUNT] [-t THRESHOLD] [-rr RANDRANGE] [-lf LOSSFUNCTION]

  • positional arguments:
        infile: Input file in the format of a matrix of contacts

  • optional arguments:
        -h, --help show this help message and exit
        -ss SWARMSIZE, --swarmSize SWARMSIZE
          Number of particles in system [Default 15]
        -itt ITTCOUNT, --ittCount ITTCOUNT
           Maximum number of iterations before stop [Default 30000]
        -t THRESHOLD, --threshold THRESHOLD
          Error threshold before stoping [Default 0.000001]
        -rr RANDRANGE, --randRange RANDRANGE
          Range of x,y,z starting coords. Random value bewtween -randRange,randRange [Default 1]
        -o OUTFILE, --outfile OUTFILE
           Filename of the output pdb model [Default ./chr.pdb]
        -lf LOSSFUNCTION, --lossFunction LOSSFUNCTION
          0 = SSE, 1 = MSE, 2 = RMSE, 3 = Huber [Default 2]


6. Output:

A pdb file and log file.

7. Publication:

Vadnais, D., Middleton, M. & Oluwadare, O. ParticleChromo3D: a Particle Swarm Optimization algorithm for chromosome 3D structure prediction from Hi-C data. BioData Mining 15, 19 (2022). https://doi.org/10.1186/s13040-022-00305-x

8. Follow-on:

https://github.com/OluwadareLab/ParticleChromo3D_Plus