Thư viện bài tháng 06 năm 2007

Bác Dũng bị hacked và chôm domain

Ngô Quang Hưng | 29 tháng 06, 2007 | Bản để in Bản để in

Bác Trần Hữu Dũng vừa có thông báo: thoidai.org và viet-studies.org bị hacked và bị chôm. Từ nay bác ấy chuyển domain sang viet-studies.info.

Vì lý do bí ẩn, tôi (Trần Hữu Dũng) bị “mất” hai địa chỉ web http://www.viet-studies.org và http://www.thoidai.org

Thành thực xin lỗi các bạn là vì “tai nạn” xảy ra quá thình lình tôi không thể thông báo cho mọi người. Dù sao, rất vui mừng lại được đón bạn ở địa chỉ mới này.

Chuyên mục: Nhân vật và sự kiện | Bình luận (1) »

Định trị một đại lượng bằng hai cách [4]

Ngô Quang Hưng | 27 tháng 06, 2007 | Bản để in Bản để in

Lần này ta xét một số chứng minh kinh điển về các số vô tỉ và các số siêu việt (transcendental numbers).

Ví dụ 7: khoảng 500 năm trước công nguyên, Hippasus khám phá ra số vô tỉ đầu tiên, \sqrt{2}, với chứng minh chặt chẽ. (Theo truyền thuyết thì chứng minh này đem lại cho ông những điều không hay ho gì.) Chứng minh của Hippasus trình bày trong các sách giáo khoa cấp 2 thường dùng phương pháp infinite descent kiểu Fermat. Ta trình bay một chứng minh khác dùng phương pháp định trị một đại lượng bằng 2 cách.

Giả sử \sqrt{2} = a/b là một số hữu tỉ, nghĩa là a^2 = 2b^2 = c là một số nguyên dương nào đó. Khi phân tích c ra thừa số nguyên tố, vì c = a^2 các thừa số nguyên tố của c đều có số mũ chẵn, trong khi đó vì c = 2b^2 thừa số 2 sẽ có số mũ lẻ. Vô lý!

(Đại lượng ta định trị là số mũ của 2 trong phân tích thừa số của c.)

Ví dụ 8: Euler chứng minh rằng e là số vô tỉ dùng phương pháp định trị 2 cách như sau. Giả sử e=a/b là hữu tỉ. Theo khai triển Taylor ta có:

\frac{a}{b} = \sum_{k=0}^\infty \frac{1}{k!}

Nhân hai vế với (b+1)! thì vế trái là một số nguyên, trong khi đó vế phải bằng
(b+1)!\left(\sum_{k=0}^{b+1} \frac{1}{k!}\right) + (b+1)!\left(\sum_{k=b+2}^\infty \frac{1}{k!}\right)

Dễ thấy rằng (b+1)!\left(\sum_{k=0}^{b+1} \frac{1}{k!}\right) là một số nguyên, trong khi đó (b+1)!\left(\sum_{k=b+2}^\infty \frac{1}{k!}\right) là một số thực trong khoảng (0,1). Vô lý!

Ý tưởng chính: Một cách trực quan hơn, ta có thể hiểu chứng minh này như sau. Nếu a/b là một số hữu tỉ, và m là một số nguyên bất kỳ, thì giá trị m(a/b) hoặc là bằng với một số nguyên hoặc là cách số nguyên gần nhất ít nhất 1/b. Trong khi đó, khi nhân e=a/b với m=n! với n càng lớn thì m(a/b) càng tiến đến gần một số nguyên với khoảng cách nhỏ tùy ý. Ý tưởng tương tự ý này sẽ được dùng để chứng minh một số là số siêu việt như trong ví dụ sau đây. (Dĩ nhiên là ta vẫn dùng phương pháp định trị một đại lượng bằng hai cách.)

Ví dụ 9: một số đại số (algebraic number) là một nghiệm (thực hoặc phức) của một đa thức khác 0 hệ số hữu tỉ nào đó, nghĩa là nghiệm của a_0 + a_1x + \dots + a_nx^n = 0 trong đó a_i là các số hữu tỉ và a_n \neq 0. Bậc của một số đại số là bậc của đa thức tối giản (và monic) mà số đại số đó là nghiệm. Như vậy, số hữu tỉ chẳng qua là số đại số bậc nhất!

Ngược lại, số siêu việt là các số không phải số đại số. Lịch sử các số siêu việt cũng hay, bao gồm các đóng góp của Lindemann (sư phụ của Hilbert), Hermite (sư phụ của Poincaré), và cả một bài toán Hilbert (đã có lời giải).

