SlideShare una empresa de Scribd logo
1 de 66
Giảng viên: TS. Đỗ Phan Thuận
Sinh viên:
            Nguyễn Việt Hà
            Lê Ngọc Minh




                                1
   Cây tiến hóa
   Bài toán Hà tiện nhỏ
    ◦ Phương pháp giải của Fitch và Sankoff
    ◦ Cài đặt Sankoff
   Bài toán Hà tiện lớn
    ◦ Bài toán Hà tiện lớn là NP-đầy đủ
    ◦ Thuật toán nhánh cận
    ◦ Các thuật toán tìm kiếm cục bộ




                                              2
   Cây tiến hóa được dùng để mô hình hóa cơ chế tiến
    hóa giữa các loài.
   Giúp giải thích được quan hệ họ hàng, tổ tiên giữa các
    loài.
   Cây tiến hóa thường là cây nhị phân




                                                             3
4
   Cây có gốc
    ◦   Gốc = Loài tổ tiên xa nhất
    ◦   Lá = Loài hiện tại
    ◦   Nút trong = Loài tổ tiên giả thuyết
    ◦   Đường đi gốc  lá = Đường tiến hoá
   Cây không gốc
    ◦ Không quan tâm đến vị trí của loài tổ tiên chung trong cây




                                                                   5
   Cây nhị phân có trọng số
            Cạnh có trọng số dương (cũng gọi là độ dài)
   Trọng số trên cạnh (v, w) thể hiện:
            Số lượng biến dị từ v đến w
            Khoảng cách ước lượng về thời gian tiến hoá




                                                          6
   Có nhiều phương pháp xây dựng cây tiến hóa
   Một trong các phương pháp xây dựng cây là dựa vào
    ma trận đặc tính loài.
    ◦ Đầu vào là một ma trận đặc tính loài m x n.
    ◦ Đầu ra: cây có số lá tương ứng với n loài hiện có và có đỉnh
      tương ứng với loài tổ tiên
    ◦ Mục tiêu: Tìm chuỗi ký tự ở các nút bên trong cây sao cho
      chuỗi ký tự này giải thích tốt nhất cho n loài quan sát.
   Khác biệt được tính bằng khoảng cách Hamming
   Giải quyết bằng bài toán Hà tiện

                                                                     7
   Bài toán Hà tiện là các bài toán xây dựng cây sao cho
    tối thiểu hóa điểm hà tiện.
   Điểm hà tiện của cây T là tổng độ dài các cạnh của nó.
   Bài toán Hà tiện nhỏ
   Bài toán Hà tiện lớn




                                                             8
   Mục tiêu: Tìm cách gán nhãn tối thiểu cho các đỉnh
    trong của một cây tiến hóa.
   Đầu vào: Cây T với mỗi lá đã được gán nhãn bởi xâu
    m ký tự.
   Đầu ra: Phép gán nhãn các đỉnh trong của cây T sao
    cho tối thiểu hóa điểm hà tiện.
   Hai phương pháp giải bài toán Hà tiện nhỏ đã giới
    thiệu là của Fitch và Sankoff đều có thời gian chạy
    O(nm).


                                                          9
   Khởi tạo: gán st(v) theo luật sau:
    ◦ st(v) = 0 nếu v được gán nhãn t
    ◦ st(v) = ∞ nếu ngược lại
   Tính st(v) – điểm hà tiện nhỏ nhất của đỉnh v với ký tự
    t:

   Với u,w là đỉnh con của v; 1≤i,j ≤ k là các ký tự.
   Sau khi tính được st(v) của các đỉnh, ta thực hiện gán
    nhãn bằng phương pháp quay lui.


                                                              10
   Phương pháp này gán tập ký tự Sv cho mỗi đỉnh theo
    cách sau:
    ◦ Nếu v là lá, Sv chứa 1 ký tự là nhãn của lá đó.
    ◦ Nếu v là cạnh trong với đỉnh con u,w, Sv được tạo thành như
      sau:



   Sv được gán theo thứ tự duyệt sau từ lá đến gốc.




                                                                    11
   Sau khi có các tập Sv ta chọn một ký tự đế gán nhãn
    cho mỗi đỉnh bằng cách:
   Gán ký tự bất kz thuộc Sr cho gốc.
   Duyệt cây theo thứ tự trước từ gốc đến lá.
    Cho mỗi đỉnh trong v,
    ◦ gán nhãn giống của cha cho đỉnh đó nếu nhãn của cha thuộc
      Sv.
    ◦ Nếu không thì gán nhãn bất kì từ tập Sv.




                                                                  12
   VD: Với ma trận k x k (δi,j):


                  δ     A      T    G   C
                  A     0      3    4   9
                  T     3      0    2   4
                  G     4      2    0   4
                  C     9      4    4   0

                                            13
14
δ   A T     G C
A 0     3   4   9
T   3   0   2   4
G 4     2   0   4
C   9   4   4   0




    A ∞ 3 ∞ ∞       A ∞ ∞ ∞ 9
                                15
δ   A T     G C
A 0     3   4   9
T   3   0   2   4
G 4     2   0   4
C   9   4   4   0




                    C   9 ∞ ∞ ∞   C   ∞ ∞ 4 ∞
                                                16
