0

Automated Reasoning: Trường Phái AI Từng Thống Trị Trước Khi Machine Learning Xuất Hiện

Automated Reasoning là một nhánh khác của AI và ngày càng đóng vai trò quan trọng trong AI hiện đại. Đây là một chủ đề có nhiều phần khá trừu tượng mà trước giờ mình không hiểu được. Với nền tảng toán học đủ dùng thêm sự giúp đỡ của 3 ông lớn ChatGPT, Gemini, Claude và các nguồn tài liệu đang có (mình sẽ giới thiệu ở cuối bài) lần này mình quyết tâm phải hiểu bằng được bản chất của Automated Reasoning (ít nhất về mặt lý thuyết) và các vấn đề liên quan. Chính vì vậy mình sẽ tổng hợp lại thành 1 series bài viết về Automated Reasoning dễ hiểu nhất có thể và gồm nhiều nội dung như:

  • Automated Reasoning là gì?
  • Nó khác Machine Learning như thế nào?
  • Nó khác Generative AI và LLM như thế nào?
  • Automated Reasoning đang đóng vai trò gì trong AI hiện đại?
  • Logic của AI
  • AI phải biểu diễn tri thức của thế giới như thế nào trước khi có thể suy luận.
  • AI suy luận như thế nào? (Knowledge Representation, Logical Inference, Search, Planning, Constraint Satisfaction, Automated Planning, Decision Making)
  • Automated Theorem Proving
  • Constraint Solving
  • SAT Solver và SMT Solver
  • Formal Verification (Intel kiểm tra CPU như thế nào? NASA kiểm tra phần mềm của tàu vũ trụ ra sao?)
  • Automated Reasoning trong AI hiện đại (Liệu chỉ có LLM đã đủ để tạo ra AGI (Trí tuệ nhân tạo tổng quát) chưa? Tại sao AI Agent cần Planning? Tại sao Reasoning Models lại xuất hiện? LLM có thể chứng minh một định lý toán học hay không?)

Các bài viết mình tổng hợp ở đây sẽ không nặng về mặt kỹ thuật chi tiết hay công thức toán học mà chủ yếu đi sâu vào việc hiểu bản chất của vấn đề.

Bài viết đầu tiên trong series này sẽ là hiểu bức tranh toàn cảnh về Automated Reasoning.


Khi nhắc đến AI ngày nay, phần lớn chúng ta sẽ nghĩ ngay đến ChatGPT, Deep Learning hay Machine Learning. Nhưng có một sự thật khá thú vị là AI không bắt đầu từ việc học trên hàng tỷ tham số. Trước cả Machine Learning, các nhà khoa học đã theo đuổi một giấc mơ khác: xây dựng những cỗ máy có khả năng suy luận như con người.

Thay vì "học từ dữ liệu", họ muốn máy tính có thể chứng minh một định lý toán học, giải một bài toán logic hay tự suy diễn để đưa ra kết luận chính xác. Lĩnh vực nghiên cứu đó được gọi là Automated Reasoning (Suy luận tự động).

Nếu Machine Learning trả lời câu hỏi "Làm thế nào để máy tính học được từ dữ liệu?", thì Automated Reasoning lại đặt ra một câu hỏi hoàn toàn khác: "Làm thế nào để máy tính có thể suy nghĩ một cách logic?". Đây chính là hai triết lý rất khác nhau trong lịch sử phát triển của AI.

Trong bài viết này, chúng ta sẽ cùng tìm hiểu Automated Reasoning là gì, nó hoạt động như thế nào và vì sao nó khác biệt với Machine Learning – công nghệ đang thống trị thế giới AI hiện nay.

1. AI suy nghĩ như thế nào?

Câu trả lời trung thực nhất là: “còn tùy bạn định nghĩa AI theo cách tiếp cận nào” — vì suốt lịch sử ngành, giới nghiên cứu chưa bao giờ thống nhất một câu trả lời duy nhất. Có hai trục phân loại độc lập để định nghĩa trí tuệ nhân tạo:

  • Trục thứ nhất: đối tượng nghiên cứu là quá trình suy nghĩ bên trong (thought) hay hành vi biểu hiện ra bên ngoài (behavior)?
  • Trục thứ hai: chuẩn mực đánh giá là giống con người (human) hay hợp lý một cách trừu tượng, hình thức (rational)?