Hermite chứng minh rằng e là số siêu việt, dùng phương pháp định trị hai cách. Hilbert đơn giản hóa chứng minh này một chút. Chứng minh của Hilbert là chứng minh đa số sách vở dùng hiện nay. Ta cũng sẽ dùng ý tưởng đã nêu trên. Giả sử e là số đại số. Không mất tính tổng quát ta giả sử có các số nguyên a_0, a_1, \dots, a_n với a_n \neq 0 thỏa mãn

f(e) := a_0 + a_1e + \dots + a_ne^n = 0

Ta sẽ tìm một số nguyên dương m sao cho mf(e) \neq 0, dẫn đến điều vô lý. Cụ thể hơn, ta sẽ chứng minh mf(e) = S_1 + S_2, trong đó S_1 là một số nguyên khác 0, còn |S_2| < 1. Từ ý tưởng của Hermite, Hilbert đặt
g(x) = x^q \left[(x-1)(x-2)\dots (x-n)\right]^{q+1}e^{-x}

m = \int_0^\infty \frac{1}{q!} g(x) dx

Trong đó q là một số nguyên dương sẽ xác định sau. Đến đây thì S_1, S_2 được xác định như sau
mf(e) = \sum_{k=0}^n a_ke^k \int_0^\infty \frac{1}{q!} g(x) dx = S_1 + S_2

trong đó
S_1 =  \sum_{k=0}^n a_k \int_k^\infty \frac{1}{q!} g(x)e^k dx

S_2 =  \sum_{k=1}^n a_k \int_0^k \frac{1}{q!} g(x)e^k dx

Ta phải chứng minh hai điều sau đây.

  • Điều 1 S_1 là môt số nguyên khác 0.

    Trước hết. Với k=1, \dots, n, đổi biến y = x-k ta có

    \int_k^\infty \frac{1}{q!} g(x)e^k dx = \int_0^\infty \frac{(y+k)^q \left[(y+k-1)\cdots(y+k-k)\cdots\right]^{q+1}e^{-y}}{q!} dy

    Với \alpha là số nguyên dương bất kỳ, hàm Gamma cho ta biết
    \int_0^\infty y^{\alpha} e^{-y}dy = \alpha!

    Vì thế \int_k^\infty \frac{1}{q!} g(x)e^k dx chia hết cho (q+1) với k=1, \dots, n. Như vậy
    S_1 \equiv a_0((-1)^nn!)^{q+1} \pmod{q+1}

    Dùng định lý Fermat nhỏ, dễ thấy rằng nếu ta chọn q+1 là một số nguyên tố lớn hơn a_0n! thì S_1 \not\equiv 0 \pmod{q+1}, vì thế S_1 là số nguyên khác 0.

  • Điều 2 |S_2| < 1.

    Trị tuyệt đối của mỗi số hạng trong tổng S_2 có dạng \frac{|\int_0^k a_kg(x)e^k dx|}{q!}. Tử số tiến đến vô cùng chậm hơn mẫu số rất nhiều, vì thế với q đủ lớn mỗi số hạng này rất bé, và vì thế tổng của chúng nhỏ hơn 1.

Bài tập 2: chứng minh rằng \pi là số siêu việt. (Gợi ý: dùng đẳng thức Euler e^{i \pi} + 1 = 0)

Chuyên mục: Combinatorics | Bình luận »

Kiến trúc top-down và bottom-up trong trí tuệ nhân tạo

Nguyễn Xuân Long | 25 tháng 06, 2007 | Bản để in Bản để in

Nhân lục lọi đôi thứ trong archive tôi tìm lại bài tranh luận nhỏ cách đây đúng 5 năm trên VNAI mailing list (của những người bạn VN quan tâm đến AI). Bài này bắt nguồn từ email sau đây của bạn Đặng Việt Dũng về một bài giảng về reactive agent architecture của Rodney Brooks:

On Thu, 4 Jul 2002, Viet Dung Dang wrote:

Cách đây mấy tháng, em có dự 1 bài giảng của Rodney Brooks để quảng cáo cho quyển sách mới của ông tên là “Flesh and Machines”. Như nhiều anh chị đã biết, Rodney Brooks vào năm 1994 đã gây một cơn sốc lớn trong giới nghiên cứu agent, khi ông phủ nhận kiến thức truyền thống (logic-based với knowledge based inference rules) và khai sinh ra kiến trúc Subsumption, mà cốt lõi là purely reactive.

Trong bài giảng em đã được dự, Brooks tiếp tục promote kiến trúc subsumption và nói về việc xây dựng một con humanoid robot dựa trên kiến trúc đó. Một câu hỏi mà chắc mọi người cùng thắc mắc, và em cũng vẫn thắc mắc sau khi dự là theo kiến trúc của Brook, agent hoàn toàn không có internalrepresentation of the world, mà hầu hết chỉ dựa trên các re-active rules. Trong buổi đó, khi trả lời câu hỏi, Brook có nói là nếu xây được một representation như thế thì sai lầm vì model đó sẽ không phản ánh đúng thực chất của thế giới outside.

