Giới thiệu
Các thuật toán đã trở nên phổ biến. Họ tối ưu hóa việc đi lại của chúng tôi, xử lý thanh toán và điều phối luồng lưu lượng truy cập internet. Có vẻ như đối với mọi vấn đề có thể được diễn đạt bằng thuật ngữ toán học chính xác thì đều có một thuật toán có thể giải được nó, ít nhất là về nguyên tắc.
Nhưng thực tế không phải vậy - một số vấn đề tưởng chừng như đơn giản không bao giờ có thể giải được bằng thuật toán. Nhà khoa học máy tính tiên phong Alan Turing chứng minh sự tồn tại của những vấn đề “không thể tính toán” như vậy cách đây gần một thế kỷ, trong cùng một bài báo mà ông đã trình bày mô hình toán học tính toán đã đưa ra khoa học máy tính hiện đại.
Turing đã chứng minh kết quả mang tính đột phá này bằng cách sử dụng một chiến lược phản trực giác: Ông đã xác định một vấn đề đơn giản là bác bỏ mọi nỗ lực giải quyết nó.
“Tôi hỏi bạn đang làm gì và sau đó tôi nói, 'Không, tôi sẽ làm điều gì đó khác biệt'," nói. Rahul Ilango, một sinh viên tốt nghiệp tại Viện Công nghệ Massachusetts đang nghiên cứu khoa học máy tính lý thuyết.
Chiến lược của Turing dựa trên một kỹ thuật toán học gọi là đường chéo hóa có một lịch sử nổi bật. Đây là sự giải thích đơn giản về logic đằng sau bằng chứng của ông.
Lý thuyết dây
Đường chéo bắt nguồn từ một thủ thuật thông minh để giải một bài toán thông thường liên quan đến các chuỗi bit, mỗi chuỗi có thể là 0 hoặc 1. Cho một danh sách các chuỗi như vậy, tất cả đều có độ dài bằng nhau, bạn có thể tạo một chuỗi mới không có trên danh sách?
Chiến lược đơn giản nhất là xem xét lần lượt từng chuỗi có thể. Giả sử bạn có năm chuỗi, mỗi chuỗi dài năm bit. Bắt đầu bằng cách quét danh sách để tìm 00000. Nếu nó không có ở đó, bạn có thể dừng lại; nếu đúng như vậy, bạn chuyển sang 00001 và lặp lại quy trình. Điều này đủ đơn giản nhưng sẽ chậm đối với danh sách dài các chuỗi dài.
Đường chéo là một cách tiếp cận thay thế để tạo ra chuỗi bị thiếu từng chút một. Bắt đầu với bit đầu tiên của chuỗi đầu tiên trong danh sách và đảo ngược nó - đó sẽ là bit đầu tiên của chuỗi mới của bạn. Sau đó đảo ngược bit thứ hai của chuỗi thứ hai và sử dụng bit đó làm bit thứ hai của chuỗi mới và lặp lại cho đến khi bạn đến cuối danh sách. Các bit bạn lật đảm bảo rằng chuỗi mới khác với mọi chuỗi trong danh sách ban đầu ở ít nhất một vị trí. (Chúng cũng tạo thành một đường chéo xuyên qua danh sách các chuỗi, đặt tên cho kỹ thuật này.)
Đường chéo chỉ cần kiểm tra một bit từ mỗi chuỗi trong danh sách, vì vậy nó thường nhanh hơn nhiều so với các phương pháp khác. Nhưng sức mạnh thực sự của nó nằm ở chỗ nó chơi tốt như thế nào với vô cực.
“Các chuỗi bây giờ có thể là vô hạn; danh sách có thể là vô hạn - nó vẫn hoạt động,” nói Ryan William, một nhà khoa học máy tính lý thuyết tại MIT.
Người đầu tiên khai thác được sức mạnh này là Georg Cantor, người sáng lập lĩnh vực toán học của lý thuyết tập hợp. Năm 1873, Cantor sử dụng đường chéo hóa để chứng minh rằng một số vô hạn là lớn hơn những người khác. Sáu thập kỷ sau, Turing đã điều chỉnh phiên bản đường chéo hóa của Cantor cho phù hợp với lý thuyết tính toán, tạo cho nó một hương vị trái ngược rõ rệt.
Trò chơi giới hạn
Turing muốn chứng minh sự tồn tại của các vấn đề toán học mà không thuật toán nào có thể giải được - tức là các vấn đề với đầu vào và đầu ra được xác định rõ ràng nhưng không có quy trình rõ ràng nào để chuyển từ đầu vào sang đầu ra. Ông đã làm cho nhiệm vụ mơ hồ này trở nên dễ quản lý hơn bằng cách tập trung hoàn toàn vào các vấn đề quyết định, trong đó đầu vào có thể là bất kỳ chuỗi 0 và 1 nào và đầu ra là 0 hoặc 1.
Việc xác định xem một số có phải là số nguyên tố hay không (chỉ chia hết cho 1 và chính nó) là một ví dụ về vấn đề quyết định — với một chuỗi đầu vào biểu thị một số, kết quả đầu ra đúng là 1 nếu số đó là số nguyên tố và 0 nếu không phải là số nguyên tố. Một ví dụ khác là kiểm tra lỗi cú pháp của chương trình máy tính (tương đương với lỗi ngữ pháp). Ở đó, các chuỗi đầu vào biểu thị mã cho các chương trình khác nhau - tất cả các chương trình có thể được biểu diễn theo cách này, vì đó là cách chúng được lưu trữ và thực thi trên máy tính - và mục tiêu là xuất ra 1 nếu mã có lỗi cú pháp và 0 nếu không' t.
Một thuật toán chỉ giải quyết được một vấn đề nếu nó tạo ra kết quả đầu ra chính xác cho mọi đầu vào có thể có — nếu nó thất bại dù chỉ một lần thì đó không phải là thuật toán có mục đích chung cho vấn đề đó. Thông thường, trước tiên bạn phải xác định vấn đề bạn muốn giải quyết và sau đó cố gắng tìm thuật toán giải quyết vấn đề đó. Turing, khi đang tìm kiếm những vấn đề không thể giải quyết được, đã đảo ngược logic này - ông đã tưởng tượng ra một danh sách vô hạn gồm tất cả các thuật toán có thể có và sử dụng đường chéo hóa để xây dựng một vấn đề cố chấp có thể cản trở mọi thuật toán trong danh sách.
Hãy tưởng tượng một trò chơi gian lận gồm 20 câu hỏi, trong đó thay vì bắt đầu với một đối tượng cụ thể trong đầu, người trả lời sẽ viện ra lý do để nói không với mỗi câu hỏi. Đến cuối trò chơi, họ đã mô tả được một vật thể được xác định hoàn toàn bằng những phẩm chất mà nó thiếu.
Bằng chứng đường chéo hóa của Turing là một phiên bản của trò chơi này, trong đó các câu hỏi chạy qua danh sách vô hạn các thuật toán có thể, liên tục hỏi: “Thuật toán này có thể giải quyết được vấn đề mà chúng ta muốn chứng minh là không thể tính toán được không?”
“Đó là loại 'câu hỏi vô cực'," Williams nói.
Để giành chiến thắng trong trò chơi, Turing cần tạo ra một bài toán trong đó câu trả lời là không cho mọi thuật toán. Điều đó có nghĩa là xác định một đầu vào cụ thể khiến thuật toán đầu tiên đưa ra câu trả lời sai, một đầu vào khác khiến thuật toán thứ hai thất bại, v.v. Anh ấy đã tìm thấy những thông tin đầu vào đặc biệt đó bằng cách sử dụng một thủ thuật tương tự như thủ thuật mà Kurt Gödel đã sử dụng gần đây. chứng minh rằng những khẳng định tự quy chiếu như “tuyên bố này là không thể chứng minh được” đã gây ra rắc rối cho nền tảng của toán học.
Điểm mấu chốt là mọi thuật toán (hoặc chương trình) đều có thể được biểu diễn dưới dạng chuỗi 0 và 1. Điều đó có nghĩa là, như trong ví dụ về chương trình kiểm tra lỗi, một thuật toán có thể lấy mã của thuật toán khác làm đầu vào. Về nguyên tắc, một thuật toán thậm chí có thể lấy mã của chính nó làm đầu vào.
Với thông tin chi tiết này, chúng ta có thể xác định một vấn đề không thể giải quyết được giống như vấn đề trong bằng chứng của Turing: “Cho một chuỗi đầu vào biểu thị mã của một thuật toán, đầu ra là 1 nếu thuật toán đó xuất ra 0 khi mã của chính nó là đầu vào; nếu không thì xuất ra 0.” Mọi thuật toán cố gắng giải quyết vấn đề này sẽ tạo ra kết quả đầu ra sai trên ít nhất một đầu vào - cụ thể là đầu vào tương ứng với mã của chính nó. Điều đó có nghĩa là vấn đề nghịch lý này không thể được giải quyết bằng bất kỳ thuật toán nào.
Điều phủ định không thể làm được
Các nhà khoa học máy tính vẫn chưa hoàn thành xong việc chéo hóa. Năm 1965, Juris Hartmanis và Richard Stearns đã điều chỉnh lập luận của Turing thành chứng minh rằng không phải tất cả các vấn đề có thể tính toán đều được tạo ra như nhau - một số vấn đề về bản chất khó hơn những vấn đề khác. Kết quả đó đã mở ra lĩnh vực lý thuyết độ phức tạp tính toán, nghiên cứu độ khó của các bài toán tính toán.
Nhưng lý thuyết phức tạp cũng bộc lộ những hạn chế trong phương pháp ngược lại của Turing. Năm 1975, Theodore Baker, John Gill và Robert Solovay chứng minh rằng nhiều câu hỏi mở trong lý thuyết độ phức tạp không bao giờ có thể được giải quyết chỉ bằng đường chéo hóa. Đứng đầu trong số này là bài toán P so với NP nổi tiếng, bài toán này hỏi liệu tất cả các bài toán có lời giải dễ kiểm tra cũng có thể giải dễ dàng bằng thuật toán khéo léo phù hợp hay không.
Điểm mù của đường chéo là hệ quả trực tiếp của mức độ trừu tượng cao khiến nó trở nên mạnh mẽ. Chứng minh của Turing không liên quan đến bất kỳ vấn đề không thể tính toán nào có thể nảy sinh trong thực tế - thay vào đó, nó nhanh chóng tạo ra một vấn đề như vậy. Các bằng chứng chéo hóa khác cũng xa cách tương tự với thế giới thực, vì vậy chúng không thể giải quyết các câu hỏi mà chi tiết trong thế giới thực đóng vai trò quan trọng.
“Họ xử lý việc tính toán từ xa,” Williams nói. “Tôi tưởng tượng một anh chàng đang xử lý virus và truy cập chúng thông qua hộp găng tay nào đó.”
Sự thất bại của đường chéo hóa là dấu hiệu ban đầu cho thấy việc giải bài toán P so với NP sẽ khó khăn hơn. một chuyến đi dài. Nhưng bất chấp những hạn chế của nó, đường chéo hóa vẫn là một trong những công cụ quan trọng trong kho vũ khí của các nhà lý thuyết về độ phức tạp. Vào năm 2011, Williams đã sử dụng nó cùng với nhiều kỹ thuật khác để chứng minh rằng một mô hình tính toán hạn chế nhất định không thể giải được một số vấn đề cực kỳ khó khăn - một kết quả mà các nhà nghiên cứu đã bỏ qua trong 25 năm. Việc giải quyết P so với NP còn lâu mới đạt được, nhưng nó vẫn thể hiện sự tiến bộ lớn.
Nếu bạn muốn chứng minh rằng điều gì đó là không thể, đừng đánh giá thấp sức mạnh của việc nói không.
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- PlatoData.Network Vertical Generative Ai. Trao quyền cho chính mình. Truy cập Tại đây.
- PlatoAiStream. Thông minh Web3. Kiến thức khuếch đại. Truy cập Tại đây.
- Trung tâmESG. Ô tô / Xe điện, Than đá, công nghệ sạch, Năng lượng, Môi trường Hệ mặt trời, Quản lý chất thải. Truy cập Tại đây.
- PlatoSức khỏe. Tình báo thử nghiệm lâm sàng và công nghệ sinh học. Truy cập Tại đây.
- ChartPrime. Nâng cao trò chơi giao dịch của bạn với ChartPrime. Truy cập Tại đây.
- BlockOffsets. Hiện đại hóa quyền sở hữu bù đắp môi trường. Truy cập Tại đây.
- nguồn: https://www.quantamagazine.org/alan-turing-and-the-power-of-negative-thinking-20230905/
- : có
- :là
- :không phải
- :Ở đâu
- ][P
- $ LÊN
- 1
- 20
- 2011
- 25
- a
- sự trừu tượng
- Tài khoản
- cách đây
- Alan
- Alan Turing
- thuật toán
- theo thuật toán
- thuật toán
- Tất cả
- cô đơn
- Ngoài ra
- trong số
- an
- và
- Một
- trả lời
- bất kì
- phương pháp tiếp cận
- LÀ
- đối số
- nảy sinh
- Arsenal
- AS
- xin
- At
- bánh mì
- dựa
- BE
- trở nên
- sau
- Một chút
- Hộp
- xây dựng
- nhưng
- by
- gọi là
- cambridge
- CAN
- trường hợp
- Thế kỷ
- nhất định
- kiểm tra
- chánh
- mã
- phức tạp
- tính toán
- máy tính
- Khoa học Máy tính
- máy tính
- Hãy xem xét
- xây dựng
- chứa
- trái
- phối hợp
- sửa chữa
- Tương ứng
- nghề
- tạo ra
- xử lý
- thập kỷ
- quyết định
- định nghĩa
- xác định
- mô tả
- Mặc dù
- chi tiết
- khác nhau
- Khó khăn
- trực tiếp
- khoảng cách
- Phân biệt
- do
- Không
- làm
- dont
- mỗi
- Đầu
- dễ dàng
- dễ dàng
- hay
- cuối
- đủ
- đảm bảo
- hoàn toàn
- như nhau
- như nhau
- Tương đương
- lôi
- lỗi
- Ngay cả
- Mỗi
- kiểm tra
- ví dụ
- độc quyền
- Thực thi
- sự tồn tại
- phi thường
- FAIL
- không
- Không
- nổi tiếng
- xa
- Far Cry
- nhanh hơn
- lĩnh vực
- Tìm kiếm
- Tên
- năm
- Lật
- dòng chảy
- tập trung
- Trong
- hình thức
- tìm thấy
- Foundations
- người sáng lập
- từ
- trò chơi
- mục đích chung
- tạo ra
- được
- nhận được
- được
- Cho
- mục tiêu
- đi
- tốt nghiệp
- đột phá
- Guy
- có
- xử lý
- Cứng
- khó hơn
- khai thác
- Có
- he
- cái đầu
- Cao
- của mình
- lịch sử
- Độ đáng tin của
- HTTPS
- i
- xác định
- IEEE
- if
- hình ảnh
- tưởng tượng
- in
- dấu hiệu
- Infinite
- Vô cực
- đầu vào
- đầu vào
- cái nhìn sâu sắc
- thay vì
- Viện
- Internet
- bản chất
- liên quan
- IT
- ITS
- chính nó
- nhà vệ sinh
- chỉ
- Key
- kurt
- một lát sau
- phát động
- ít nhất
- Cấp
- nằm
- Lượt thích
- giới hạn
- hạn chế
- giới hạn
- Dòng
- Danh sách
- Chức năng
- logic
- dài
- thực hiện
- tạp chí
- chính
- LÀM CHO
- quản lý
- nhiều
- massachusetts
- Viện công nghệ Massachusetts
- toán học
- toán học
- chất
- có nghĩa
- có nghĩa là
- phương pháp
- phương pháp
- Might
- tâm
- mất tích
- sai lầm
- MIT
- kiểu mẫu
- hiện đại
- chi tiết
- hầu hết
- di chuyển
- nhiều
- tên
- cụ thể là
- gần
- cần thiết
- nhu cầu
- tiêu cực
- không bao giờ
- Mới
- Không
- tại
- con số
- vật
- of
- thường
- on
- hàng loạt
- ONE
- có thể
- mở
- Tối ưu hóa
- or
- nguyên
- Nền tảng khác
- Khác
- nếu không thì
- vfoXNUMXfipXNUMXhfpiXNUMXufhpiXNUMXuf
- đầu ra
- riêng
- Giấy
- riêng
- thanh toán
- người
- Tiên phong
- Nơi
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- đóng
- có thể
- quyền lực
- mạnh mẽ
- thực hành
- cần
- Thủ tướng Chính phủ
- nguyên tắc
- Vấn đề
- vấn đề
- thủ tục
- quá trình
- sản xuất
- sản xuất
- chương trình
- Khóa Học
- Tiến độ
- bằng chứng
- bằng chứng
- Chứng minh
- chứng minh
- chất lượng
- tạp chí lượng tử
- câu hỏi
- Câu hỏi
- hơn
- thực
- thế giới thực
- gần đây
- vẫn còn
- lặp lại
- NHIỀU LẦN
- đại diện
- đại diện
- đại diện
- nhà nghiên cứu
- quyết định
- giải quyết
- hạn chế
- kết quả
- Tiết lộ
- Richard
- gian lận
- ngay
- ROBERT
- chạy
- Nói
- tương tự
- nói
- nói
- quét
- Khoa học
- Nhà khoa học
- các nhà khoa học
- Tìm kiếm
- Thứ hai
- có vẻ
- dường như
- định
- siam
- tương tự
- Tương tự
- Đơn giản
- đơn giản hóa
- đơn giản
- kể từ khi
- Six
- chậm
- So
- Giải pháp
- động SOLVE
- Giải quyết
- Giải quyết
- một số
- một cái gì đó
- đặc biệt
- điểm
- Bắt đầu
- Bắt đầu
- Tuyên bố
- thân cây
- Vẫn còn
- Dừng
- lưu trữ
- đơn giản
- Chiến lược
- Chuỗi
- Sinh viên
- nghiên cứu
- Học tập
- như vậy
- cú pháp
- Hãy
- Nhiệm vụ
- kỹ thuật
- Công nghệ
- về
- hơn
- việc này
- Sản phẩm
- Them
- sau đó
- lý thuyết
- lý thuyết
- Đó
- Kia là
- họ
- Suy nghĩ
- điều này
- những
- Thông qua
- cản trở
- đến
- bên nhau
- công cụ
- giao thông
- rắc rối
- đúng
- thử
- Turing
- XOAY
- Quay
- phổ cập
- cho đến khi
- sử dụng
- đã sử dụng
- sử dụng
- phiên bản
- Versus
- virus
- muốn
- muốn
- là
- Đường..
- we
- webp
- TỐT
- được xác định rõ ràng
- Điều gì
- khi nào
- liệu
- cái nào
- CHÚNG TÔI LÀ
- sẽ
- Williams
- giành chiến thắng
- với
- công trinh
- thế giới
- sẽ
- Sai
- năm
- nhưng
- Bạn
- trên màn hình
- zephyrnet