Giao của hai trục này tạo ra bốn trường phái nghiên cứu AI, mỗi trường phái tương ứng với một cách “suy nghĩ” khác nhau của máy.

Suy nghĩ như người (Thinking Humanly)

Cách tiếp cận này cố gắng trả lời câu hỏi: "Con người suy nghĩ như thế nào?". Các nhà khoa học sẽ nghiên cứu cách bộ não con người giải quyết vấn đề thông qua tâm lý học, quan sát hành vi, hoặc các kỹ thuật chụp ảnh não bộ.

Mục tiêu của họ không chỉ là tạo ra một chương trình cho ra đáp án đúng, mà còn là tạo ra một chương trình suy nghĩ theo các bước giống như con người.

Ví dụ, khi giải phép tính 12 × 15, một chiếc máy tính có thể đưa ra đáp án 180 ngay lập tức. Nhưng con người thường phải suy nghĩ từng bước (12 × 10 = 120, 12 × 5 = 60, rồi cộng lại thành 180). Cách tiếp cận Thinking Humanly quan tâm đến việc chương trình có đi qua các bước suy luận giống con người hay không, chứ không chỉ quan tâm đến kết quả cuối cùng.

Đây chính là nền tảng của lĩnh vực Khoa học Nhận thức (Cognitive Science), ngành nghiên cứu cách con người suy nghĩ, học tập và đưa ra quyết định.

Suy nghĩ hợp lý (Thinking Rationally)

Cách tiếp cận này cố gắng trả lời câu hỏi: "Làm thế nào để suy luận một cách đúng đắn và logic?".

Ý tưởng bắt nguồn từ nhà triết học Aristotle cách đây hơn 2.000 năm. Ông đưa ra một kiểu suy luận nổi tiếng:

  • Socrates là một con người.
  • Mọi con người đều phải chết.
  • Vậy Socrates chắc chắn phải chết.

Nếu các thông tin ban đầu (gọi là tiền đề) đều đúng và chúng ta suy luận đúng quy tắc, thì kết luận cuối cùng cũng sẽ đúng.

Từ ý tưởng đó, các nhà toán học và logic học đã xây dựng nên những quy tắc suy luận rất chặt chẽ và biểu diễn chúng bằng các ký hiệu toán học. Điều này cho phép máy tính có thể tự động thực hiện việc suy luận thay con người.

Điểm quan trọng của cách tiếp cận này là máy tính không cần suy nghĩ giống con người, mà chỉ cần suy luận đúng theo các quy tắc logic.

Chính từ hướng nghiên cứu này mà lĩnh vực Automated Reasoning đã ra đời. Mục tiêu của Automated Reasoning là giúp máy tính có thể tự chứng minh một mệnh đề đúng hay sai, kiểm tra tính chính xác của chương trình, hoặc tự động tìm ra lời giải cho các bài toán logic phức tạp.

Hành động như người (Acting Humanly)

Phép thử Turing (Turing test): Alan Turing (1950) đề xuất bỏ qua câu hỏi triết học “máy có biết suy nghĩ không”, thay vào đó chỉ kiểm tra xem người chấm có phân biệt được câu trả lời của máy với của người hay không. Để vượt qua phép thử này, máy cần có đủ bốn năng lực lõi:

  • Xử lý ngôn ngữ tự nhiên (Natural Language Processing) để giao tiếp
  • Biểu diễn tri thức (Knowledge Representation) để lưu những gì đã biết
  • Automated Reasoning để trả lời câu hỏi và rút ra kết luận mới
  • Machine learning để thích nghi với hoàn cảnh mới.

Nếu mở rộng thành “Total Turing test” (có thêm tương tác vật lý với thế giới), cần thêm thị giác máy tính (Computer Vision) và Robotics.

Hành động hợp lý (Acting Rationally)

Cách tiếp cận này tập trung trả lời câu hỏi: "AI nên hành động như thế nào để đạt được kết quả tốt nhất?" và xem AI như một Agent (tác nhân) có khả năng quan sát môi trường, phân tích thông tin và lựa chọn hành động phù hợp để đạt được mục tiêu của mình. Khi không có đầy đủ thông tin, AI sẽ cố gắng chọn phương án có khả năng mang lại kết quả tốt nhất.