Tuy nhiên, theo như em hiểu, thực chất con người chúng ta đều có một representation of the world ở trong đầu, và dựa vào đó để suy luận và hành động. Như thế, liệu kiến trúc của Brooks co’ phải là useless khi xây dựng humanoid robot không?

Em cũng nghĩ chắc là không, vì nếu thế thì làm sao Brooks lại đang làm director lab của MIT được :-)

Bài bình luận của tôi không đi vào chi tiết về kiến trúc của Brooks, mà chủ yếu tóm tắt một số sự khác biệt giữa hai truờng phái kiến trúc khác nhau trong AI. Trường phái truyền thống có thể nói bắt nguồn từ John McCarthy ở Stanford, người mà chúng ta đã nói qua ở blog này về Common sense và AI.

On Thu, 4 Jul 2002, XuanLong Nguyen wrote:

This is an interesting question that every student of AI should ask himself at some point. It seems that most people would give up after a few thoughts. Those with whom the question stuck still would probably eventually end up in places such as the directorship of MIT AI lab :-) . In the mean time, the rest of us are happily working on obscure problems of knowledge-based systems, Strips worlds, Bayesian nets that seem to be forever in the wrong side of the real world :-) Still, I think it’s fun to talk about — and before the other more knowledgeable members of the list speak out, hopefully — I’d like to add my humble opinions.

Without getting into hairy discussion of intelligence, and AI and so on, lets call the Brooks approach the bottom-up (or the MIT school), while the traditional approach the top-down (or the Stanford school). Roughly speaking, the most distinctive constrast between the two is that the bottom-up approach is behavior-based, while the top-down is representation-based.

Both approaches bear merits as well as difficulties. For a researcher in AI, the comparison also depends on what your immediate objectives are. If the objective is to build an *autonomously* “intelligent” entity that appears to be interesting and capable of doing something deemed interesting, the answer is not clear. The problem with the traditional top-down approach is that in order to break down a system into modules such as knowledge representation, reasoning, planning, learning, multi-agent coordinating, etc one has to necessarily make a lot of simplifying assumptions. Therefore there is no guarantee that such simplification is harmless. Since we still don’t know what it takes build an intelligent entity, whatever that means, we don’t know if such simplifying assumptions help us reach the essence of intelligence faster, or they simply lead us astray to a dead-end path that would preclude the possibility of ever finding any solution.

So this has been one of the strongest criticism of the traditional top-down approach. And for good reasons. The clearest evidence is that after half a century of research in many areas and subareas and subsubareas and subsubsubareas of AI, the field as a whole hasn’t achieved much, and most of us seem to forget the grandiose objective of the field, i.e., to understand and create *autonomous* intelligent entities that can hold up themselves in the real world. One natural alternative is, since we don’t know what it takes to build intelligent entities, we need to imitate what are considered to be intelligent. There are plenty around, not just in humans, but also animals and insects. So it seems plausible to step back to square one and studied the most primitive mechanism there is in the nature. The good news is that by now many researchers are convinced that seemingly sophisticated behaviors can be built up by very simple (and possibly reactive) rules. It is also hoped that one is able to understand and build progressively more sophisticated and intelligent behavior-based entities in much the same way the evolution works.

Needless to say, the progress has been frustratingly slow, and our understanding of nature, including even some of the most primitive insects, remains very limited. It seems that the breakthrough in AI would probably come from this bottom-up approach, given its very interdisciplinary nature and possible contributions coming from computer science and statistics, as well as other computational sciences and experimental sciences (such as neuroscience, physics and biology).

There have been a very strong movement that is more or less advocating small autonomous robots equipped with limited sensory and actuating capabilities but which are nevertheless useful and can hold up in the real world environment. They go by names such as x-insects, smart dust, robotic fly, etc. One distinctive feature of the bottom-up approach is the emphasis on sensors and sensory data processing (interaction with outside world). By contrast, the top-down approach focuses on representing and manipulating abstract knowledge-base with a strong emphasis on methods for obtaining such knowledge in the first place.

Back to the traditional top-down school. It is not without success, though in a limited way. By abstracting away and breaking down the intelligency into many different disconnected parts such as knowledge representation, reasoning, planning, learning, etc these subfields have been reduced to subclasses of problems, whose techniques prove useful for problem-solving, usually with heavy intervention of humans. Within each of the modules, limited intelligent behavior can be achieved. As we all know, an AI search researcher can boast about Deep Blues, while machine learning and control theorist can talk about autonomous vehicles. Planning researchers talk about automatically controlling a spacecraft for a short period of time. More robust, user-friendly softwares in many applications have been incorporating latest AI research advances without notice.