δ   A T     G C
A 0     3   4   9
T   3   0   2   4
G 4     2   0   4
C   9   4   4   0




                    T 15   4 8   8   T 7   5   6   17
                                                        17
   Điểm hà tiện S(T) = 9
                            18
   Bài toán Hà tiện lớn sẽ giải quyết vấn đề xây dựng
    cấu trúc cây mà bài toán Hà tiện nhỏ chưa giải quyết.




                                                            19
   Đầu vào: Ma trận M(n × m) biểu diễn n loài, mỗi loài
    bằng một chuỗi m ký tự.

   Đầu ra: Một cây T có n lá được gán nhãn bằng n hàng
    của ma trận M và một cách gán nhãn các đỉnh trong của
    cây đó sao cho điểm hà tiện là nhỏ nhất.




                                                            20
   Nếu định duyệt qua tất cả các cấu trúc cây, ta cần xem
    xét số lượng cấu trúc cần duyệt.
   Theo Cayley số cây không gốc có gán nhãn khác nhau
    với n đỉnh: nn-2
   Nếu như coi cây tiến hóa là cây nhị phân đầy đủ:
                           (2n-3)!!
   Trường hợp coi cây tiến hóa là cây có gốc thông
    thường với N đỉnh trong đó có n lá:




                                                             21
   Thực tế bài toán Hà tiện lớn là NP-đầy đủ




                                                22
   Đầu vào:
    Cho n nút lá, mỗi nút biểu diễn một chuỗi đặc tính hoặc thứ
    tự DNA.
    Xây dựng một cây có gốc T bằng cách gán nhãn cho các nút lá
    của nó các chuỗi đầu vào và gán nhãn cho các đỉnh trong các
    xâu tương ứng sao cho có cây với điểm hà tiện tối thiểu.
    Gọi S(T) là điểm hà tiện của cây T.
   Đầu ra:
    Cho một hằng số BϵR+, có cây T nào mà


    .           S(T) =          | {j : v j   u j} | B?
                         (u,v) E(T)
                                                                  23
   Thực hiện với một trường hợp cụ thể của LPP.
    ◦ Giả sử tổng số đỉnh của cây là đã biết, đặt là N, trong đó số
      lượng nút lá là n.
    ◦ Ví dụ với trường hợp cụ thể là cây nhị phân đầy đủ có gốc, N
      = (2n-1).
   Gọi trường hợp cụ thể của LPP là S-LPP




                                                                      24
   Chứng minh S-LPP là NP-đầy đủ bằng cách quy dẫn từ
    bài toán Minimum Energy Broadcast tree (MEB).
   MEB đã được chứng minh là NP-đầy đủ qua phép quy
    dẫn từ bài toán Phủ tập (Set Cover Problem).




                                                         25
   Đầu vào:
    Xem xét tập đỉnh V gồm N đỉnh
    s ϵ V: đỉnh nguồn,
    Tập trọng số các cạnh:
    Px là năng lượng cần thiết cho một nút x:

   Đầu ra:
    Cho một hằng số BϵR+, có cây có gốc tại S nào mà


.

                                                       26
S
           PS
X1

     Px1




                    27
S




    28
S




    29
   Xem xét bài toán Minimum Energy n-lá-xác-định
    Broadcast tree (MEnB):
    o Có 1 đỉnh nguồn đã biết,
    o n nút lá đã biết trong N-1 đỉnh đích.
    o Đầu ra cần xác định của bài toán là một cây có gốc là đỉnh
      nguồn truyền tới N-1 đỉnh trong đó có đúng n nút lá đã được
      xác định sao cho tối thiểu hóa tổng năng lượng cần dùng.




                                                                    30
   MEnB là bài toán thuộc lớp NP do có Bằng chứng ngắn
    gọn dễ kiểm tra.
   Giả sử ta tìm được cây MEnB với năng lượng tối
    thiểu.
    ◦ Loại bỏ n nút lá đã định nghĩa cùng các cạnh tương ứng trên
      cây MEnB.
     Một cây có (N-n) đỉnh gọi là rMEnB. Tính được năng lượng
      cần cho cây này đặt là Wr.




                                                                    31
S




    32
Với B=Wr
S




               33
   MEnB đã trở thành bài toán MEB: có thể xây dựng cây
    MEB cho (N-n) đỉnh với mức năng lượng Wr hay
    không?
   MEnB ít nhất cũng khó như việc tìm cây MEB trong (N-
    n) đỉnh còn lại trong đó có 1 đỉnh nguồn và (N-n-1)
    đỉnh đích. Vậy MEnB cũng là NP-đầy đủ.




                                                           34
   S-LPP là bài toán thuộc lớp NP:
    ◦ Cho một cấu trúc cây nhị phân có gốc có N đỉnh trong đó có n
      nút lá đã được gán nhãn.
    ◦ Có thể kiểm tra điểm hà tiện của cây này có nhỏ hơn hằng số
      B hay không bằng giải thuật của Fitch hoặc Sankoff, chạy
      trong thời gian đa thức.




                                                                     35
   Tồn tại phép quy dẫn độ phức tạp đa thức từ MEnB
    sang S-LPP:
    ◦ Với một đầu vào của MEnB, mục tiêu là xây dựng một cây nhị
      phân có gốc tại đỉnh nguồn tới N-1 đỉnh đích trong đó có
      đúng n nút lá sao cho năng lượng cần dùng là tối thiểu.
    ◦ Đầu vào S-LPP tương đương với đầu vào MEnB này có thể
      được xây dựng như sau:




                                                                   36
   Ánh xạ n lá của MEnB sang n lá của S-LPP tương ứng
    một-một.
   Dựa trên liên hệ giữa khoảng cách Euclidean giữa các
    đỉnh của MEnB và khoảng cách Hamming của các
    chuỗi đầu đầu vào trong S-LPP.
   Phép ánh xạ         2                    m
                     R       { A, T , G, C}
   Trong đó khoảng cách A,T,G,C được xác định theo
    khoảng cách Hamming


                                                           38
   Phép ánh xạ:
    ◦ Từ mỗi cấu trúc cây từ đầu vào MEnB, cho một giá trị năng
      lượng cần dùng duy nhất. Cũng cấu trúc cây đó, từ giải thuật
      của Fitch hoặc Sankoff, ta có thể tính được duy nhất 1 giá trị
      điểm hà tiện của cây bằng cách gán lại nhãn cho cách đỉnh
      trong.
    ◦ Năng lượng cần cho một đỉnh để có thể truyền tin có thể
      được ánh xạ sang số đột biến xảy ra trên một đỉnh của S-LPP.
    ◦ Về cơ bản khi tìm ra cây MEnB thì có thể xác định được là có
      thể dựng được một cây N đỉnh có chính xác n nút lá được
      gán nhãn mà điểm hà tiện nhỏ hơn một số B (BϵR+) hay
      không.

                                                                       39
 Do giải thuật của Fitch hay Sankoff có độ phức tạp
  O(nm).