Trong AI, một Agent (tác nhân) là một hệ thống có khả năng:

  1. Thu nhận thông tin từ môi trường xung quanh (gọi là Percept).
  2. Phân tích những thông tin đó.
  3. Quyết định nên làm gì tiếp theo.
  4. Thực hiện hành động để đạt được mục tiêu đã đặt ra.

Ví dụ, một robot hút bụi sẽ:

  • Nhận biết phía trước có vật cản hay không (Percept).
  • Phân tích xem nên rẽ trái, rẽ phải hay đi thẳng.
  • Chọn hành động phù hợp để làm sạch căn phòng nhanh và hiệu quả nhất.

Mục tiêu của AI trong cách tiếp cận này không phải là suy nghĩ giống con người hay chỉ đơn thuần suy luận đúng về mặt logic, mà là đưa ra hành động tốt nhất dựa trên những thông tin mà nó đang có.

Trong thực tế, AI thường không có đầy đủ thông tin về môi trường. Vì vậy, nó phải đưa ra quyết định trong điều kiện không chắc chắn (uncertainty). Khi đó, AI sẽ cố gắng chọn hành động có khả năng mang lại kết quả tốt nhất hoặc kỳ vọng mang lại kết quả tốt nhất.

Ví dụ, một chiếc xe tự lái không thể biết chắc chắn người đi bộ phía trước có băng qua đường hay không. Dựa vào dữ liệu từ camera và cảm biến, nó sẽ quyết định giảm tốc độ hoặc phanh để đảm bảo mức độ an toàn cao nhất.

“Suy nghĩ” bên trong một tác nhân dựa trên tri thức

Một tác nhân AI thực sự “suy nghĩ” như thế nào? Hãy tưởng tượng một tác nhân AI đang điều khiển một chiếc robot giao hàng trong một tòa nhà. Nó vừa quan sát thấy cửa phía trước đang đóng, pin của mình chỉ còn 20% và điểm giao hàng vẫn còn cách vài tầng lầu. Lúc này, tác nhân phải trả lời hàng loạt câu hỏi: nên tiếp tục đi giao hàng, tìm đường khác hay quay về trạm sạc? Đây chính là lúc khả năng suy luận phát huy tác dụng.

Để làm được điều đó, tác nhân sẽ duy trì một cơ sở tri thức (Knowledge Base - KB), có thể hiểu đơn giản là “bộ nhớ làm việc” lưu giữ tất cả những gì nó biết về thế giới xung quanh. Mỗi khi quan sát được một thông tin mới, tác nhân sẽ cập nhật thông tin đó vào KB. Sau đó, nó sẽ sử dụng những gì mình đã biết để tự đặt câu hỏi: “Tôi nên làm gì tiếp theo?”. Cuối cùng, sau khi đã đưa ra quyết định và thực hiện hành động, tác nhân lại tiếp tục cập nhật KB để ghi nhận những gì vừa xảy ra.

Các giáo trình AI thường mô tả quá trình này bằng hai thao tác rất đơn giản là TELL và ASK. Có thể hiểu chúng như sau:

  • TELL: “Hãy cho tôi biết điều gì vừa xảy ra.” Ví dụ: cửa đang đóng, pin chỉ còn 20% hoặc robot vừa hoàn thành việc giao hàng.
  • ASK: “Với những gì tôi đã biết, tôi nên làm gì tiếp theo?” Ví dụ: nên tiếp tục di chuyển, tìm đường khác hay quay về trạm sạc?

Điểm thú vị nhất nằm ở bước ASK. Đây chính là lúc bộ máy suy luận (inference engine) bắt đầu làm việc. Nó sẽ sử dụng tất cả những thông tin đang có trong KB để tìm ra hành động phù hợp nhất dựa trên các quy tắc suy luận đã được định nghĩa từ trước. Nói một cách đơn giản, nếu TELL giúp tác nhân “ghi nhớ những gì mình biết”, thì ASK giúp nó “suy nghĩ xem nên làm gì tiếp theo”.