While both aiming for intelligency, the traditional school has an objective very different from the new bottom-up approach. This is exemplified by a popular AI textbook (by Russell and Norvig) which simply proclaims in chapter 1 that it is more concerned about solving problems intelligently, but not to imitate human intelligence in the first place. Perhaps the most convincing argument of
the traditional school of AI is summed up by Drew McDermott (from Yale), who famously wrote that: To say the Deep Blues is not intelligent is to say that airplanes don’t fly because they don’t flip their wings. However, the price this approach has to pay is that by separating the subfields too far apart, it is very hard to glue them back together to build a coherent working autonomous system. In particular, such systems are hopeless in interacting with the outside world.

Nevertheless, the traditional school of AI will be here to stay, and so will the AI planning, knowledge-representation, machine learning, multi-agent researchers :-) . Ultimately, in order to have a truly intelligent autonomous entity (whatever it means, again), one has to have knowledge-representation capability, as well as search, inference, extra/interpolation capability, and so on because the most sophisticated intelligent entity, i.e, human, surely have those. But it is not clear if the knowledge representation and reasoning mechanism of that dream intelligent entity is the same as what we know, or are heading for in our search. Neither do we know how they are glued together.

Ideally, one may hope that both approaches in AI will meet somewhere in the search graph, or they never will if the graph is infinite with loops. We can only wait for many years to come to know the answer. And in the mean time, it’s useful to prove the NP-hardness of whatever task there is in each of our favorite building blocks of what are known to us as AI :-)

cheers,
Long [July 04, 2002]

Tóm lại của bài viết dài dòng trên, chúng ta có ba câu hỏi chính mà cả hai anh kiến trúc đều phải đối đầu:

  • Làm thế nào để thu nhập, cập nhật được kiến thức?
  • Làm thế nào để mã hóa chúng một cách gọn gàng để có thể truy cập và sử dụng một cách hiệu quả?
  • Và làm thế nào sử dụng được kiến thức một cách hữu hiệu nhất?

Đó là những câu hỏi lớn không chỉ trong trí tuệ nhân tạo, mà trong công việc và cuộc sống hàng ngày chúng ta luôn phải đối thoải, chẳng hạn như bài blog gần đây của anh Hưng. Trí tuệ nhân tạo là một ngành có tham vọng “nhân tạo” và tự động hóa những giải pháp cho các câu hỏi trên, qua công cụ thuật toán, và các kỹ thuật phần mềm và phần cứng.

5 năm sau, suy nghĩ chung của tôi về vấn đề kiến trúc topdown vs bottom up không thay đổi nhiều. Mặc dù tôi vẫn thiên về kiến trúc topdown hơn, nhưng sự nhận thưc về mặt mạnh và mắt yếu của cả hai kiến trúc đều không thay đổi. Có thể nói trường phái top-down phân tách cả ba câu hỏi một cách tách bạch, và từ đó AI bị chia ra làm nhiều ngả, mỗi ngả tìm cách giải quyết một câu, và tập trung chủ yếu vào câu thứ hai và thứ ba. Còn kiến trúc bottom-up thì tập trung vào câu thứ nhất. Cả hai loại kiến trúc đều rất có ích, nhưng có lẽ một kiến trúc thích hợp nhất sẽ không có sự chia rẽ ba vấn đề trên một cách tách bạch như thế.

Điều đáng nói là ba câu hỏi trên có tính phổ quát không chỉ trong TTNT mà rất nhiều lĩnh vực khác, đặc biệt trong thống kê hiện đại. Ngành thống kê hiện đại vật vã rất nhiều với câu hỏi: Làm thế nào make sense được với data. Data chính là giao diện của bạn, của tôi, của một chính thể trí tuệ nhân tạo trong tương lai, với thế giới bên ngoài. Ngành thống kê cũng phải đối đầu với những câu hỏi như: Khi phải xây dựng một mô hình về thế giới, chúng ta phải bắt đầu từ đâu, bao nhiều prior information thì đủ? Qua đó chúng ta đi đến sự đối đầu giữa Bayesian và frequentists. Hay, làm thế nào để tạo ra các mô hình phức tạp một cách hệ thống? Graphical models, một sự kết hợp của graph theory và probability theory, chính là một giải pháp hướng tới câu trả lời đó. V.v. và v.v. Sự hội tụ giữa TTNT và ngành thống kê góp phần làm ra đời và phát triển lĩnh vực machine learning, và theo chủ quan của tôi, rất có thể trong tương lai không xa machine learning sẽ trở thành một trong những lĩnh vực trung tâm của cả TTNT và thống kê.

Thay cho câu kết, tôi xin trích lại đoạn sau trong Common sense và AI.:

Câu hỏi quan trọng mà tôi quan tâm là: Common sense có phải là khái niệm hữu ích hay không trong việc xây dựng máy tính thông minh? Cụ thể hơn, đó có phải là một khái niệm constructive hay không. Khái niệm này có thể được mổ xẻ và tổng hợp một cách tự động từ giao tiếp của computers với thế giới bên ngoài? Khái niệm đó có thể dễ dàng transfer từ computers này sang computers khác, có thể được tổng quát hoá và suy diễn (inductive and deductive inference) để tạo ra những khái niệm mới có ích?
….

Tôi cho rằng, nhìn từ góc độ mô hình xác suất, rất có thể common sense là một dạng “emerging property/phenomenon”, song không nhất thiết là một khái niệm kiến trúc căn bản của intelligence. Nếu quả thật như thế, thì rất nguy hiểm khi bắt đầu xây dựng một intelligent system bằng cách xây dựng common sense storages. Những systems như vậy sẽ không robust.

Chuyên mục: Trí tuệ nhân tạo & Xác suất & thống kê | Bình luận (8) »

Liên kết trong ngày

Ngô Quang Hưng | 25 tháng 06, 2007 | Bản để in Bản để in

  • Đại chiến trên cyberspace (NY Times).
  • Tham nhũng và tài trợ vào Cambodia. Nhắc lại nhớ đến một vụ làm tôi rất buồn: chương trình Dateline NBC có phóng sự về buôn bán trẻ em làm điếm qua Cambodia, có rất nhiều trẻ em Việt Nam trong đó. Xem sổ sách của nhà chứa thấy nào là Xuyến, Hồng, Thắm, …
  • 1000 phim phải xem trước khi chết của Guardian, danh sách vẫn còn đang đăng. Tôi đã giới thiệu một bộ documentary tuần trước. Xem bừa vào các phim bắt đầu bằng vần B, đã thấy Guardian phá hỏng một phim tôi rất thích:

    Before Sunrise (Richard Linklater, 1995)

    Two beautiful American strangers meet on a Eurorail train and spend a day and night walking around Vienna, a journey electrified by instant infatuation-maybe even love. Linklater’s verbose two-hander runs on the heady buzz of kismet, and reaches a wide-open ending that led to an equally sublime sequel, Before Sunset.

    Làm gì có “two beautiful American strangers”? Một chú Mỹ, một cô Pháp. Chán hẳn!

Chuyên mục: Tin tức đó đây | Bình luận (3) »

Học toán được gì?

Ngô Quang Hưng | 20 tháng 06, 2007 | Bản để in Bản để in

Stobaeus ghi lại truyền thuyết sau đây về Euclid.

Khi một chú học trò hỏi Euclid: “chúng ta học hình học thì được cái gì?”, Euclid gọi một anh nô lệ vào bảo: “cho nó một đồng xu, vì nó muốn kiếm lời từ cái nó học”.

Đáng lẽ tôi phải kể câu chuyện này để kết thúc bài học bao nhiêu là đủ.

Chuyên mục: Danh ngôn & Dành cho du học sinh | Bình luận (15) »

Đẹp ná thở!

Ngô Quang Hưng | 20 tháng 06, 2007 | Bản để in Bản để in

Tôi vừa xem xong hai DVDs đầu của bộ Planet Earth, BBC 2. Đẹp khủng khiếp! (Xem thử một số hình ảnh ở đây, hoặc một sample video ở đây.) Tôi mua bộ đĩa 5 DVD trên Amazon khoảng 54USD. Đáng từng cent, và đáng từng giây xem phim.



(Image source: BBC)

Sau winged migration, march of the penguin, blue planet, đến planet earth. Xem xong bất kỳ cái nào mà bạn không biến thành environmentalist thì bạn … hết thuốc chữa rồi.

Chuyên mục: Giới thiệu sách | Bình luận (6) »

Liên kết trong ngày

Ngô Quang Hưng | 15 tháng 06, 2007 | Bản để in Bản để in

  • Một góc nhìn về đề tài: “máy tính làm chúng ta thông minh hơn”.

    From microwaves to cell phones to word processors, computers are extending our intelligence. At their best, and at ours, they’re challenging us, forcing us to higher levels of thought. Pitting my brain against yours is hard. Pitting my program against yours—teaching one machine to spot and exploit another’s subtle flaws—is much harder.

  • Tại sao ta cần captcha thế hệ mới, và một ý tưởng cực hay của nhóm Luis von Ahn:

    His reCaptcha project (recaptcha.net) seeks to block spam while handling the challenge of digitally scanning old books and making them available in Web search engines. When character recognition software fails to decipher a word scanned in a book — when the page is yellowed or the letters are smudged, for example — Mr. von Ahn’s project makes it part of a captcha. After the mystery word has been verified by several people, it is fed back into the digital copy of the book. “I heard that 60 million captchas are solved every day around the world, which first made me quite happy for myself but then quite sad,” he said. “It takes about 10 seconds to solve a captcha, so that means humanity is wasting thousands of hours solving them. I wanted to do something good for humanity in that time.”

  • Ý tưởng này làm tôi nhớ đến Artificial Artificial Intelligence.
  • Đàn ông và đàn bà mơ về tình dục ngang nhau. Tuy nhiên, sự khác biệt là ở chỗ:

    While women tend to fantasize about film stars, politicians, rock stars or lovers past and present, men tend to visualize themselves making love to unknown women or with multiple partners in public settings. The women who took part in the study were twice as likely to have dream scenarios featuring celebrities such as actors Brad Pitt or George Clooney, or Irish rocker Bono, as their male counterparts. The men, on the other hand, reported dreams featuring multiple sex partners twice as often as the women.

