2 điểm bởi GN⁺ 2024-01-11 | 1 bình luận | Chia sẻ qua WhatsApp
  • Khó có thể xem DNA là mã chương trình được thực thi tuần tự, nhưng trong biểu hiện gen và các đường truyền tín hiệu tế bào có những cơ chế điều hòa có thể so sánh với logic kiểu IF/WHILE
  • Chất hoạt hóa phiên mãchất ức chế phiên mã có thể được đối chiếu một cách lỏng lẻo lần lượt với IF và WHILE, ở chỗ chúng bật hoặc ngăn phiên mã gen tùy theo điều kiện
  • Các khối nhập-xuất độc lập như lời gọi hàm khó tồn tại trong tế bào, và các phản ứng diễn ra trong cùng một không gian có thể can thiệp lẫn nhau
  • Có thể tìm thấy các trường hợp giống GOTO trong kết nối mạng có điều kiện, feedforward loop và các đường phân nhánh, nhưng hạn chế lớn là DNA không được thực thi tuần tự
  • Hệ thống sinh học nhìn chung mang tính song song và tương tự, nên dù có các ví dụ về cổng logic trong sinh học tổng hợp, phép ẩn dụ mã máy tính cần được dùng thận trọng

Giới hạn của phép ví von giữa DNA và ngôn ngữ lập trình

  • DNA không được thực thi tuần tự như mã máy tính; nhiều quá trình phiên mã diễn ra song song cùng lúc
  • Một dòng mã máy tính có ý nghĩa nghiêm ngặt và nhất quán, nhưng DNA mã hóa được dịch mã thành axit amin, còn chức năng protein phát sinh từ các tương tác hóa học phức tạp giữa các axit amin
  • Một đoạn DNA mã hóa khó được hiểu độc lập bên ngoài ngữ cảnh protein mà đoạn đó tạo ra
  • Trong hệ thống sinh học cũng có những đường hoạt động giống máy tính, nhưng các so sánh như vậy cần được xử lý thận trọng hơn ở cấp độ protein thay vì cấp độ DNA

Điều hòa gen gần với IF và WHILE

  • Chất hoạt hóa phiên mã có thể được xem là ví dụ tương tự IF, vì khi hiện diện, nó khiến một gen cụ thể được phiên mã
    • Tuy nhiên, sự kiện không kết thúc cho đến khi tín hiệu biến mất, và chương trình tiếp diễn chừng nào tế bào còn sống, nên IF luôn hoạt động như một phần của vòng lặp
  • Chất ức chế phiên mã được so sánh với WHILE, ở chỗ gen được phiên mã trong khi chất ức chế không hiện diện
  • Can thiệp phiên mã cũng có thể được diễn giải dưới dạng gần với IF hoặc WHILE
    • Ví dụ: if(x transcribed){not y transcribed}
    • Sự can thiệp này không nhất thiết là nhị phân; phổ biến hơn, nó xuất hiện dưới dạng đáp ứng theo từng mức
  • Ở cấp RNA cũng xảy ra can thiệp phiên mã dùng antisense RNA, và thường cung cấp vòng phản hồi âm
    • Trong trường hợp này, sự can thiệp không phải là một tương đồng trực tiếp với câu lệnh IF ở cấp DNA

Lời gọi hàm và đường mô-đun

  • Khó tìm thấy một cấu trúc tương ứng chính xác với lời gọi hàm
    • Các sự kiện trong tế bào diễn ra trong cùng một không gian và luôn có khả năng can thiệp lẫn nhau
    • Các bào quan có thể mang tính chất giống hàm như những khoang riêng, nhưng chúng không phải là thiết bị nhập-xuất đơn giản mà là các cấu trúc rất phức tạp
  • Một số đường mô-đun có thể được so sánh lỏng lẻo với lời gọi hàm
    • Ví dụ: trong apoptosis signaling, có thể xử lý một đoạn mà đầu vào cụ thể dẫn tới hiệu ứng gần như ổn định như một khối mã
    • Nếu xem quá trình giữa hoạt hóa caspase và rò rỉ cytochrome là một khối, có thể mô tả nhiều cơ chế ngắn gọn hơn
  • Quá trình đánh dấu protein bằng ubiquitin có thể được diễn giải như lời gọi hàm để phân hủy
  • Thụ thể nhân (nuclear receptor), khi được ligand kích hoạt, di chuyển từ bào tương vào nhân và gây ức chế/kích hoạt gen cùng các quá trình tiếp theo, nên có thể xem là ví dụ về lời gọi hàm
  • Trong các protein phức hợp được lắp ráp từ nhiều tiểu đơn vị, quá trình thay thế một tiểu đơn vị đơn lẻ được so sánh với lời gọi hàm hoặc khái niệm composition