Có thể hình dung toàn bộ quá trình như một cuộc đối thoại diễn ra liên tục bên trong tác nhân AI:

  • Tôi vừa quan sát được điều gì? → TELL
  • Tôi hiện đang biết những gì? → Knowledge Base
  • Với những gì mình biết, tôi nên làm gì tiếp theo? → ASK
  • Tôi đã thực hiện hành động gì? → TELL
  • Quá trình lại tiếp tục lặp lại.

Chính vòng lặp đơn giản này đã giúp một tác nhân dựa trên tri thức không chỉ phản ứng với môi trường, mà còn có khả năng “suy nghĩ trước khi hành động”. Thay vì phải được lập trình sẵn cho mọi tình huống có thể xảy ra, tác nhân có thể sử dụng những gì mình biết để tự đưa ra quyết định trong cả những hoàn cảnh mà người thiết kế chưa từng lường trước.

Một điểm rất đáng chú ý: automated reasoning xuất hiện ở cả ô “suy nghĩ hợp lý” (là gốc rễ lý thuyết) lẫn ô “hành động như người” (là một thành phần kỹ thuật bắt buộc) trong sơ đồ trên. Điều đó cho thấy đây là một trong những viên gạch nền tảng và xuyên suốt nhất của toàn ngành AI, chứ không phải một nhánh phụ có thể bỏ qua.

2. Automated Reasoning là gì?

Trước khi tìm hiểu automated reasoning, chúng ta cần hiểu “suy luận” (reasoning) là gì. Một cách đơn giản, suy luận là quá trình đi từ những điều đã biết để rút ra một kết luận mới. Ví dụ, nếu chúng ta biết rằng “mọi con người đều phải chết” và “Socrates là một con người”, thì chúng ta có thể kết luận rằng “Socrates phải chết”. Điều quan trọng ở đây là nếu những thông tin ban đầu là đúng, thì kết luận được suy ra cũng bắt buộc phải đúng. Nói cách khác, automated reasoning không quan tâm đến việc một kết luận “có vẻ hợp lý” hay “có khả năng cao là đúng”, mà quan tâm đến việc liệu kết luận đó có thực sự được suy ra một cách logic từ những gì đã biết hay không.

Từ đó, có thể hiểu automated reasoning là việc xây dựng các chương trình máy tính có khả năng suy luận theo những quy tắc logic đã được định nghĩa từ trước để hỗ trợ giải bài toán và trả lời câu hỏi. Các chương trình này có thể hoạt động theo hai cách: hoặc người dùng tương tác với hệ thống từng bước để quan sát kết quả và quyết định nên làm gì tiếp theo, hoặc giao toàn bộ bài toán cho máy tính và chỉ nhận lại kết quả cuối cùng sau khi quá trình suy luận hoàn tất.

Có thể hình dung một chương trình automated reasoning hoạt động theo bốn bước rất đơn giản:

  • Bước 1: Cung cấp những gì máy tính đã biết. Người dùng mô tả bài toán bằng những sự kiện và quy tắc rõ ràng, chính xác và không mơ hồ. Khác với con người có thể hiểu được ngôn ngữ tự nhiên trong nhiều trường hợp, máy tính cần những thông tin được biểu diễn theo một cách chặt chẽ hơn để có thể suy luận chính xác.
  • Bước 2: Suy ra những thông tin mới. Từ những gì đã biết, chương trình sẽ áp dụng các quy tắc suy luận để tạo ra những kết luận mới. Chẳng hạn, nếu biết “mọi sinh viên đều có mã số sinh viên” và “An là sinh viên”, hệ thống có thể suy ra rằng “An có mã số sinh viên”.
  • Bước 3: Lựa chọn hướng suy luận phù hợp. Trong nhiều bài toán phức tạp, số lượng kết luận có thể được tạo ra là vô cùng lớn. Vì vậy, chương trình cần biết nên tập trung vào hướng suy luận nào, loại bỏ những khả năng không có ích và tránh lặp lại những gì mình đã biết. Có thể hình dung đây giống như việc giải một mê cung: thay vì thử mọi con đường có thể đi, hệ thống sẽ cố gắng tìm ra những hướng đi có nhiều triển vọng nhất.
  • Bước 4: Dừng lại khi tìm được lời giải. Quá trình trên sẽ liên tục được lặp lại cho đến khi tìm được câu trả lời cần thiết hoặc khi hệ thống không còn đủ thời gian và tài nguyên để tiếp tục suy luận.