Chuyên mục: Vui - Giải Trí | Bình luận »

Chữ Hanoi trong bài toán tháp Hà Nội

Ngô Quang Hưng | 14 tháng 06, 2007 | Bản để in Bản để in

Nhân bạn npson thắc mắc về chữ Hanoi trong bài toán “Tower of Hanoi”, tôi đi tìm hiểu thêm ngọn ngành thì ra đại khái thế này. Trong quyển L’arithmétique amusante của chính Lucas, người sáng tạo ra trò chơi “Tower of Hanoi”, có đoạn như sau:

: Un de nos amis, le professeur N. Claus (de Siam), mandarin du college Li-Sou-Stian, a publie en 1884 un jeu inedit et brevete, qu’il a appele la Tour d’Hanoi, veritable casse-te^te annamite qu’il n’a pas rapporte du Tonkin, quoi qu’en dise le prospectus.

Như vậy không còn nghi ngờ gì nữa, Hanoi chính là Hà Nội, Việt Nam! Một đoạn kế tiếp viết về truyền thuyết tháp Brahma, có đến 64 đĩa.

Le mandarin N. Claus (de Siam) nous raconte qu’il a vu, dans ses voyages pour la publication des ecrits de Fer-Fer-Tam-Tam, dans le grand temple de Benares, au dessous du dome qui marque le centre du monde, trois aiguilles de diamant, plantees dans une dalle d’airain, hautes d’une coudee et grosses comme le corps d’une abeille. Sur une de ces aiguilles Dieu enfila, au commencement des siecles, soixante-quatre disques d’or pur, le plus large reposant sur l’airain, et les autres de plus en plus etroits, superposes jusqu’au sommet; c’est la tour sacree de Brahma. Nuitet jour, les pre^tres se succedent sur les marches de l’autel, occupes a transporter la tour de la premiere aiguille de diamant sur la troisieme, sans s’ecarter des regles fixes que nous venons d’indiquer, et qui ont ete posees par Brahma. Quand tout serafini, la tour et les brahmes tomberont, et ce sera la fin des mondes!

L’industrie etrangere s’est emparee depuis peu du jeu de notre ami et de sa legende; mais nous pouvons affirmer que le tout a ete imagine, il y a une dizaine d’annees, au no. 56 de la rue: Monge, a Paris, dans la maison habitee alors par M. Viette, ministre de l’Agriculture, et batie sur l’emplacement de celle ou mourut Pascal, le 19 aout 1662.

Cái đồ chơi Tower of Hanoi mà Lucas xuất xưởng đầu tiên chỉ có 8 đĩa. Tôi đoán rằng vì lượng đĩa bé hơn mà Lucas không dùng chữ Brahma. Hình dưới đây là hình bìa của đồ chơi nguyên thuỷ của Lucas. Trong hình ta cũng thấy chữ “Annamite” và một anh chàng đội nón lá thời thuộc địa.


(Image Source: The Puzzle Museum)

Chuyên mục: Thuật Toán | Bình luận (4) »

Lần lữa có cấu trúc

Ngô Quang Hưng | 13 tháng 06, 2007 | Bản để in Bản để in

Trích bài viết rất tếu của giáo sư John Perry:

I have been intending to write this essay for months. Why am I finally doing it? Because I finally found some uncommitted time? Wrong. I have papers to grade, textbook orders to fill out, an NSF proposal to referee, dissertation drafts to read. I am working on this essay as a way of not doing all of those things. This is the essence of what I call structured procrastination, an amazing strategy I have discovered that converts procrastinators into effective human beings, respected and admired for all that they can accomplish and the good use they make of time.

Biết qua blog của Marc Andreessen (bạn có nhớ Mosaic 1.0?)

Chuyên mục: Trang web hay & Vui - Giải Trí | Bình luận »

Đầu trọc có cần gội không?

Ngô Quang Hưng | 13 tháng 06, 2007 | Bản để in Bản để in

Tờ Time giới thiệu một social networking site mới — http://wis.dm:

Do bald people need shampoo? Good question. When Yuchen Long, 14, posted this question on the beta version of a new site called wis.dm on Monday, she got 63 answers in less than three hours, but no clear consensus: while 77% of respondents said no, 23% clicked yes. All those votes made Long’s query one of the most popular on this new breed of social networking site that aims to bring people together based not on their school (as in Facebook), sexy pictures (MySpace) or job (LinkedIn), but rather on their own sense of humor and knack for keeping virtual conversations flowing.

Chuyên mục: Trang web hay & Vui - Giải Trí | Bình luận (3) »

Mã hóa tri thức như thế nào?

Ngô Quang Hưng | 12 tháng 06, 2007 | Bản để in Bản để in

Bên gỡ rối tơ lòng, bạn tvhvt có câu hỏi thú vị:

Sử dụng ngôn ngữ gì để mã hóa và lưu trữ thông tin, tri thức?

Nói chung, tôi mã hóa thông tin/tri thức học được bằng một algorithm/generative model. Thông tin/tri thức nào có Kolmogorov complexity càng thấp thì tôi nhớ càng lâu, hiểu càng sâu. Nói cách khác, sự đơn giản của algorithm và/hoặc sự đơn giản của generative model tạo thông tin đó tỉ lệ thuận với độ dễ hiểu và dễ nhớ của thông tin.

Xin giải thích lại đoạn văn trên bằng tiếng Việt như sau.

Tôi đã viết là khi đọc một quyển sách mới, tôi thường có thói quen “viết lại” sách theo ý mình. Viết lại theo nghĩa đen, hoặc ghi rất nhiều notes ở khắp nơi (trên giấy, trên blog, v.v.). Tôi cho rằng cá nhân mình chưa thật sự hiểu một môn học nào đó cho đến khi mình có thể từ một lượng data rất nhỏ là đã có thể tự xây dựng lại nền tảng lý thuyết của môn đó. Cách tốt nhất để thử xem mình có hiểu môn học không là trình bày lại toàn bộ môn học mà không cần bất kỳ tham khảo gì xung quanh mình (Internet, sách vở, v.v.). Vì thế, tôi đi giảng bài trong lớp không bao giờ mang notes/books theo. Với các môn lý thuyết thì 95% số lectures là tôi vào lớp với vài cục phấn. Năm phần trăm còn lại, phải mang notes theo, là dành cho các đề tài tôi chưa thật sự hiểu.

Để làm được như thế, ta không thể nào đọc/học theo kiểu cưỡi ngựa xem hoa. Trước khi đọc chứng minh một định lý nào đó, tôi luôn dành một ít thời gian thử tự chứng minh nó. Nếu quyển sách viết rất tốt thì chúng ta thật sự không cần đọc nhiều chứng minh cho lắm (trừ các định lý cực kỳ bất ngờ, là đột phá trong ngành!).

Trong các ví dụ trên tôi dùng các môn lý thuyết làm dẫn chứng. Đối với các môn kỹ thuật hơn một chút, networking chẳng hạn, thì có cực kỳ nhiều chi tiết kỹ thuật lắt nhắt khó nhớ. Điều này đúng cho hầu hết các ngành engineering phải giải quyết các vấn đề thực tế. Generative model của mình sẽ phải deal với nhiều noise. Trong trường hợp này, tôi sẽ cố tạo generative model cho các ý tưởng chính của ngành: nguyên tắc KISS, distributive tốt hơn centralized, local tốt hơn global, ARQ, randomization, v.v. Sau một thời gian, ta sẽ thấy là tổng số ý tưởng original trong networking có thể đếm trên đầu ngón tay. Còn lại chỉ là các biến thể be bé để giải quyết nhiễu.

Đoạn trên có … nhiễu quá không?

Chuyên mục: Dành cho du học sinh | Bình luận (7) »

Sinh sperm rồi mới sinh cha

Ngô Quang Hưng | 12 tháng 06, 2007 | Bản để in Bản để in

Sắp đến Father’s Day, tờ New York Times có bài ca tụng các vận động viên bơi lội, bọn biến đàn ông thành cha. Luật số lớn (law of large numbers):

But men have the overwhelming quantitative edge in the gamete games. Whereas current evidence suggests that a human female is born with all the eggs she will have, and that only about 500 of her natal stock of one million will ever ripen and have a shot at fertilization, a male from puberty onward is pretty much a nonstop sperm bakery. Each testicle generates more than 4 million new sperm per hour, for a lifetime total of maybe 12 trillion sperm per man (although the numbers vary with the day and generally slope downward with age).

The average ejaculation consists mostly of a teaspoon’s worth of nonspermic seminal fluid, a viscous mix of sugars, citric acid and other ingredients designed to pamper and power the sperm cells and prepare them for difficult times ahead; the sperm proper account for only about 1 percent of the semen mass. Yet in that 1 percent may be found 150 million sperm, 150 million human aspirants yearning to meet their mammoth other halves.

