Problem 1: Inverse Numerator Relationship Matrix

During the lecture the method of computing the inverse numerator relationship matrix \(A^{-1}\) directly was introduced. The computation is based on the LDL-decomposition. As a result, we can write

\[A^{-1} = (L^T)^{-1} \cdot D^{-1} \cdot L^{-1}\] where \(L^{-1} = I-P\), and \(D^{-1}\) is a diagonal matrix with \((D^{-1})_{ii} * \sigma_u^{-2} = var(m_i)^{-1}\).

Tasks

Pedigree

nr_animal <- 6
tbl_pedigree <- tibble::tibble(Calf = c(1:nr_animal),
                               Sire = c(NA, NA, NA, 1 ,3, 4),
                               Dam = c(NA, NA, NA, 2, 2, 5))
tbl_pedigree

Your Solution

  • Construct matrix P from the pedigree
  • Use matrix P to compute the matrix \(L^{-1}\)
  • Construct the matrix \(D^{-1}\)
  • Compute \(A^{-1}\) based on \(L^{-1}\) and \(D^{-1}\)

Problem 2: Rules

The following diagram helps to illustrate the rules for constructing \(A^{-1}\)

Tasks

Your Solution

Problem 3: Program using the Rules

Write a program in R that implements the rules found in the solution of Problem 2. Test your program with the pedigree given in Problem 1. Compare the results that you obtain with the result obtained from the function pedigreemm::getAinv().

Your Solution

  • Because the focus of this problem is the implementation of Henderson’s rules in a function, we use then function pedigreemm::Dmat() to obtain the values of the matrix \(D\).
  • Write a function get_A_inverse which takes as input a pedigree and that returns the inverse numerator relationship matrix

Latest Changes: 2022-12-12 06:02:31 (pvr)

