IAS Breeding is a software specialized in variance component and breeding value analysis. It includes linear mixed models, machine learning nonlinear models, and Bayesian models. The software provides two analysis platforms: offline software analysis (R language with embedded C++) and online web-based analysis.
Diverse software versions
Linux C++, R, Shiny web
Fast computation
Fast C++ math library
User friendly
Interactive web and R package
Rich in features
Heritability, Breeding value
Variance components
AI-REML
Genetic parameters
Heritability, Genetic correlation
Pedigree BLUP
Linear mixed models
Genomic prediction
LMM, machine learning, Bayesian
We present three methods to calculate breeding values: Linear mixed models, Machine learning nonlinear models, and Bayesian models
For the linear mixed model (LMM): y = Xβ + Zb + e; y is the vector of phenotype value; β the vector of fixed effects, b is the vector of additive genetic effects. Distributions: b ~ N(0,G), e ~ N(0,R), y ~ N(Xβ, V), where V=ZGZ′ + R. Var(G)=Aσ2, where A is the matrix of an additive genetic relationship constructed based on the pedigree (BLUP) or the genomic marker information provided by the SNPs (GBLUP).We can get Mixed Model Equations for β and b using Restricted Maximum Likelihood (REML).
The module is y = Xβ + Zs + e where and s the sum of the vector of SNP effects derived from different assumed distributions. BayesB assumes that most of the genetic markers have zero effect, which can be described as a mixture prior of a scaled t-distribution with probability π and a point mass at 0 with probability 1−π. BayesCπ assumes that SNP effects have a mixture prior of a normal distribution that has mean 0 and variance σ2 with probability π and null effect markers with probability 1−π. BayesN is the nested BayesCπ model, where the SNPs within a 0.2 Mb non-overlapping genomic region are collectively considered as a window. BayesS is similar to BayesCπ but the variance of SNP effects (for SNPs with non-zero effects) is related to MAF (pi) through a parameter S (σi^2=[2pi(1-pi)]^S*σ^2). BayesR assumes that SNP effects follow a mixture of four normal distributions N(0, γk*σk^2), the γk are 0, 0.01, 0.1 and 1 with probability π1, π2, π3 and π4, respectively, and π1+π2+π3+π4=1. The unknown parameters and SNP effects of Bayesian models were obtained from a Gibbs scheme based on the Markov chain Monte Carlo (MCMC) iterations.
IASbreeding R Package
IASbreeding V0.1.0 can calculate kinship matrix, variance component analysis using linear mixed model, breeding value using BLUP. The core algorithm of IASbreeding is built using Rcpp and RcppEigen.
Install IAS-breeding software
Start an R session using RStudio and run these lines:
install.packages("IASbreeding_0.1.0.zip", repos = NULL)
install.packages("Rcpp","RcppEigen")
library(IASbreeding)
library(Rcpp)
library(RcppEigen)
How to using IAS-breeding software
phe_file <- system.file("extdata", "Phenotype.txt", package = "IASbreeding", mustWork = TRUE)
pheno <- read.table(phe_file,header=TRUE)
ped_file <- system.file("extdata", "Pedigree.txt", package = "IASbreeding", mustWork = TRUE)
ped <- read.table(ped_file,header=TRUE)
newped<-pedcheck(ped)
A<-Akin(newped)
Results <- IASBLUP(BW56 ~ 1 + Sex + Condition,random = "ID", kinship = A, max_iter = 20, data = pheno)
bed_file <- system.file("extdata", "Genotype.bed", package = "IASbreeding", mustWork = TRUE)
file_prefix <- sub("\\.bed$", "", bed_file)
Genotype <-read_bed(file_prefix)
kin<-Gkin(Genotype)
Results <- IASBLUP(BW56 ~ 1 + Sex + Condition,random = "ID", kinship = kin, max_iter = 20, data = pheno)
- Please read the instructions for the IAS-Breeding software for detailed usage.
IAS-Breeding C++ software
IASBreeding V1.1.0 can calculate kinship matrix, variance component, breeding value using linear mixed model.
Installing IAS-Breeding
You can directly use it after extraction:
tar -xzvf IASBreeding-1.1.0-Linux-x86_64.tar.gz
./IASBreeding
Using IAS-Breeding
- Build genomic relationship matrix : –kinship
–kin-method 1: sum[2p(1-p)(VanRaden et al 2008);
–kin-method 2: Independent 2p(1-p)(Yang et al 2010);
–kin-method 3: sum[2p(1-p)(Cai et al., 2023)
--kin-method 1, 2 or 3. Choose a specific method for calculation (Default: --kin-method 1)
./IASBreeding --kinship --bedfile Genotype --kin-bin --threads 8 --out output --kin-method 1
--bedfile Perform calculations using the given genotype (the prefix of PLINK binary genotype file):
./IASBreeding --kinship --bedfile Genotype
--pedigree Perform calculations using the given pedigree (the pedigree file with three columns):
./IASBreeding --kinship --pedigree Pedigree.txt
--kin-bin Kinship saved for binary format(if not given, kinship saved for txt format):
./IASBreeding --kinship --bedfile Genotype --kin-bin
--threads Specify the number of threads used (default:1):
./IASBreeding --kinship --bedfile Genotype --kin-bin --threads 8
--out Specify the output prefix (default: Result):
./IASBreeding --kinship --bedfile Genotype --kin-bin --threads 8 --out output
--kin-lambda The power of Indipendent 2p(1-p) or variance (only useful for kin-method 2 or 3, default lambda = 1):
./IASBreeding --kinship --bedfile Genotype --pedigree Pedigree.txt --kin-bin --threads 8 --out output --kin-method 2 --kin-lambda 2
--kin-tau Scaling factor (tau) for G22 matrix (Default tau=1)
./IASBreeding --kinship --bedfile Genotype --pedigree Pedigree.txt --kin-bin --threads 8 --out output --kin-method 2 --kin-lambda 2 --kin-tau 1.1
--kin-omega Scaling factor (1-omega) for A22 matrix (Default omega=1)
./IASBreeding --kinship --bedfile Genotype --pedigree Pedigree.txt --kin-bin --threads 8 --out output --kin-method 2 --kin-lambda 2 --kin-tau 2 --kin-omega 0.5
- Variance component analysis using linear mixed model : –reml
Perform calculations using the given phenotype and kinship (relationship matrix built by --kinship):
--kin-file Specify the kinship txt file
--phefile Specify the phenotype file
--phe-pos Specify the column for phenotype data
./IASBreeding --reml --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4
--covar-pos Specify the columns for covariates, separated by commas:
./IASBreeding --reml --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4 --covar-pos 3
--max-iter Specify the maximum iterations of REML:
./IASBreeding --reml --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4 --covar-pos 3 --max-iter 50
- Perform prediction of breeding values : –predict
Perform calculations using the given phenotype and kinship (relationship matrix built by --kinship):
--kin-file Specify the kinship txt file
--phefile Specify the phenotype file
--phe-pos Specify the column for phenotype data
./IASBreeding --predict --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4
--covar-pos Specify the columns for covariates, separated by commas:
./IASBreeding --predict --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4 --covar-pos 3
--max-iter Specify the maximum iterations of REML:
./IASBreeding --predict --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4 --covar-pos 3 --max-iter 50
--out Specify the output prefix (default: Result):
./IASBreeding --predict --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4 --covar-pos 3 --max-iter 50 --out output
./IASBreeding --kinship --pedigree Pedigree.txt --out output
./IASBreeding --predict --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4 --covar-pos 3 --out BLUP_bv
./IASBreeding --kinship --bedfile Genotype --out output
./IASBreeding --predict --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4 --covar-pos 3 --out GBLUP_bv
./IASBreeding --kinship --pedigree Pedigree.txt --bedfile Genotype --out output
./IASBreeding --predict --kin-file output.kinship.txt --phefile Phenotype.txt --phe-pos 4 --covar-pos 3 --out SSGBLUP_bv
About IAS-breeding
This app (IAS-breeding) was built by Wentao Cai(caiwentao@caas.cn).
The current release of IAS-breeding contains:
Use IAS-breeding online