Do đó, tồn tại phép quy dẫn ra đầu vào cho S-LPP từ
  đầu vào của MEnB trong thời gian đa thức.
 MEnB là NP-đầy đủ  S-LPP là NP-đầy đủ.
 S-LPP chỉ là một trường hợp riêng của LPP  LPP
  cũng là NP-đầy đủ.




                                                       41
   LPP đã được chứng minh là NP-đầy đủ qua phép quy
    dẫn từ bài toán MEB:
   MEnB(MEB)S-LPP(LPP)
   Việc mong tìm một giải thuật giải được bài toán Hà
    tiện lớn một cách vừa nhanh chóng vừa chính xác là
    vô vọng.
43
   Xét mảng [i3][i5][i7]...[i2n-5], với mỗi ik nhận giá trị
    1...k
   Ban đầu cây có 3 chuỗi x1, x2, x3
   Thêm chuỗi x4 vào cạnh có chỉ số lưu trong [i3]: có
    3+2=5 cạnh
   Thêm chuỗi x5 vào cạnh có chỉ số lưu trong [i5]: có
    5+2=7 cạnh
   ...
   Thêm chuỗi xn để được cây hoàn chỉnh.


                                                               44
   Ví dụ: n=5, [i3][i5] = (1, 3)




                                    45
   Tưởng tượng mảng [i3][i5][i7]...[i2n-
    5] là một chiếc công-tơ-mét
   Công-tơ-mét chạy cho ta một
    phép duyệt tất cả cây n lá




                                            46
   Để duyệt các cây ít hơn n lá,
    ta cho phép bộ đếm nhận giá
    trị 0
   Ý nghĩa: xâu thứ k không
    được đưa vào cây
   Không có giá trị khác không
    bên phải 0
   Nếu có một dãy số 0 về bên
    phải, ta tăng cả dãy


                                    47
   Thêm nút lá mới chỉ làm tăng
    điểm hà tiện của cây
   Nếu cây đang xây dựng có
    điểm lớn hơn điểm tốt nhất
    hiện biết  cắt nhánh
   Tăng bộ đếm khác không bên
    phải nhất lên một




                                   48
49
Thời gian chạy phụ thuộc vào kích thước dữ liệu


                160

                140

                120

                100

                80

                60
thời gian (s)




                40

                20

                  0
                      4         5          6           7        8       9   10

                                                số chuỗi




                                                                                 50
 Số lượng cây không gốc n lá:
               3.5.7...(2n-5) = (2n-5)!!
 Khối lượng tính toán quá lớn
 Áp dụng các chiến lược tìm kiếm cục bộ




                                           51
52
   Di chuyển trong không gian tất cả các cây bằng
    các phép biến đổi
   Tại mỗi bước cố gắng làm giảm giá trị hàm mục
    tiêu
   Không đảm bảo tìm được giá trị tối ưu toàn cục
   Các phép biến đổi khác nhau cho hiệu quả khác
    nhau




                                                     53
   NNI (Nearest Neighbour Interchange)
   D. F. Robinson năm 1969
   Đổi chỗ hai cây con ở hai phía của một cạnh trong
   Một cây n lá có (2n-6) cách biến đổi




                                                        54
   SPR (Subtree Pruning Regrating)
   Cắt một cạnh và ghép vào chỗ khác
   Một cây n lá có 2(n-3)(2n-7) cách biến đổi




                                                 55
   TBR (Tree-Bisection-Reconnection)
   Cắt đôi thành hai cây con và thêm cạnh nối ở vị trí
    khác




                                                          56
   NNI ⊆ SPR ⊆ TBR
   Phép biến đổi nhỏ:
    ◦ Dễ bị kẹt ở cực trị cục bộ
   Phép biến đổi lớn:
    ◦ Khối lượng tính toán lớn
    ◦ Cấu trúc cây thay đổi nhiều nên khó tận dụng thông tin để
      tính điểm hà tiện




                                                                  57
   Parametric Progressive Neighborhood
   Adrien Goeffon et al. 2008
   Cắt một cạnh và ghép lại ở vị trí cách nó không quá d




                                                            58
   Với d=1, PPN trở thành NNI
   Với d=∞, PPN trở thành SPR




                                 59
   Ban đầu d nhận giá trị lớn, sau giảm dần về 1




   Giả sử số bước lặp là M, d giảm tuyến tính
                d=                          .




                                                    60
   Nhiều bộ dữ liệu gồm cả ngẫu nhiên và thực tế
   Cho phép bước di chuyển không làm thay đổi giá trị
    hàm mục tiêu
   Chọn bước di chuyển đầu tiên cải thiện kết quả
   Lời giải đầu được sinh bằng thuật toán ngẫu nhiên (R)
    hoặc tham lam (G)




                                                            61
   Φ0: điểm của cây ban đầu
   Φb : điểm của cây tốt nhất sau khi tìm kiếm kết thúc
   f: tần suất của nó
   Φa: điểm trung bình của các cây
   σ: độ lệch chuẩn của Φa và
   time: thời gian trung bình cho các lần lặp (s)




                                                           62
   Bộ dữ liệu ngẫu nhiên nhỏ




                                63
   Bộ dữ liệu ngẫu
    nhiên trung bình




                       64
   Bộ dữ liệu ngẫu nhiên trung bình




                                       65
   TBR không hiệu quả về thời gian
   Nói chung SPR tốt hơn NNI
   PPN cho kết quả tốt nhất trong hầu hết trường
    hợp




                                                    66
   Với ngành Sinh học ngày càng phát triển  phát hiện
    thêm nhiều loài mới, phát hiện thêm nhiều đặc
    điểm, bằng chứng tiến hóa mới.
   Việc xây dựng cây tiến hóa từ các chuỗi đặc tính là
    quan trọng.
   Trên đây ta đã xem xét một phương pháp xây dựng
    cây tiến hóa là bài toán Hà tiện ở mức cơ bản nhất.




                                                          67