Nhìn ở một góc độ khác, automated reasoning có thể được xem như một “nhà toán học rất nguyên tắc”: nó không quan tâm một kết luận nghe có vẻ thuyết phục đến mức nào, mà chỉ chấp nhận những gì có thể được chứng minh một cách logic từ những thông tin đã biết. Đây cũng chính là điểm khác biệt quan trọng giữa automated reasoning và nhiều hệ thống AI hiện đại dựa trên xác suất như các mô hình ngôn ngữ lớn (LLM).

Làm thế nào để biết một kết luận có thực sự được suy ra từ những gì đã biết?

Đây là câu hỏi trung tâm của automated reasoning. Giả sử chúng ta biết rằng “mọi con người đều phải chết” và “Socrates là một con người”, vậy liệu chúng ta có được phép kết luận rằng “Socrates phải chết” hay không? Với automated reasoning, câu trả lời không dựa trên cảm giác “nghe có vẻ đúng”, mà phải dựa trên một mối quan hệ logic rất chặt chẽ: nếu những thông tin ban đầu là đúng thì kết luận được suy ra cũng bắt buộc phải đúng.

Các nhà khoa học gọi mối quan hệ này là entailment (kéo theo logic). Có thể hiểu một cách đơn giản rằng: nếu những gì chúng ta đã biết luôn dẫn đến một kết luận nào đó, thì kết luận đó được xem là đã được “kéo theo” từ các thông tin ban đầu. Nhiệm vụ của automated reasoning chính là đi tìm những kết luận như vậy.

Có thể hình dung quá trình này giống như việc tìm một cây kim trong đống rơm. Tất cả những kết luận có thể được suy ra từ cơ sở tri thức (Knowledge Base) chính là đống rơm khổng lồ đó, còn câu trả lời mà chúng ta đang tìm kiếm chính là cây kim. Câu hỏi “kết luận này có thực sự được suy ra từ những gì đã biết hay không?” tương ứng với việc hỏi “cây kim có thực sự nằm trong đống rơm hay không?”, còn công việc của thuật toán suy luận chính là đi tìm cây kim đó một cách hiệu quả nhất.

Để đánh giá một hệ thống automated reasoning có hoạt động tốt hay không, người ta đặc biệt quan tâm đến hai tiêu chí quan trọng. Thứ nhất là tính đúng đắn (soundness), nghĩa là hệ thống chỉ được phép đưa ra những kết luận thực sự có căn cứ về mặt logic. Nói một cách đơn giản, nó không bao giờ được “bịa ra” những điều không thể suy ra từ các thông tin đã biết. Thứ hai là tính đầy đủ (completeness), nghĩa là nếu một kết luận thực sự có thể được suy ra thì hệ thống phải có khả năng tìm ra được kết luận đó, thay vì bỏ sót nó.

Nếu ví automated reasoning như một nhà toán học rất nguyên tắc, thì soundness chính là nguyên tắc “không bao giờ nói sai”, còn completeness lại là nguyên tắc “không bỏ sót điều gì đúng mà mình có thể chứng minh được”. Đây cũng chính là hai tiêu chuẩn quan trọng nhất dùng để đánh giá các hệ thống automated reasoning và là điểm khác biệt cơ bản giữa chúng với những hệ thống AI dựa trên xác suất. Một mô hình AI có thể đưa ra câu trả lời nghe rất hợp lý và có xác suất đúng rất cao, nhưng automated reasoning chỉ chấp nhận những kết luận thực sự được suy ra một cách logic từ những gì đã biết.

Hợp giải (Resolution) — thuật toán kinh điển

Đây là một trong những ý tưởng đẹp nhất của Automated Reasoning: Muốn chứng minh một mệnh đề là đúng, hãy giả sử rằng nó sai và xem điều gì xảy ra. Nếu giả sử đó dẫn đến mâu thuẫn thì mệnh đề ban đầu phải đúng.

Đây được gọi là Proof by Contradiction (chứng minh phản chứng) kết hợp với thuật toán Resolution (phép hợp giải).

Ý tưởng cốt lõi

