Тёмный
No video :(

Stanford Lecture: Don Knuth-"Dancing Links" (2018) 

Stanford Online
Подписаться 625 тыс.
Просмотров 43 тыс.
50% 1

Опубликовано:

 

28 авг 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 30   
@unixbhaskar
@unixbhaskar 5 лет назад
As usual loads to learn from. He has been a constant source of inspiration to millions. An extremely valuable man. You are a true rockstar Don!
@andrewwalker1931
@andrewwalker1931 5 лет назад
God I love this man. Keep cranking it out, Don!
@snarkyboojum
@snarkyboojum 5 лет назад
Don gets down to business at 9:00 :)
@femioyekan8184
@femioyekan8184 Год назад
Thank you so much for this crucial knowledge.
@nirgle
@nirgle 5 лет назад
Fantastic talk
@WahranRai
@WahranRai 4 года назад
I am sure he never been in a disco, and he created the dancing links !
@zhang7997
@zhang7997 3 года назад
I know this is not the point but does anyone know the notebook he's using please? looks beautiful, smooth, and great
@MIT60346
@MIT60346 5 лет назад
Long live Knuth
@Think567
@Think567 5 лет назад
Yeah this guy is amazing.
@WahranRai
@WahranRai 4 года назад
Great man !!!
@david203
@david203 2 года назад
Yes, his program would be very fast for a beginner's sudoku problem, where there is just one way to place each digit. But there are much more advanced problems, where advanced logical tactics have to be used. Just as an example, if a row or box contains two cells with two possible entries, say 3 7, then you know that that row or box must contain both 3 and 7, you just don't know in which order. That fact then excludes 3 and 7 from appearing in certain other cells. Solving a puzzle using trial and error (dancing links) can solve quickly for simple puzzles. But some puzzles will require lots of backtracking, which tends to increase the memory references and execution time exponentially. Dancing links for sudoku should be tested with a sudoku having a maximal amount of backtracking, to make sure it will complete in a reasonable time. Such a test can be done easily without finding a maximally-complex sudoku by modifying the dancing links program to deliberately use backtracking every time backtracking is possible.
@bleachisback
@bleachisback 2 года назад
As mentioned in the video, the problem of solving a sudoku is NP-Hard (and NP-Complete), so there will always be some sort of exponential complexity involved. The best we can do is use some heuristics to simplify it in most cases. Most solvers use a naive approach of simply iterating through every number and backtracking, and this approach still takes a reasonable amount of time (a few seconds) on most modern computers. The dancing links algorithm uses the heuristic of picking constraints with the fewest options to satisfy them (or the option which satisfies the most constraints), which narrows down the guessing tremendously. With the data structure proposed as well, it can backtrack in constant time rather than the (at least) linear time required otherwise. Applied towards a specific problem (such as specifically sudoku), and the data structure can even be stored in static memory. If we tried applying first-order logic, we would still have to guess which rules to apply to which pieces of knowledge, and knowledge would grow exponentially in that way as well.
@david203
@david203 2 года назад
@@bleachisback Thank you for these good comments. I think for sudoku, the practicality of a general dancing links algorithm has to be tested using actual puzzles. I would expect some puzzles to be solved in a fraction of a second, while others might require quite a long time. How long depends on the amount of backtracking, so a good in the worst case test would be a computer-generated sudoku having a provably maximum amount of backtracking required.
@jurepustoslemsek7882
@jurepustoslemsek7882 2 года назад
@@david203 I happen to be writing a Bachelor's thesis (and plan on continuing research afterwards) precisely on this algorithm. Knuth indeed tested this approach on actual puzzles - and found that it solves even the most difficult puzzles in less than 300 steps, and it solves most of them in less than 100 steps, which is pretty much instant on any reasonable hardware. I tried this algorithm on the queens problem - and it finds a solution for a 30x30 chess board (with 30 non-attacking queens) in a matter of seconds, while a regular depth-first search pretty much becomes useless at around 13x13 (however, there are algorithm that solve this specific problem much faster, some of them even using dancing links in a different way from this algorithm). You are absolutely right that this specific algorithm would be terrible for many puzzles - there are generalized versions of this algorithm that can solve many more puzzles, and even those don't work very well for many puzzles and problems that require backtracking, as I found with my own experiments. Of course, there are algorithms that work faster for specific puzzles than this very general algorithm - for example, I tried to solve the vertex cover problem using a generalized variant of this algorithm, and it ended up performing absolutely terribly compared to a purpose-made algorithm, but my theory is that we can use dancing links to make the purpose-made algorithm faster, but the data structure will perhaps looks quite different.
@naturereflect4991
@naturereflect4991 5 лет назад
awesome 😍 😎
@magicalmarvin7060
@magicalmarvin7060 5 лет назад
Perhaps some sort of death clock ...
@dinasina3558
@dinasina3558 3 года назад
he is backtracking in realtime
@harolddavies1274
@harolddavies1274 2 года назад
lol
@user-wp5ut9du5r
@user-wp5ut9du5r 4 года назад
Why the people laugh at him? He is a great person!
@DrWhom
@DrWhom 3 года назад
He makes jokes. Which you did not get.
@user-wp5ut9du5r
@user-wp5ut9du5r 3 года назад
@@DrWhom I can't find the G point :(
@qeithwreid7745
@qeithwreid7745 2 года назад
My friend which joke requires explanation - I can briefly explain if you want and you give me a time point. His humour is part of his genius.
@dalex7777
@dalex7777 5 лет назад
I was like “111”
@sangramjitchakraborty7845
@sangramjitchakraborty7845 5 лет назад
♥️♥️♥️♥️♥️
@DrWhom
@DrWhom 3 года назад
MISTAKE AT 21:09 NOTICES IT AT 21:40
@MarkProffitt
@MarkProffitt 5 лет назад
@RU-vid please automatically delete the uh, I'm, & stammering at least from the audio. For extra credit trim the video during the new silent places if the video doesn't change.
@DrWhom
@DrWhom 3 года назад
Go give a better lecture a££hole
@ailrky4765
@ailrky4765 3 года назад
Do u know who he is?
Далее
WELCOME TO THE FAMILY, MOE! (Brawl Stars Animation)
00:40
Pitchmasters August 21st, 2024 Event
58:28
Stanford Lecture - Dancing Cells, Dr. Don Knuth I 2023
1:32:47
Wrong Turn on the Dragon - Numberphile
7:09
Просмотров 422 тыс.
Stanford Lecture: Donald Knuth-"Why Pi?"(2010)
1:39:33
Просмотров 88 тыс.
Someone improved my code by 40,832,277,770%
28:47
Просмотров 2,5 млн
Donald Knuth - My advice to young people (93/97)
4:42
Просмотров 706 тыс.