68

Más contenido relacionado

La actualidad más candente

Hệ phương trình vi phân tuyến tính
Hệ phương trình vi phân tuyến tínhHệ phương trình vi phân tuyến tính
Hệ phương trình vi phân tuyến tínhThế Giới Tinh Hoa
 
Tom tat bai giang ly thuyet do thi - nguyen ngoc trung
Tom tat bai giang   ly thuyet do thi - nguyen ngoc trungTom tat bai giang   ly thuyet do thi - nguyen ngoc trung
Tom tat bai giang ly thuyet do thi - nguyen ngoc trungkikihoho
 
Công thức Vật lý đại cương III
Công thức Vật lý đại cương IIICông thức Vật lý đại cương III
Công thức Vật lý đại cương IIIVũ Lâm
 
Bai giảng shpt
Bai giảng shptBai giảng shpt
Bai giảng shptHoa Phuong
 
Giáo trình công nghệ DNA tái tổ hợp.pdf
Giáo trình công nghệ DNA tái tổ hợp.pdfGiáo trình công nghệ DNA tái tổ hợp.pdf
Giáo trình công nghệ DNA tái tổ hợp.pdfMan_Ebook
 
Quá trình phiên mã ở Prokaryote
Quá trình phiên mã ở ProkaryoteQuá trình phiên mã ở Prokaryote
Quá trình phiên mã ở ProkaryoteMai Hữu Phương
 
Huong dan thuc_hanh_spss_th_s_pham_le_hong_nhung
Huong dan thuc_hanh_spss_th_s_pham_le_hong_nhungHuong dan thuc_hanh_spss_th_s_pham_le_hong_nhung
Huong dan thuc_hanh_spss_th_s_pham_le_hong_nhungNguyễn Ngọc Trâm
 
Nhân đôi ADN và tổng hợp ARN
Nhân đôi ADN và tổng hợp ARNNhân đôi ADN và tổng hợp ARN
Nhân đôi ADN và tổng hợp ARNBạn Nguyễn Ngọc
 
Ung dung cac ly thuyet hoc tap
Ung dung cac ly thuyet hoc tapUng dung cac ly thuyet hoc tap
Ung dung cac ly thuyet hoc tapLe Hang
 
Tư tưởng hcm về đại đoàn kết dân tộc
Tư tưởng hcm về đại đoàn kết dân tộcTư tưởng hcm về đại đoàn kết dân tộc
Tư tưởng hcm về đại đoàn kết dân tộcCloud2127
 
S12 bai 19 tao giong bang phuong phap gay dot bien va cong nghe te bao
S12 bai 19 tao giong bang phuong phap gay dot bien va cong nghe te baoS12 bai 19 tao giong bang phuong phap gay dot bien va cong nghe te bao
S12 bai 19 tao giong bang phuong phap gay dot bien va cong nghe te baokienhuyen
 
Sequencing lý thuyết
Sequencing lý thuyếtSequencing lý thuyết
Sequencing lý thuyếtLam Nguyen
 
Xstk 07 12_2015_9914
Xstk 07 12_2015_9914Xstk 07 12_2015_9914
Xstk 07 12_2015_9914Nam Cengroup
 
Liên quan và điều hòa chuyển hóa
Liên quan và điều hòa chuyển hóaLiên quan và điều hòa chuyển hóa
Liên quan và điều hòa chuyển hóaLam Nguyen
 

La actualidad más candente (20)

Một số bệnh di truyền
Một số bệnh di truyềnMột số bệnh di truyền
Một số bệnh di truyền
 
Hệ phương trình vi phân tuyến tính
Hệ phương trình vi phân tuyến tínhHệ phương trình vi phân tuyến tính
Hệ phương trình vi phân tuyến tính
 
Tom tat bai giang ly thuyet do thi - nguyen ngoc trung
Tom tat bai giang   ly thuyet do thi - nguyen ngoc trungTom tat bai giang   ly thuyet do thi - nguyen ngoc trung
Tom tat bai giang ly thuyet do thi - nguyen ngoc trung
 
Gene, dien di, pcr
Gene, dien di, pcrGene, dien di, pcr
Gene, dien di, pcr
 
Công thức Vật lý đại cương III
Công thức Vật lý đại cương IIICông thức Vật lý đại cương III
Công thức Vật lý đại cương III
 
Công Thức Giải Nhanh Sinh Học 12-LTĐH
Công Thức Giải Nhanh Sinh Học 12-LTĐHCông Thức Giải Nhanh Sinh Học 12-LTĐH
Công Thức Giải Nhanh Sinh Học 12-LTĐH
 
Bai giảng shpt
Bai giảng shptBai giảng shpt
Bai giảng shpt
 
Giáo trình công nghệ DNA tái tổ hợp.pdf
Giáo trình công nghệ DNA tái tổ hợp.pdfGiáo trình công nghệ DNA tái tổ hợp.pdf
Giáo trình công nghệ DNA tái tổ hợp.pdf
 
Giao trinh sinh_hoc_dai_cuong
Giao trinh sinh_hoc_dai_cuongGiao trinh sinh_hoc_dai_cuong
Giao trinh sinh_hoc_dai_cuong
 
Tối ưu hóa
Tối ưu hóaTối ưu hóa
Tối ưu hóa
 
Quá trình phiên mã ở Prokaryote
Quá trình phiên mã ở ProkaryoteQuá trình phiên mã ở Prokaryote
Quá trình phiên mã ở Prokaryote
 
Huong dan thuc_hanh_spss_th_s_pham_le_hong_nhung
Huong dan thuc_hanh_spss_th_s_pham_le_hong_nhungHuong dan thuc_hanh_spss_th_s_pham_le_hong_nhung
Huong dan thuc_hanh_spss_th_s_pham_le_hong_nhung
 