Ta muốn chứng minh KB ⊨ α (tức là từ cơ sở trí thức KB, ta có thể suy ra kết luận α là đúng) Các bước máy tính thực hiện:

  • Phủ định điều cần chứng minh (¬α): Giả sử kết luận α là SAI
  • Gộp chung vào CSDL ("KB"∧¬α): Ném giả thuyết sai đó vào chung tập hợp các sự thật sẵn có.
  • Liên tục "hợp giải" (Resolution): Máy tính ghép từng cặp câu có điểm triệt hạ nhau để rút gọn (ví dụ: ghép câu "A đúng" với câu "A sai hoặc B đúng" → suy ra "B đúng").
  • Tìm mâu thuẫn (Unsatisfiable): Máy tính làm liên tục cho đến khi suy ra một điều hoàn toàn vô lý (mâu thuẫn tường minh, hay gọi là "mệnh đề rỗng" □). Lúc này, máy tính kết luận: Giả thuyết ban đầu sai → α bắt buộc phải ĐÚNG.

Ví dụ đơn giản:

Giả sử CSDL (KB) của bạn có 2 điều:

  • Nếu là chó thì là động vật ("Chó"→"Động vật" )
  • LuLu là một con chó (Chó(LuLu))

Bạn muốn máy tính chứng minh (α): "LuLu là động vật".

Bước 1 (Phủ định α): Giả sử "LuLu KHÔNG PHẢI là động vật".

Bước 2 (Gộp vào KB): Bạn có tập thông tin: [Chó thì là động vật, LuLu là chó, LuLu không phải động vật].

Bước 3 (Hợp giải & tìm mâu thuẫn):

  • LuLu là chó + Chó là động vật → LuLu là động vật.
  • Nhưng ở Bước 1 ta lại bảo LuLu KHÔNG PHẢI động vật.
  • Hai điều này mâu thuẫn triệt hạ lẫn nhau (Unsatisfiable).

Kết luận: Giả thuyết ở Bước 1 vô lý → LuLu đúng là động vật!

3. Automated Reasoning khác Machine Learning như thế nào?

Có một sự nhầm lẫn rất phổ biến hiện nay: nhiều người cho rằng AI (Artificial Intelligence) và Machine Learning là một. Thực tế, điều này không đúng. Machine Learning chỉ là một nhánh nhỏ của AI. Ngoài Machine Learning, AI còn có nhiều hướng tiếp cận khác, trong đó có Automated Reasoning.

Có thể hình dung mối quan hệ của chúng như sau:

  • AI là một "ngôi nhà lớn".
  • Machine Learning là một căn phòng trong ngôi nhà đó.
  • Automated Reasoning là một căn phòng khác.

Nói cách khác, để xây dựng một hệ thống AI, chúng ta có thể sử dụng Machine Learning, Automated Reasoning hoặc kết hợp cả hai.

Sự khác biệt lớn nhất giữa Machine Learning và Automated Reasoning nằm ở câu hỏi sau: "Tri thức của AI đến từ đâu và AI đưa ra kết luận bằng cách nào?"

Machine Learning: Học từ dữ liệu

Machine Learning hoạt động giống như con người học hỏi từ kinh nghiệm. Ví dụ, nếu chúng ta cho AI xem: 1 triệu bức ảnh mèo và 1 triệu bức ảnh chó thì sau khi học từ rất nhiều ví dụ, AI sẽ tự tìm ra những đặc điểm chung của mèo và chó. Khi gặp một bức ảnh mới, nó sẽ dự đoán đó là mèo hay chó.

Điều quan trọng là: Machine Learning không "biết chắc" đáp án đúng, mà chỉ đưa ra đáp án có xác suất đúng cao nhất. Ví dụ: Đây là mèo → 99% chắc chắn, đây là chim → 78% chắc chắn.

Nói cách khác, Machine Learning hoạt động theo cách: Từ rất nhiều ví dụ cụ thể → tìm ra quy luật chung → đưa ra dự đoán cho dữ liệu mới. Đây được gọi là suy luận quy nạp (Induction).