LS0tCnRpdGxlOiBMaXZlc3RvY2sgQnJlZWRpbmcgYW5kIEdlbm9taWNzIC0gTm90ZWJvb2sgOAphdXRob3I6IFBldGVyIHZvbiBSb2hyCmRhdGU6ICcyMDIyLTExLTI1JwpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sKcGFyYW1zOgogIGRvY3R5cGU6CiAgICBsYWJlbDogRG9jdW1lbnQgVHlwZQogICAgdmFsdWU6IHNvbHV0aW9uCiAgICBjaG9pY2VzOgogICAgLSBleGVyY2lzZQogICAgLSBzb2x1dGlvbgogICAgLSBub3RlYm9vawogIGlzb25saW5lOgogICAgbGFiZWw6IE9ubGluZSAoeS9uKQogICAgdmFsdWU6IHRydWUKICAgIGNob2ljZXM6CiAgICAtIHRydWUKICAgIC0gZmFsc2UKLS0tCgoKCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQprbml0cjo6b3B0c19jaHVuayRzZXQoZWNobyA9IFRSVUUpCiMgcm1kaGVscDo6c2hvd19rbml0X2hvb2tfY2FsbCgpCmtuaXRyOjprbml0X2hvb2tzJHNldChob29rX2NvbnZlcnRfb2RnID0gcm1kaGVscDo6aG9va19jb252ZXJ0X29kZykKYGBgCgoKIyMgUHJvYmxlbSAxOiBJbnZlcnNlIE51bWVyYXRvciBSZWxhdGlvbnNoaXAgTWF0cml4CkR1cmluZyB0aGUgbGVjdHVyZSB0aGUgbWV0aG9kIG9mIGNvbXB1dGluZyB0aGUgaW52ZXJzZSBudW1lcmF0b3IgcmVsYXRpb25zaGlwIG1hdHJpeCAkQV57LTF9JCBkaXJlY3RseSB3YXMgaW50cm9kdWNlZC4gVGhlIGNvbXB1dGF0aW9uIGlzIGJhc2VkIG9uIHRoZSBMREwtZGVjb21wb3NpdGlvbi4gQXMgYSByZXN1bHQsIHdlIGNhbiB3cml0ZSAKCiQkQV57LTF9ID0gKExeVCleey0xfSBcY2RvdCBEXnstMX0gXGNkb3QgTF57LTF9JCQKd2hlcmUgJExeey0xfSA9IEktUCQsIGFuZCAkRF57LTF9JCBpcyBhIGRpYWdvbmFsIG1hdHJpeCB3aXRoICQoRF57LTF9KV97aWl9ICogXHNpZ21hX3Veey0yfSA9IHZhcihtX2kpXnstMX0kLiAgCgoKIyMgVGFza3MKCiogVXNlIHRoZSBleGFtcGxlIHBlZGlncmVlIGdpdmVuIGJlbG93IGFuZCBjb21wdXRlIHRoZSBtYXRyaWNlcyAkTF57LTF9JCBhbmQgJEReey0xfSQgdG8gY29tcHV0ZSAkQV57LTF9JAoqIFZlcmlmeSB5b3VyIHJlc3VsdCB1c2luZyB0aGUgZnVuY3Rpb24gYGdldEFpbnYoKWAgZnJvbSBwYWNrYWdlIHBlZGlncmVlbW0uCgoKIyMgUGVkaWdyZWUKCmBgYHtyfQpucl9hbmltYWwgPC0gNgp0YmxfcGVkaWdyZWUgPC0gdGliYmxlOjp0aWJibGUoQ2FsZiA9IGMoMTpucl9hbmltYWwpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2lyZSA9IGMoTkEsIE5BLCBOQSwgMSAsMywgNCksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEYW0gPSBjKE5BLCBOQSwgTkEsIDIsIDIsIDUpKQp0YmxfcGVkaWdyZWUKYGBgCgoKIyMjIFlvdXIgU29sdXRpb24KCiogQ29uc3RydWN0IG1hdHJpeCBQIGZyb20gdGhlIHBlZGlncmVlCiogVXNlIG1hdHJpeCBQIHRvIGNvbXB1dGUgdGhlIG1hdHJpeCAkTF57LTF9JAoqIENvbnN0cnVjdCB0aGUgbWF0cml4ICREXnstMX0kCiogQ29tcHV0ZSAkQV57LTF9JCBiYXNlZCBvbiAkTF57LTF9JCBhbmQgJEReey0xfSQKCgoKCgojIyBQcm9ibGVtIDI6IFJ1bGVzClRoZSBmb2xsb3dpbmcgZGlhZ3JhbSBoZWxwcyB0byBpbGx1c3RyYXRlIHRoZSBydWxlcyBmb3IgY29uc3RydWN0aW5nICRBXnstMX0kCgpgYGB7ciBpbnYtbnVtLW1hdCwgZWNobz1GQUxTRSwgaG9va19jb252ZXJ0X29kZz1UUlVFLCBmaWdfcGF0aD0ib2RnIiwgb3V0LndpZHRoPSIxMDAlIn0KI3JtZGhlbHA6OnVzZV9vZGdfZ3JhcGhpYyhwc19wYXRoID0gIm9kZy9pbnYtbnVtLW1hdC5vZGciKQprbml0cjo6aW5jbHVkZV9ncmFwaGljcyhwYXRoID0gIm9kZy9pbnYtbnVtLW1hdC5wbmciKQpgYGAKIAoKIyMgVGFza3MKCiogR28gdGhyb3VnaCB0aGUgbGlzdCBvZiBhbmltYWxzIGluIHRoZSBwZWRpZ3JlZSBhbmQgd3JpdGUgZG93biB0aGUgY29udHJpYnV0aW9ucyB0aGF0IGFyZSBtYWRlIHRvIHRoZSBkaWZmZXJlbnQgZWxlbWVudHMgb2YgbWF0cml4ICRBXnstMX0kIAoqIEJhc2VkIG9uIHRoZSBkaWZmZXJlbnQgY29udHJpYnV0aW9ucywgdHJ5IHRvIGNvbWUgdXAgd2l0aCBzb21lIGdlbmVyYWwgcnVsZXMKCgojIyMgWW91ciBTb2x1dGlvbgoKCgoKCiMjIFByb2JsZW0gMzogUHJvZ3JhbSB1c2luZyB0aGUgUnVsZXMKV3JpdGUgYSBwcm9ncmFtIGluIFIgdGhhdCBpbXBsZW1lbnRzIHRoZSBydWxlcyBmb3VuZCBpbiB0aGUgc29sdXRpb24gb2YgUHJvYmxlbSAyLiBUZXN0IHlvdXIgcHJvZ3JhbSB3aXRoIHRoZSBwZWRpZ3JlZSBnaXZlbiBpbiBQcm9ibGVtIDEuIENvbXBhcmUgdGhlIHJlc3VsdHMgdGhhdCB5b3Ugb2J0YWluIHdpdGggdGhlIHJlc3VsdCBvYnRhaW5lZCBmcm9tIHRoZSBmdW5jdGlvbiBgcGVkaWdyZWVtbTo6Z2V0QWludigpYC4KCgojIyMgWW91ciBTb2x1dGlvbgoKKiBCZWNhdXNlIHRoZSBmb2N1cyBvZiB0aGlzIHByb2JsZW0gaXMgdGhlIGltcGxlbWVudGF0aW9uIG9mIEhlbmRlcnNvbidzIHJ1bGVzIGluIGEgZnVuY3Rpb24sIHdlIHVzZSB0aGVuIGZ1bmN0aW9uIGBwZWRpZ3JlZW1tOjpEbWF0KClgIHRvIG9idGFpbiB0aGUgdmFsdWVzIG9mIHRoZSBtYXRyaXggJEQkLiAKKiBXcml0ZSBhIGZ1bmN0aW9uIGBnZXRfQV9pbnZlcnNlYCB3aGljaCB0YWtlcyBhcyBpbnB1dCBhIHBlZGlncmVlIGFuZCB0aGF0IHJldHVybnMgdGhlIGludmVyc2UgbnVtZXJhdG9yIHJlbGF0aW9uc2hpcCBtYXRyaXgKCgoKIAoKCmBgYHtyLCBlY2hvPUZBTFNFLCByZXN1bHRzPSdhc2lzJ30KY2F0KCdcbi0tLVxuXG4gX0xhdGVzdCBDaGFuZ2VzOiAnLCBmb3JtYXQoU3lzLnRpbWUoKSwgJyVZLSVtLSVkICVIOiVNOiVTJyksICcgKCcsIFN5cy5pbmZvKClbJ3VzZXInXSwgJylfXG4nLCBzZXAgPSAnJykKYGBgCiAK