GOTO và đường phân nhánh

  • GOTO chủ yếu có ý nghĩa trong mã thực thi tuần tự, và vì DNA không được thực thi theo cách đó nên khó đối chiếu trực tiếp
  • Trong kết nối mạng có điều kiện, có thể tìm thấy cấu trúc giống GOTO
    • Ví dụ: khi có đường A→B→C và một kết nối riêng D→C, nếu D được kích hoạt thì nó tác động trực tiếp tới C mà không đi qua A và B
  • Feedforward loop và đường phân nhánh có thể trông như bỏ qua các bước trung gian trong điều kiện cụ thể
  • Cũng có cách diễn giải kiểu bình luận rằng có thể xem splicing intron giống GOTO khiến con trỏ của ribosome bỏ qua các giá trị khác, nhưng điểm chính là DNA không có cấu trúc thực thi tuần tự

Splicing và các cấu trúc kiểu lập trình ở cấp thấp hơn

  • Splicing thay thế được so sánh với IF, ở chỗ exon, tức các đoạn DNA cụ thể, có thể được đưa vào hoặc loại khỏi bản phiên mã mã hóa protein cuối cùng
  • Những so sánh ở cấp thấp như vậy cho thấy sự tương đồng giữa khái niệm lập trình và điều hòa sinh học, nhưng khó xem chúng là các tương đương chính xác
  • Để mô tả luồng thông tin trong tế bào, cần xem xét không chỉ DNA mà cả bản phiên mã, protein và mạng điều hòa

Mạch logic trong sinh học tổng hợp

  • Trong sinh học tổng hợp, đã có các ví dụ xây dựng cổng logic bằng mạch sinh học
  • Một bài tổng quan liên quan được giới thiệu là bài tổng quan về mạch sinh học tổng hợp trên Nature Reviews Genetics
  • Siuti et al. 2013 là ví dụ dùng vi khuẩn để lưu trữ thông tin và lắp ráp thành mạch sinh học nhằm xử lý chức năng logic
  • Chương trình biobricks.org được giới thiệu như một nỗ lực định nghĩa các bộ phận mô-đun như cảm biến, hàm logic và effector

Tế bào gần với phản hồi tương tự hơn là mã số

  • Tế bào, giống nhiều hệ vật lý, có tính chất tương tự, và trong hầu hết tình huống, các biến không được chia thành giá trị nhị phân 0/1
  • Trong biểu hiện gen, khi chất hoạt hóa phiên mã hiện diện thì gen được phiên mã, nhưng nếu tăng nồng độ chất hoạt hóa, mức biểu hiện sẽ tăng cho đến khi đạt điểm bão hòa
  • Trong hệ thống sinh học, hành vi chuyển mạch cũng có thể xảy ra
    • Một số cấu trúc mạng điều hòa cụ thể có thể tạo ra động lực học như vậy
    • Tính hợp tác (co-operativity), có hoặc không có phản hồi dương, là một trong các cơ chế triển khai hành vi chuyển mạch
  • Các khái niệm liên quan gồm ultrasensitivitycâu hỏi trên Biology Stack Exchange bàn về “liệu có thể biến biến liên tục thành biến Boolean hay không”