Nhân đôi ADN và tổng hợp ARN
Nhân đôi ADN và tổng hợp ARNNhân đôi ADN và tổng hợp ARN
Nhân đôi ADN và tổng hợp ARN
 
Ung dung cac ly thuyet hoc tap
Ung dung cac ly thuyet hoc tapUng dung cac ly thuyet hoc tap
Ung dung cac ly thuyet hoc tap
 
Tư tưởng hcm về đại đoàn kết dân tộc
Tư tưởng hcm về đại đoàn kết dân tộcTư tưởng hcm về đại đoàn kết dân tộc
Tư tưởng hcm về đại đoàn kết dân tộc
 
Slides de cuong hoa dai cuong 1
Slides de cuong hoa dai cuong 1Slides de cuong hoa dai cuong 1
Slides de cuong hoa dai cuong 1
 
S12 bai 19 tao giong bang phuong phap gay dot bien va cong nghe te bao
S12 bai 19 tao giong bang phuong phap gay dot bien va cong nghe te baoS12 bai 19 tao giong bang phuong phap gay dot bien va cong nghe te bao
S12 bai 19 tao giong bang phuong phap gay dot bien va cong nghe te bao
 
Sequencing lý thuyết
Sequencing lý thuyếtSequencing lý thuyết
Sequencing lý thuyết
 
Xstk 07 12_2015_9914
Xstk 07 12_2015_9914Xstk 07 12_2015_9914
Xstk 07 12_2015_9914
 
Liên quan và điều hòa chuyển hóa
Liên quan và điều hòa chuyển hóaLiên quan và điều hòa chuyển hóa
Liên quan và điều hòa chuyển hóa
 

Más de Minh Lê

Robust Object Recognition with Cortex-Like Mechanisms
Robust Object Recognition with Cortex-Like MechanismsRobust Object Recognition with Cortex-Like Mechanisms
Robust Object Recognition with Cortex-Like MechanismsMinh Lê
 
how neurons connect to each others?
how neurons connect to each others?how neurons connect to each others?
how neurons connect to each others?Minh Lê
 
Lý thuyết tính toán - BKHN - 7
Lý thuyết tính toán - BKHN - 7Lý thuyết tính toán - BKHN - 7
Lý thuyết tính toán - BKHN - 7Minh Lê
 
Lý thuyết tính toán - BKHN - 5
Lý thuyết tính toán - BKHN - 5Lý thuyết tính toán - BKHN - 5
Lý thuyết tính toán - BKHN - 5Minh Lê
 
Lý thuyết tính toán - BKHN - 4
Lý thuyết tính toán - BKHN - 4Lý thuyết tính toán - BKHN - 4
Lý thuyết tính toán - BKHN - 4Minh Lê
 
Lý thuyết tính toán - BKHN - 3
Lý thuyết tính toán - BKHN - 3Lý thuyết tính toán - BKHN - 3
Lý thuyết tính toán - BKHN - 3Minh Lê
 
Lý thuyết tính toán - BKHN - 2
Lý thuyết tính toán - BKHN - 2Lý thuyết tính toán - BKHN - 2
Lý thuyết tính toán - BKHN - 2Minh Lê
 
Lý thuyết tính toán - BKHN - 1
Lý thuyết tính toán - BKHN - 1Lý thuyết tính toán - BKHN - 1
Lý thuyết tính toán - BKHN - 1Minh Lê
 
Lý thuyết tính toán - BKHN - 6
Lý thuyết tính toán - BKHN - 6Lý thuyết tính toán - BKHN - 6
Lý thuyết tính toán - BKHN - 6Minh Lê
 
Xây dựng tag cloud bằng cây n-gram
Xây dựng tag cloud bằng cây n-gramXây dựng tag cloud bằng cây n-gram
Xây dựng tag cloud bằng cây n-gramMinh Lê
 
Cross-entropy method
Cross-entropy methodCross-entropy method
Cross-entropy methodMinh Lê
 
Cross-entropy method
Cross-entropy methodCross-entropy method
Cross-entropy methodMinh Lê
 
Food expert system
Food expert systemFood expert system
Food expert systemMinh Lê
 

Más de Minh Lê (13)

Robust Object Recognition with Cortex-Like Mechanisms
Robust Object Recognition with Cortex-Like MechanismsRobust Object Recognition with Cortex-Like Mechanisms
Robust Object Recognition with Cortex-Like Mechanisms
 
how neurons connect to each others?
how neurons connect to each others?how neurons connect to each others?
how neurons connect to each others?
 
Lý thuyết tính toán - BKHN - 7
Lý thuyết tính toán - BKHN - 7Lý thuyết tính toán - BKHN - 7
Lý thuyết tính toán - BKHN - 7
 
Lý thuyết tính toán - BKHN - 5
Lý thuyết tính toán - BKHN - 5Lý thuyết tính toán - BKHN - 5
Lý thuyết tính toán - BKHN - 5
 
Lý thuyết tính toán - BKHN - 4
Lý thuyết tính toán - BKHN - 4Lý thuyết tính toán - BKHN - 4
Lý thuyết tính toán - BKHN - 4
 
Lý thuyết tính toán - BKHN - 3
Lý thuyết tính toán - BKHN - 3Lý thuyết tính toán - BKHN - 3
Lý thuyết tính toán - BKHN - 3
 
Lý thuyết tính toán - BKHN - 2
Lý thuyết tính toán - BKHN - 2Lý thuyết tính toán - BKHN - 2
Lý thuyết tính toán - BKHN - 2
 
Lý thuyết tính toán - BKHN - 1
Lý thuyết tính toán - BKHN - 1Lý thuyết tính toán - BKHN - 1
Lý thuyết tính toán - BKHN - 1
 
Lý thuyết tính toán - BKHN - 6
Lý thuyết tính toán - BKHN - 6Lý thuyết tính toán - BKHN - 6
Lý thuyết tính toán - BKHN - 6
 