Chuyên mục: Nghiên cứu nghiên kiếc | Bình luận (1) »

Một cây làm chẳng nên non

Ngô Quang Hưng | 11 tháng 06, 2007 | Bản để in Bản để in

Nhớ xem đến cuối.

Biết qua unfogged.

Chuyên mục: Vui - Giải Trí | Bình luận (2) »

Giao diện tương lai

Ngô Quang Hưng | 06 tháng 06, 2007 | Bản để in Bản để in

Giống trong phim Minority Report.

Chuyên mục: Nghiên cứu nghiên kiếc | Bình luận »

Tản mạn về sở hữu trí tuệ … lậu [3]

Ngô Quang Hưng | 04 tháng 06, 2007 | Bản để in Bản để in

2. Có lý do nào chính đáng bào chữa cho việc dùng IP lậu?

Để trả lời thỏa đáng câu hỏi này thì ta cần xác định xem “chính đáng” về mặt nào? Có hai phương diện chính: đạo đức và pháp luật. (Có những thứ không phạm pháp nhưng vô đạo đức và ngược lại, do đó hai phương diện này phần nào độc lập nhau.)

2a. Phương diện đạo đức

Việc anh X lấy một sản phẩm không miễn phí về dùng có “bào chữa” được về mặt đạo đức hay không tưởng chừng như đơn giản. Tuy nhiên, suy nghĩ một lúc thì thấy vấn đề phức tạp hơn một chút. Để minh họa cho một mô hình tương đối thô sơ giúp trả lời câu hỏi này, hãy xét một vài ví dụ cụ thể:

  1. Nạn đói đang hoành hành, X nghèo, không còn cách nào khác là đi ăn cắp gạo từ nhà một địa chủ. (Chuyện địa chủ này là người tốt hay xấu không quan trọng.)
  2. Nhà X nghèo, X hay đến giảng đường một đại học tư học ké, không trả tiền.
  3. Nhà X nghèo, X lười lao động, hay đi lấy gạo từ nhà địa chủ ăn.
  4. Đang có bão rất lớn, các cửa hàng không có người trông. Cũng như nhiều người khác, X nhân cơ hội hôi của được một cái Plasma TV to, cái mà bình thường X không có tiền mua. (Xảy ra hồi bão Katrina ở New Orleans.)
  5. X thay điện thoại di động và/hoặc laptop xoành xoạch, nhưng lại dùng các phiên bản Windows và MS Office lậu. (Chú ý rằng giá một hệ điều hành thường rẻ hơn giá một điện thoại di động.)
  6. X chép phần mềm lậu đem bán ngoài chợ.

Nếu phải đặt các ví dụ trên vào một trục, mà một cực là “hành vi bào chữa/chấp nhận được”, và cực kia là “hành vi không bào chữa/chấp nhận được”, thì tôi sẽ đặt các ví dụ trên như sau

trucbaochua.jpg

Tại sao tôi lại xếp hạng các ví dụ này như thế? Có nhiều tham số cho bài toán classification này. Tôi chọn ra hai tham số chính: (1) tính cần thiết của sản phẩm cho X, và (2) khả năng chi trả của X cho sản phẩm này. Hai tham số này sẽ quyết định hành vi của X là bào chữa được hay không. Bản thân tính “bào chữa được” (justifiability) cũng không phải là một biến nhị phân, mà là một spectrum từ “tuyệt đối không bào chữa được đến “tuyệt đối bào chữa được”. Trong ví dụ 1 thì gạo tuyệt đối cần thiết cho X và X không có khả năng chi trả, cho nên bào chữa được. Ví dụ 6 thì hoàn toàn ngược lại. Ví dụ 2 và 4 khác nhau ở chỗ: học lóm là việc cần thiết cho cơ hội tiến thân của X, còn Plasma TV thì không, mặc dù X không có khả năng chi trả cho cả hai thứ.

Khi ta đã nhìn vấn đề bằng mô hình phân loại đơn giản trên, ta có thể thấy các hành vi dùng IP lậu thông thường khá tương đồng với các ví dụ đã dẫn:

  • Chúng ta còn rất nghèo, không có tiền mua sách gốc, dùng e-book để học: giống ví dụ 2.
  • Chúng ta còn rất nghèo, không có tiền mua sách gốc, download e-book truyện Harry Porter mới nhất: giống ví dụ 4.
  • Chúng ta không quá nghèo, đáng lẽ có thể mua CD/DVD được thoải mái, nhưng vẫn download nhạc, phim lậu dùng: giống ví dụ 5.
  • Vân vân.

Chuyên mục: KHMT và luật pháp | Bình luận (8) »