Có ba dạng học trong Machine Learning

  • Học có giám sát (supervised learning): học ánh xạ từ input sang output dựa trên các cặp ví dụ đã có nhãn.
  • Học không giám sát (unsupervised learning): tự tìm cấu trúc/mẫu ẩn trong dữ liệu không có nhãn.
  • Học tăng cường (reinforcement learning): học từ tín hiệu thưởng/phạt qua quá trình tương tác với môi trường.

Cả ba dạng đều xoay quanh việc trích xuất một mô hình thống kê từ dữ liệu — khác hẳn cách automated reasoning “suy” thẳng từ luật đã biết mà không cần dữ liệu huấn luyện.

Automated Reasoning: Suy luận từ các quy tắc logic

Ngược lại, Automated Reasoning không học từ dữ liệu mà bắt đầu từ những tri thức đã biết trước, chẳng hạn như:

  • Mọi số chẵn đều chia hết cho 2.
  • 10 là số chẵn.

Từ hai thông tin trên, máy tính có thể suy luận rằng: 10 chắc chắn chia hết cho 2.

Nếu các thông tin ban đầu đều đúng và các quy tắc suy luận được áp dụng chính xác thì: Kết luận cuối cùng chắc chắn đúng.

Automated Reasoning hoạt động theo cách: Bắt đầu từ các sự thật và quy tắc logic → suy luận từng bước → đi đến kết luận chắc chắn đúng. Đây được gọi là suy luận diễn dịch (Deduction).

Một ví dụ dễ hình dung

Hãy hình dung bạn muốn biết ngày mai có mưa hay không. Machine Learning sẽ nói rằng: "Dựa trên dữ liệu thời tiết của 20 năm gần đây, tôi dự đoán khả năng ngày mai có mưa là 93%". Đây chỉ là một dự đoán và vẫn có khả năng sai.

Trong khi đó, Automated Reasoning sẽ nói rằng:

  • Nếu trời mưa thì mặt đất sẽ ướt.
  • Bây giờ trời đang mưa.
  • Vậy mặt đất chắc chắn sẽ ướt.

Nếu hai tiền đề đầu tiên đúng thì kết luận cuối cùng cũng chắc chắn đúng.

Hai lĩnh vực này không hề đối lập nhau

Một điều thú vị là Machine Learning và Automated Reasoning không phải là hai đối thủ của nhau. Ngày nay, chúng ngày càng được kết hợp với nhau:

  • Machine Learning được dùng để giúp các bộ giải logic (SAT/SMT Solver) hoạt động nhanh và hiệu quả hơn.
  • Automated Reasoning được dùng để kiểm chứng tính đúng đắn và giải thích kết quả của các mô hình Machine Learning.
  • Các AI Agent hiện đại cũng đang kết hợp cả hai hướng tiếp cận này để vừa có khả năng học hỏi từ dữ liệu, vừa có khả năng suy luận logic khi cần thiết.

Machine Learning trả lời câu hỏi "Điều gì có khả năng xảy ra?" (Prediction), còn Automated Reasoning trả lời câu hỏi "Điều gì chắc chắn đúng?" (Proof). Một bên học từ dữ liệu để đưa ra dự đoán, bên còn lại suy luận từ các quy tắc logic để đưa ra chứng minh. Cả hai đều là những mảnh ghép quan trọng trong bức tranh lớn của Trí tuệ nhân tạo (AI).

Kết luận

Automated Reasoning và Machine Learning không phải là hai công nghệ đối lập nhau mà là hai cách tiếp cận hoàn toàn khác nhau để xây dựng trí tuệ nhân tạo. Một bên cố gắng giúp máy tính "suy luận", bên còn lại giúp máy tính "học hỏi".

Machine Learning đã chứng minh sức mạnh của mình trong việc xử lý dữ liệu khổng lồ, nhưng nó vẫn gặp nhiều khó khăn khi phải đưa ra những kết luận cần tính chính xác tuyệt đối. Trong khi đó, Automated Reasoning lại đặc biệt mạnh ở những bài toán đòi hỏi tính logic, khả năng chứng minh và tính đúng đắn về mặt toán học.

Có lẽ câu hỏi thú vị nhất không còn là "Machine Learning hay Automated Reasoning tốt hơn?", mà là "Điều gì sẽ xảy ra khi chúng được kết hợp với nhau?".

Đọc thêm tại: Giải mã công nghệ


Sách tham khảo


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.