1 bình luận

 
GN⁺ 2024-01-11
Ý kiến trên Hacker News
  • Có thể DNA không có các cấu trúc lập trình, nhưng nó có khía cạnh hoạt động giống mạng nơ-ron. Hãy xem “mạng điều hòa gen (gene regulatory network)”
    Một số protein chỉ có vai trò kích hoạt các gen khác, và các yếu tố phiên mã này là cốt lõi của mạng điều hòa hoặc phản ứng dây chuyền. Chúng gắn vào vùng promoter ở phần đầu của gen khác để bật gen đó lên, rồi tiếp tục khởi động việc sản xuất các protein khác. Một số yếu tố phiên mã cũng đóng vai trò ức chế
    Các mạng này xử lý thông tin thông qua những nút liên kết với nhau là gen và protein, đồng thời thay đổi hoạt tính của nhau, nên khá giống mạng nơ-ron. Khi một yếu tố phiên mã kích hoạt hoặc ức chế một gen, nó có thể tạo ra một chuỗi sự kiện, khá giống cách các nơ-ron kích hoạt lẫn nhau
    https://en.m.wikipedia.org/wiki/Gene_regulatory_network

    • Với tư cách là một nhà sinh học tổng hợp, tôi thấy đây là một câu trả lời hay. Tuy vậy, nếu nhìn vào các chương trình di truyền do con người tạo ra thì sẽ có một góc nhìn đơn giản hóa hơn
      Đã có khá nhiều tiến triển trong việc thiết kế các chương trình khiến tế bào T của người giết có điều kiện các tế bào ung thư mục tiêu tùy theo biểu hiện của các dấu hiệu bề mặt. Điều này tương phản với các tế bào CAR-T hiện có trên thị trường (như Kymriah). Những mạch tế bào T kiểu cổng AND đơn giản hiện đang được thử nghiệm trên người
      Hiện nay đã có nhiều chiến lược để viết các chương trình ra quyết định của tế bào bằng mạch tổng hợp. Chúng ta đang bước vào thời đại viết chương trình DNA rồi đưa vào cơ thể người, và trong lúc lĩnh vực này đang chuyển từ các proof of concept trên vi khuẩn sang thử nghiệm lâm sàng thực sự trên người, tôi tự hỏi phải làm sao để những người bên khoa học máy tính quan tâm hơn đến “sinh học tổng hợp như một hình thức lập trình”
      https://pubmed.ncbi.nlm.nih.gov/33243890/
      https://arsenalbio.com/2023/05/16/arsenalbio-announces-prese...
    • Tôi nghĩ vậy vì DNA là một cấu trúc dữ liệu, chứ không phải lực vật lý
      Những tuyên bố kiểu một trình tự DNA nào đó sẽ đột biến theo con đường abc khi tương tác với điện từ trường có đặc tính xyz, trọng lực, hay lực mạnh/lực yếu, thì nên bị bác bỏ nếu không được hỗ trợ bằng phân tích thống kê có thể tái lập
      Tôi cho rằng sự ám ảnh của ngành IT với các mô hình dữ liệu đã đẩy con người vào thứ giả khoa học phớt lờ entropy và hiệu ứng Lindy. Cấu trúc có thể thay đổi, còn lực vật lý thì không. Cấu trúc dữ liệu không phải là lực vật lý; vì entropy và hiệu ứng Lindy, sinh học giống một mô hình tinh thần rò rỉ đang tự garbage collection hơn
      Đây là suy nghĩ của một kỹ sư điện thấy sự ám ảnh với phát triển phần mềm thật kỳ quặc, đầy những ảo ảnh thống kê và cảm giác thành tựu bị huyễn hoặc
    • Trong giáo trình sinh học hệ thống, các mạng như vậy thường được mô tả là gần với cổng logic hơn là mạng nơ-ron. Dĩ nhiên cũng có những điểm tương đồng
      Mạng điều hòa gen năng động hơn một chút so với trạng thái bật/tắt nghiêm ngặt, nhưng vì có nhiều kiểu tương tác như enhancer và suppressor nên có vẻ mô hình hóa bằng cổng logic tốt hơn so với mạng nơ-ron thông thường
    • Nghe giống một kiến trúc hướng sự kiện. Nó phát ra sự kiện để phản ứng với các sự kiện khác, và phía phát sự kiện cũng được “điều tiết” bởi các sự kiện khác
    • Trước khi nhảy đến những kết luận quá sâu, có lẽ đây đơn giản là hệ quả của việc mạng nơ-ron là một thứ rất tổng quát
      Ở đây tổng quát nghĩa là nó có thể xấp xỉ hoặc mô hình hóa nhiều hệ động lực có thể tổng hợp theo toán tử
  • Tôi đang dạy môn sáng tạo và đổi mới ở đại học. Tôi cho sinh viên xem nhiều ví dụ về các phát minh bắt đầu từ việc quan sát tự nhiên, chẳng hạn Velcro ra đời khi nhà phát minh thấy quả ké dính vào lông chó của mình
    Tôi có trực giác rằng khi quan sát tự nhiên, đặc biệt là cách tâm trí con người hoạt động, vẫn còn những khám phá về điện toán đang chờ phía trước. Tôi hình dung kết quả đó sẽ mang tính nền tảng đến mức thay đổi cả cách chúng ta hiểu về điện toán

    • Cách chúng ta hiểu tính toán ngày nay cũng phần lớn dựa trên quan sát tự nhiên. Nó là hệ quả tự nhiên của việc nghiên cứu logic, mà hành trình ấy có thể truy ngược đến thời cổ đại khi ngụy biện dần được thể chế hóa. Khi đó gần như không có phương pháp có hệ thống để xác định điều gì là đúng, và tiêu chí lớn lại là thứ gì nghe có vẻ hợp lý
    • Có hẳn cả một lĩnh vực tối ưu hóa lấy cảm hứng từ tự nhiên
      https://arxiv.org/pdf/1307.4186.pdf
    • Tôi nghĩ đến mạng nơ-ron tích chập
    • Tôi hay giới thiệu cuốn sách này, 'Cats’ Paws and Catapults: Mechanical Worlds of Nature and People' (https://www.goodreads.com/book/show/223609.Cats_Paws_and_Cat...), vì nó cho thấy rõ sinh học truyền cảm hứng cho thiết kế của con người như thế nào
      Một ý quan trọng là trong nhiều trường hợp, đó không phải bản sao trực tiếp của thiết kế mà gần với nguồn cảm hứng hơn. Sinh học vận hành dưới những ràng buộc rất khác so với máy móc của con người, nên nếu kỹ sư hay nhà thiết kế cố bám quá sát vào nguyên mẫu sinh học thì thường sẽ không hiệu quả
  • Tôi luôn nghĩ về DNA như một quá trình lập trình kéo dài hàng triệu năm. Nó là một chuỗi những mẩu mã chắp vá chỉ vừa đủ chạy, nối tiếp nhau mà không có chú thích hay tài liệu
    Vì sao một đoạn mã nào đó lại có hình dạng như vậy thì đã hoàn toàn biến mất theo thời gian. Điều chúng ta biết chỉ là sửa vào thường sẽ tệ đi, một số khối mã nhất định dẫn đến một số hành vi nhất định, và càng nhìn kỹ thì nó càng giống mã spaghetti

  • Gen KMT2D là một ví dụ về gen điều hòa biểu hiện của các gen khác. Nếu gen này bị khiếm khuyết thì thường dẫn đến hội chứng Kabuki
    Nếu tôi nhớ không nhầm thì trong bài nói chuyện của Bert Hubert, 'DNA: The Code of Life (SHA2017)', có minh họa một ví dụ về hành vi kiểu IF
    https://en.wikipedia.org/wiki/KMT2D
    https://en.wikipedia.org/wiki/Kabuki_syndrome
    https://www.youtube.com/watch?v=EcGM_cNzQmE

  • Liên quan đến câu trả lời đầu tiên, Tim Blais trên YouTube đã làm một bài hát giáo dục giải trí rất cuốn về máy móc phân tử, dựa trên nghiên cứu của A. Leigh
    Phần hoạt họa cũng rất hay, và cho thấy các “công tắc” điện hóa có thể mã hóa trạng thái nhị phân như thế nào. Về nguyên lý, có thể dùng chúng để tạo ra các cổng logic
    https://www.youtube.com/watch?v=ObvxPSQNMGc
    https://pubs.acs.org/doi/10.1021/acs.chemrev.5b00146

    • Có một bài báo năm 2021 tạo ra protein cổng logic OR
      https://www.nature.com/articles/s41467-021-26937-x
      Một số công ty đang cố gắng dùng cách này cho thiết kế thuốc. Ví dụ như “chỉ kích hoạt thứ này khi cả hai kháng thể đều đã gắn kết”
  • Đây là một câu hỏi thú vị. Việc mã hóa và biểu hiện di truyền về bản chất là ngẫu nhiên. Chính vì vậy tiến hóa mới có thể xảy ra
    Ngược lại, nếu các phép toán cơ bản của CPU có tỷ lệ lỗi ở mức tương tự thì sẽ rất tệ. Tôi thấy bình luận ở trên về việc tạo cổng logic bằng mạch sinh học rất thú vị, và ngược lại cũng tò mò không biết đã có ai tạo ra ngôn ngữ lập trình xác suất để thực hiện tính toán với mức nhiễu tương đương tế bào hay chưa

    • Sở dĩ có tính xác suất là vì “tính toán” sinh học dựa trên phản ứng điện hóa và các vòng phản hồi, điều này không thật sự khớp với khái niệm “thực thi mã” trong ngôn ngữ lập trình
      Một phép so sánh gần hơn có thể là ngôn ngữ mô tả phần cứng dùng để tổng hợp mạch analog phục vụ tính toán. Những mạch như vậy giống máy tính analog bị ảnh hưởng bởi nhiễu bức xạ điện từ từ môi trường
      Theo nghĩa đó, điều này đã tồn tại ở dạng rất sơ khai từ thời kỳ tính toán trước kỹ thuật số
    • Nếu so với tỷ lệ lỗi của phép toán cơ bản trên CPU, thì tiến hóa liên quan đến đột biến khi tệp thực thi được sao chép
    • Nếu nghĩ đến việc tiến hóa chậm đến mức nào, và DNA được sao chép hay phiên mã bao nhiêu lần trong một cá thể, thì tỷ lệ lỗi của quá trình di truyền trên thực tế có lẽ cực kỳ thấp
  • Nếu môi trường bên ngoài tế bào có lactose và không có glucose, thì operon lac sẽ được kích hoạt và phiên mã các gen hấp thu, chuyển hóa lactose để đi vào một vòng lặp while
    Chừng nào còn có lactose, các gen đó sẽ tiếp tục được phiên mã
    Nhưng đây không phải việc DNA tự làm một mình, mà diễn ra như một thành phần của hệ thống tế bào. Trong trường hợp này, E. coli luôn tạo ra một lượng tối thiểu chất vận chuyển lactose và các loại đường khác, và chúng hoạt động như cảm biến trên màng tế bào để kích hoạt vòng phản hồi. Nếu không thì tế bào làm sao biết lactose hiện diện
    Nếu có glucose, E. coli sẽ ưu tiên dùng nó và điều hòa giảm các gen hấp thu/chuyển hóa đường khác. Tất cả điều này mang tính analog nhiều hơn là kỹ thuật số, nên ngay cả gen “tắt” vẫn có thể được phiên mã ở mức rất thấp
    DNA gần với RAM hơn, còn CPU có thể giống với hệ phiên mã (DNA → mRNA) và ribosome (mRNA → protein) hơn. Nhìn tổng thể, tế bào giống như đang chạy một chu kỳ nạp-giải mã-thực thi đa tiến trình song song

  • Tôi luôn tò mò về DNA từ góc độ ngôn ngữ lập trình, nhưng từ lâu vẫn nghĩ nó giống cấu trúc dữ liệu hơn là một ngôn ngữ

    • Tôi vẫn luôn nghĩ Lisp là phép gần đúng với DNA nhất
  • Tôi từng sa vào sinh học tổng hợp một thời gian ngắn và đã đọc cuốn giáo trình nhập môn này: https://www.amazon.ca/Introduction-Systems-Biology-Principle...
    Nếu bạn đã học các môn kiểu “kỹ thuật hệ thống” hay “hệ thống điều khiển”, nơi bạn học về bộ dao động và các hệ điều khiển cấp cao trong nhiều ngành kỹ thuật, thì cuốn sách này là một phần nhập môn tốt để hiểu những hệ thống đó được “triển khai” và vận hành ra sao bên trong tế bào. Nó không giống các vòng lặp “IF” và “WHILE” cho bằng “mạch logic kiểu thuật toán tìm đường của E. coli được triển khai trong RNA như thế nào”

  • Nếu bạn quan tâm đến sinh học tính toán, các bài giảng của George Church là rất tuyệt
    Theo phần mô tả khóa học, khóa này đề cập đến những tiến bộ trong việc mô hình hóa thực tế các mối quan hệ giữa trình tự, cấu trúc và chức năng trong các mạng sinh học phức tạp, cùng với phân tích hệ gen chức năng định lượng và toàn diện. Bài tập bao gồm các cách tiếp cận bằng thuật toán, thống kê, cơ sở dữ liệu, mô phỏng và các ứng dụng trong y học, công nghệ sinh học, phát triển thuốc và kỹ thuật di truyền
    https://ocw.mit.edu/courses/hst-508-genomics-and-computation...