(→PGP2 Sample Data)
|Line 1:||Line 1:|
A volunteer run, distributed computing project with data from the [http://personalgenomes.org
A volunteer run, distributed computing project with data from the [http://personalgenomes.org Genome Project] (PGP).
Revision as of 21:54, 19 December 2008
A volunteer run, distributed computing project with data from the Personal Genome Project (PGP).
The Personal Genome Project (PGP) will publicly sequence the DNA of 100.000 volunteers and make the results freely available. The analysis of the raw data entails a huge computational effort and will require much computational power. The PGP is an open source project. In this spirit we would like the data analysis to become an open source community effort through distributed computing with 'PersonalGenomes@Home'. The part of the data analysis that will be initially distributed to the community is the analysis of raw Illumina images to produce reads and alignment against a reference. We are currently setting up the open source software packages Swift and BOINC as well as Tranche and Free Factories.
Swift is designed to process a single tile of Illumina data at a time. It can be run in two modes:1) base-caller only (processes intensity files produced by the Solexa pipeline) and 2) image analysis. The output files are purity-filtered and non purity-filtered reads in fastq format, a run report, an intensity file and files listing all processed images.
Processing PGP Data
AL - After verifying the functionality of the code with example data (available through Swift), we have run Swift on tile 87 of one PGP2 data set. Images are 7.1MB in size and the processing resources required exceed the abilities of AL's personal computer (1.5MB RAM). Swift is designed to process one full tile of Illumina data at a time. Attempts to process less than 36 cycles remain unsuccessful. Keeping in mind that the goal is to perform the data analysis on a 'regular' computer, we did not move to larger memory capacities. Instead, the large images were cropped into three horizontal thirds of 2.4MB each using ImageJ, an open source image processing tool. Images overlapped by 10 pixels to avoid errors caused by edge effects. The one tile was then individually processed in three sub-tiles using Swift in approximately 20 minutes.
Finding the MFN2_R364W Variant and Control
To prove that Swift produces correct results, the stack 87 data were searched for the MFN2_R364W variant and stack 27 for the control. The last numbers are the x and y coordinates on the images. Differences in aligning techniques between the Illumina pipeline and Swift result in minor discrepancies in coordinate assignment.
Previous analysis had shown a T in the 11th cycle:
The Swift analysis confirms this result:
Analogous, the control sequence was extracted from stack 27.
Previous analysis had shown a C in the 13th cycle:
The Swift analysis confirms this result:
The results are illustrated in Figures 1 and 2. Images from the three cycles C, G, and T were loaded into the three color channels red, green, and blue of SAOImage ds9 to create a combined three-color image. The images show 50x100 pixels centered on the location of the variant and control sequence as determined by Swift. Fig. 1 shows cycles 9 through 13 of stack 87 for the variant MFN_R364W. Colors are red: C, green: G, blue: T. The expected sequence is TCTGG (blue, red, blue, green, green). The location of the variant is circled. Fig. 2 shows cycles 11 through 15 of stack 27 for the control sequence for the variant MFN_R364W. Colors are red: C, green: G, blue: T. The expected sequence is TCCGG (blue, red, red, green, green). The location of the variant is circled.
Swift on Free Factories
We have installed and run the Swift software on two virtual machines running on the http://bio.freelogy.org clusters at the Church lab. These nodes are intended as a production/development environment for coordinating the distributed computing effort. We plan to use the BOINC software. For now, we have automated the data analysis using a shell script, that downloads all images from PGP2 data set (this should switch to using Tranch using wget, crops them into thirds using ImageMagick and runs Swift on the entire data set. This analysis has been run with version 140 of Swift. With a new quality score recalibration in version 149, we reprocessed the entire data set. The reads produced by Swift for PGP2 data set can be found below.
PGP2 Sample Data
We currently have raw images, two sets of processed reads, and draft assemblies (from each read-set against both the whole HG18 reference assembly and against just the annotated capture regions) for about 10% of the exome of PGP2. We also have Affymetrix 500K data (binary) w/ two sets of calls for this participant. These are summarized below:
- Illumina data
- 07fb - Swift processed images placed against annotated 55K
- d0e5 - Swift processed images placed against HG18
- baac - Processed images (default) placed against annotated 55K
- 51a4 - Processed images (default) placed against HG18
- Files in each directory:
- input.gz - input FASTQ
- all.map.gz - binary placement
- mapcheck.txt.gz - statistics
- all.aln.txt.gz - placed reads
- cns.fq.txt.gz - consensus assembly
- cns.snp.txt.gz - SNPs
- cns.win.txt.gz - coverage
- cns.final.snp.txt.gz - filtered SNPs
- Affymetrix 500K
The above information is preliminary. The current release is here.