Xây dựng tag cloud bằng cây n-gram
Xây dựng tag cloud bằng cây n-gramXây dựng tag cloud bằng cây n-gram
Xây dựng tag cloud bằng cây n-gram
 
Cross-entropy method
Cross-entropy methodCross-entropy method
Cross-entropy method
 
Cross-entropy method
Cross-entropy methodCross-entropy method
Cross-entropy method
 
Food expert system
Food expert systemFood expert system
Food expert system
 

Parsimony problems

  • 1. Giảng viên: TS. Đỗ Phan Thuận Sinh viên: Nguyễn Việt Hà Lê Ngọc Minh 1
  • 2. Cây tiến hóa  Bài toán Hà tiện nhỏ ◦ Phương pháp giải của Fitch và Sankoff ◦ Cài đặt Sankoff  Bài toán Hà tiện lớn ◦ Bài toán Hà tiện lớn là NP-đầy đủ ◦ Thuật toán nhánh cận ◦ Các thuật toán tìm kiếm cục bộ 2
  • 3. Cây tiến hóa được dùng để mô hình hóa cơ chế tiến hóa giữa các loài.  Giúp giải thích được quan hệ họ hàng, tổ tiên giữa các loài.  Cây tiến hóa thường là cây nhị phân 3
  • 4. 4
  • 5. Cây có gốc ◦ Gốc = Loài tổ tiên xa nhất ◦ Lá = Loài hiện tại ◦ Nút trong = Loài tổ tiên giả thuyết ◦ Đường đi gốc  lá = Đường tiến hoá  Cây không gốc ◦ Không quan tâm đến vị trí của loài tổ tiên chung trong cây 5
  • 6. Cây nhị phân có trọng số Cạnh có trọng số dương (cũng gọi là độ dài)  Trọng số trên cạnh (v, w) thể hiện: Số lượng biến dị từ v đến w Khoảng cách ước lượng về thời gian tiến hoá 6
  • 7. Có nhiều phương pháp xây dựng cây tiến hóa  Một trong các phương pháp xây dựng cây là dựa vào ma trận đặc tính loài. ◦ Đầu vào là một ma trận đặc tính loài m x n. ◦ Đầu ra: cây có số lá tương ứng với n loài hiện có và có đỉnh tương ứng với loài tổ tiên ◦ Mục tiêu: Tìm chuỗi ký tự ở các nút bên trong cây sao cho chuỗi ký tự này giải thích tốt nhất cho n loài quan sát.  Khác biệt được tính bằng khoảng cách Hamming  Giải quyết bằng bài toán Hà tiện 7
  • 8. Bài toán Hà tiện là các bài toán xây dựng cây sao cho tối thiểu hóa điểm hà tiện.  Điểm hà tiện của cây T là tổng độ dài các cạnh của nó.  Bài toán Hà tiện nhỏ  Bài toán Hà tiện lớn 8
  • 9. Mục tiêu: Tìm cách gán nhãn tối thiểu cho các đỉnh trong của một cây tiến hóa.  Đầu vào: Cây T với mỗi lá đã được gán nhãn bởi xâu m ký tự.  Đầu ra: Phép gán nhãn các đỉnh trong của cây T sao cho tối thiểu hóa điểm hà tiện.  Hai phương pháp giải bài toán Hà tiện nhỏ đã giới thiệu là của Fitch và Sankoff đều có thời gian chạy O(nm). 9
  • 10. Khởi tạo: gán st(v) theo luật sau: ◦ st(v) = 0 nếu v được gán nhãn t ◦ st(v) = ∞ nếu ngược lại  Tính st(v) – điểm hà tiện nhỏ nhất của đỉnh v với ký tự t:  Với u,w là đỉnh con của v; 1≤i,j ≤ k là các ký tự.  Sau khi tính được st(v) của các đỉnh, ta thực hiện gán nhãn bằng phương pháp quay lui. 10
  • 11. Phương pháp này gán tập ký tự Sv cho mỗi đỉnh theo cách sau: ◦ Nếu v là lá, Sv chứa 1 ký tự là nhãn của lá đó. ◦ Nếu v là cạnh trong với đỉnh con u,w, Sv được tạo thành như sau:  Sv được gán theo thứ tự duyệt sau từ lá đến gốc. 11
  • 12. Sau khi có các tập Sv ta chọn một ký tự đế gán nhãn cho mỗi đỉnh bằng cách:  Gán ký tự bất kz thuộc Sr cho gốc.  Duyệt cây theo thứ tự trước từ gốc đến lá.  Cho mỗi đỉnh trong v, ◦ gán nhãn giống của cha cho đỉnh đó nếu nhãn của cha thuộc Sv. ◦ Nếu không thì gán nhãn bất kì từ tập Sv. 12
  • 13. VD: Với ma trận k x k (δi,j): δ A T G C A 0 3 4 9 T 3 0 2 4 G 4 2 0 4 C 9 4 4 0 13
  • 14. 14
  • 15. δ A T G C A 0 3 4 9 T 3 0 2 4 G 4 2 0 4 C 9 4 4 0 A ∞ 3 ∞ ∞ A ∞ ∞ ∞ 9 15
  • 16. δ A T G C A 0 3 4 9 T 3 0 2 4 G 4 2 0 4 C 9 4 4 0 C 9 ∞ ∞ ∞ C ∞ ∞ 4 ∞ 16
  • 17. δ A T G C A 0 3 4 9 T 3 0 2 4 G 4 2 0 4 C 9 4 4 0 T 15 4 8 8 T 7 5 6 17 17
  • 18. Điểm hà tiện S(T) = 9 18
  • 19. Bài toán Hà tiện lớn sẽ giải quyết vấn đề xây dựng cấu trúc cây mà bài toán Hà tiện nhỏ chưa giải quyết. 19
  • 20. Đầu vào: Ma trận M(n × m) biểu diễn n loài, mỗi loài bằng một chuỗi m ký tự.  Đầu ra: Một cây T có n lá được gán nhãn bằng n hàng của ma trận M và một cách gán nhãn các đỉnh trong của cây đó sao cho điểm hà tiện là nhỏ nhất. 20
  • 21. Nếu định duyệt qua tất cả các cấu trúc cây, ta cần xem xét số lượng cấu trúc cần duyệt.  Theo Cayley số cây không gốc có gán nhãn khác nhau với n đỉnh: nn-2  Nếu như coi cây tiến hóa là cây nhị phân đầy đủ: (2n-3)!!  Trường hợp coi cây tiến hóa là cây có gốc thông thường với N đỉnh trong đó có n lá: 21
  • 22. Thực tế bài toán Hà tiện lớn là NP-đầy đủ 22
  • 23. Đầu vào: Cho n nút lá, mỗi nút biểu diễn một chuỗi đặc tính hoặc thứ tự DNA. Xây dựng một cây có gốc T bằng cách gán nhãn cho các nút lá của nó các chuỗi đầu vào và gán nhãn cho các đỉnh trong các xâu tương ứng sao cho có cây với điểm hà tiện tối thiểu. Gọi S(T) là điểm hà tiện của cây T.  Đầu ra: Cho một hằng số BϵR+, có cây T nào mà . S(T) = | {j : v j u j} | B? (u,v) E(T) 23
  • 24. Thực hiện với một trường hợp cụ thể của LPP. ◦ Giả sử tổng số đỉnh của cây là đã biết, đặt là N, trong đó số lượng nút lá là n. ◦ Ví dụ với trường hợp cụ thể là cây nhị phân đầy đủ có gốc, N = (2n-1).  Gọi trường hợp cụ thể của LPP là S-LPP 24
  • 25. Chứng minh S-LPP là NP-đầy đủ bằng cách quy dẫn từ bài toán Minimum Energy Broadcast tree (MEB).  MEB đã được chứng minh là NP-đầy đủ qua phép quy dẫn từ bài toán Phủ tập (Set Cover Problem). 25
  • 26. Đầu vào: Xem xét tập đỉnh V gồm N đỉnh s ϵ V: đỉnh nguồn, Tập trọng số các cạnh: Px là năng lượng cần thiết cho một nút x:  Đầu ra: Cho một hằng số BϵR+, có cây có gốc tại S nào mà . 26
  • 27. S PS X1 Px1 27
  • 28. S 28
  • 29. S 29
  • 30. Xem xét bài toán Minimum Energy n-lá-xác-định Broadcast tree (MEnB): o Có 1 đỉnh nguồn đã biết, o n nút lá đã biết trong N-1 đỉnh đích. o Đầu ra cần xác định của bài toán là một cây có gốc là đỉnh nguồn truyền tới N-1 đỉnh trong đó có đúng n nút lá đã được xác định sao cho tối thiểu hóa tổng năng lượng cần dùng. 30
  • 31. MEnB là bài toán thuộc lớp NP do có Bằng chứng ngắn gọn dễ kiểm tra.  Giả sử ta tìm được cây MEnB với năng lượng tối thiểu. ◦ Loại bỏ n nút lá đã định nghĩa cùng các cạnh tương ứng trên cây MEnB.  Một cây có (N-n) đỉnh gọi là rMEnB. Tính được năng lượng cần cho cây này đặt là Wr. 31
  • 32. S 32
  • 34. MEnB đã trở thành bài toán MEB: có thể xây dựng cây MEB cho (N-n) đỉnh với mức năng lượng Wr hay không?  MEnB ít nhất cũng khó như việc tìm cây MEB trong (N- n) đỉnh còn lại trong đó có 1 đỉnh nguồn và (N-n-1) đỉnh đích. Vậy MEnB cũng là NP-đầy đủ. 34
  • 35. S-LPP là bài toán thuộc lớp NP: ◦ Cho một cấu trúc cây nhị phân có gốc có N đỉnh trong đó có n nút lá đã được gán nhãn. ◦ Có thể kiểm tra điểm hà tiện của cây này có nhỏ hơn hằng số B hay không bằng giải thuật của Fitch hoặc Sankoff, chạy trong thời gian đa thức. 35
  • 36. Tồn tại phép quy dẫn độ phức tạp đa thức từ MEnB sang S-LPP: ◦ Với một đầu vào của MEnB, mục tiêu là xây dựng một cây nhị phân có gốc tại đỉnh nguồn tới N-1 đỉnh đích trong đó có đúng n nút lá sao cho năng lượng cần dùng là tối thiểu. ◦ Đầu vào S-LPP tương đương với đầu vào MEnB này có thể được xây dựng như sau: 36
  • 37. Ánh xạ n lá của MEnB sang n lá của S-LPP tương ứng một-một.  Dựa trên liên hệ giữa khoảng cách Euclidean giữa các đỉnh của MEnB và khoảng cách Hamming của các chuỗi đầu đầu vào trong S-LPP.  Phép ánh xạ 2 m R { A, T , G, C}  Trong đó khoảng cách A,T,G,C được xác định theo khoảng cách Hamming 38
  • 38. Phép ánh xạ: ◦ Từ mỗi cấu trúc cây từ đầu vào MEnB, cho một giá trị năng lượng cần dùng duy nhất. Cũng cấu trúc cây đó, từ giải thuật của Fitch hoặc Sankoff, ta có thể tính được duy nhất 1 giá trị điểm hà tiện của cây bằng cách gán lại nhãn cho cách đỉnh trong. ◦ Năng lượng cần cho một đỉnh để có thể truyền tin có thể được ánh xạ sang số đột biến xảy ra trên một đỉnh của S-LPP. ◦ Về cơ bản khi tìm ra cây MEnB thì có thể xác định được là có thể dựng được một cây N đỉnh có chính xác n nút lá được gán nhãn mà điểm hà tiện nhỏ hơn một số B (BϵR+) hay không. 39
  • 39.  Do giải thuật của Fitch hay Sankoff có độ phức tạp O(nm). Do đó, tồn tại phép quy dẫn ra đầu vào cho S-LPP từ đầu vào của MEnB trong thời gian đa thức.  MEnB là NP-đầy đủ  S-LPP là NP-đầy đủ.  S-LPP chỉ là một trường hợp riêng của LPP  LPP cũng là NP-đầy đủ. 41
  • 40. LPP đã được chứng minh là NP-đầy đủ qua phép quy dẫn từ bài toán MEB:  MEnB(MEB)S-LPP(LPP)  Việc mong tìm một giải thuật giải được bài toán Hà tiện lớn một cách vừa nhanh chóng vừa chính xác là vô vọng.
  • 41. 43
  • 42. Xét mảng [i3][i5][i7]...[i2n-5], với mỗi ik nhận giá trị 1...k  Ban đầu cây có 3 chuỗi x1, x2, x3  Thêm chuỗi x4 vào cạnh có chỉ số lưu trong [i3]: có 3+2=5 cạnh  Thêm chuỗi x5 vào cạnh có chỉ số lưu trong [i5]: có 5+2=7 cạnh  ...  Thêm chuỗi xn để được cây hoàn chỉnh. 44
  • 43. Ví dụ: n=5, [i3][i5] = (1, 3) 45
  • 44. Tưởng tượng mảng [i3][i5][i7]...[i2n- 5] là một chiếc công-tơ-mét  Công-tơ-mét chạy cho ta một phép duyệt tất cả cây n lá 46
  • 45. Để duyệt các cây ít hơn n lá, ta cho phép bộ đếm nhận giá trị 0  Ý nghĩa: xâu thứ k không được đưa vào cây  Không có giá trị khác không bên phải 0  Nếu có một dãy số 0 về bên phải, ta tăng cả dãy 47
  • 46. Thêm nút lá mới chỉ làm tăng điểm hà tiện của cây  Nếu cây đang xây dựng có điểm lớn hơn điểm tốt nhất hiện biết  cắt nhánh  Tăng bộ đếm khác không bên phải nhất lên một 48
  • 47. 49
  • 48. Thời gian chạy phụ thuộc vào kích thước dữ liệu 160 140 120 100 80 60 thời gian (s) 40 20 0 4 5 6 7 8 9 10 số chuỗi 50
  • 49.  Số lượng cây không gốc n lá: 3.5.7...(2n-5) = (2n-5)!!  Khối lượng tính toán quá lớn  Áp dụng các chiến lược tìm kiếm cục bộ 51
  • 50. 52
  • 51. Di chuyển trong không gian tất cả các cây bằng các phép biến đổi  Tại mỗi bước cố gắng làm giảm giá trị hàm mục tiêu  Không đảm bảo tìm được giá trị tối ưu toàn cục  Các phép biến đổi khác nhau cho hiệu quả khác nhau 53
  • 52. NNI (Nearest Neighbour Interchange)  D. F. Robinson năm 1969  Đổi chỗ hai cây con ở hai phía của một cạnh trong  Một cây n lá có (2n-6) cách biến đổi 54
  • 53. SPR (Subtree Pruning Regrating)  Cắt một cạnh và ghép vào chỗ khác  Một cây n lá có 2(n-3)(2n-7) cách biến đổi 55
  • 54. TBR (Tree-Bisection-Reconnection)  Cắt đôi thành hai cây con và thêm cạnh nối ở vị trí khác 56
  • 55. NNI ⊆ SPR ⊆ TBR  Phép biến đổi nhỏ: ◦ Dễ bị kẹt ở cực trị cục bộ  Phép biến đổi lớn: ◦ Khối lượng tính toán lớn ◦ Cấu trúc cây thay đổi nhiều nên khó tận dụng thông tin để tính điểm hà tiện 57
  • 56. Parametric Progressive Neighborhood  Adrien Goeffon et al. 2008  Cắt một cạnh và ghép lại ở vị trí cách nó không quá d 58
  • 57. Với d=1, PPN trở thành NNI  Với d=∞, PPN trở thành SPR 59
  • 58. Ban đầu d nhận giá trị lớn, sau giảm dần về 1  Giả sử số bước lặp là M, d giảm tuyến tính d= . 60
  • 59. Nhiều bộ dữ liệu gồm cả ngẫu nhiên và thực tế  Cho phép bước di chuyển không làm thay đổi giá trị hàm mục tiêu  Chọn bước di chuyển đầu tiên cải thiện kết quả  Lời giải đầu được sinh bằng thuật toán ngẫu nhiên (R) hoặc tham lam (G) 61
  • 60. Φ0: điểm của cây ban đầu  Φb : điểm của cây tốt nhất sau khi tìm kiếm kết thúc  f: tần suất của nó  Φa: điểm trung bình của các cây  σ: độ lệch chuẩn của Φa và  time: thời gian trung bình cho các lần lặp (s) 62
  • 61. Bộ dữ liệu ngẫu nhiên nhỏ 63
  • 62. Bộ dữ liệu ngẫu nhiên trung bình 64
  • 63. Bộ dữ liệu ngẫu nhiên trung bình 65
  • 64. TBR không hiệu quả về thời gian  Nói chung SPR tốt hơn NNI  PPN cho kết quả tốt nhất trong hầu hết trường hợp 66
  • 65. Với ngành Sinh học ngày càng phát triển  phát hiện thêm nhiều loài mới, phát hiện thêm nhiều đặc điểm, bằng chứng tiến hóa mới.  Việc xây dựng cây tiến hóa từ các chuỗi đặc tính là quan trọng.  Trên đây ta đã xem xét một phương pháp xây dựng cây tiến hóa là bài toán Hà tiện ở mức cơ bản nhất. 67
  • 66. 68

Notas del editor

  1. Tính WE: với di,j^λ là trọng số trên cạnh <i,j> và di,j là khoảng cách giữa 2 đỉnh i và j, λ là một hằng số có thể nằm trong đoạn [2,4]Tính Px: với Cx là tập nút con của x.
  2. n là số chuỗi đặc tính cần so sánh, m là độ dài chuỗi.