«Я мушу переглянути свою думку про ШІ»: як Claude Opus 4.6 розв’язав задачу Дональда Кнута
Дональд Кнут, американський комп’ютерний науковець та легендарний автор «Мистецтва програмування», днями опублікував статтю під назвою «Claude’s Cycles». В ній Дональд розказує, як модель Claude Opus 4.6 допомогла йому вирішити відкриту математичну проблему, над якою він сидів кілька тижнів. Кнут навіть зізнався, що йому доведеться переглянути свої погляди на генеративний ШІ після цього.

Що за задача
Якщо коротко, то Кнут писав новий матеріал про направлені гамільтонові цикли.
Примітка: гамільтонів цикл — це простий цикл у графі (як орієнтованому, так і неорієнтованому), який проходить через кожну його вершину рівно один раз і повертається до початкової вершини. Граф, що містить такий цикл, називається гамільтоновим.
Задача полягала в тому, щоб знайти загальний розклад дуг специфічного орграфа (з m3 вершинами) на три спрямовані гамільтонові цикли для всіх значень m > 2. Для m = 3 Кнут проблему розв’язав сам, але далі справа застопорилася.
Його колега, Філіп Стапперс, вирішив згодувати цю задачу Клоду, використавши точне початкове формулювання від Кнута. І ось тут починається найцікавіше — те, як саме вибудовувався процес інженерної роботи з ШІ.
Як ШІ працював
Філіп вирішив не просто закинути промт. Він налаштував цілий пайплайн для Клода, змушуючи його писати скрипти і жорстко контролюючи кожен його крок. Стапперс прямо заборонив Клоду починати нове дослідження без детального документування попереднього, давши йому таку настанову:
«Після КОЖНОГО запуску exploreXX.py НЕГАЙНО оновлюй цей файл [plan.md], перш ніж робити будь-що інше. Жодних винятків. Не починай наступне дослідження, поки попереднє не буде задокументовано тут».
Під таким тиском Клод реально почав перебирати алгоритмічні підходи. Спочатку він спробував пошук у глибину, але швидко зрозумів, що простір пошуку занадто величезний (627), і без хорошого відсікання це працює надто повільно. Потім перейшов до імітації відпалу. Модель знаходила локальні рішення, але сама ж дійшла адекватного висновку, що імітація відпалу може знайти рішення, але не може дати загальної конструкції. І лише на m=3, 5, 7, 9, 11). Цей код потім без проблем конвертували у компактний алгоритм на C.
Але, як потім Філіп зізнався Кнуту, процес був далеко не таким простим, як могло здатися на перший погляд. Клод постійно падав з випадковими помилками, після чого сесію доводилося рестартувати. Через ці падіння ШІ періодично губив результати попередніх пошуків. Також кожні
Але вишенька на торті була в кінці. Коли Філіп попросив Клода продовжити роботу і розв’язати ту саму задачу для парних значень m (після тріумфу з непарними), ШІ просто зламався.
«Через деякий час він, здавалося, застряг. Зрештою, він навіть не зміг більше правильно писати та запускати дослідницькі програми, дуже дивно. Тому я зупинив пошук», — розповів Філіп.
З оригіналом статті можете ознайомитися тут: www-cs-faculty.stanford.edu/.../papers/claude-cycles.pdf
Читайте також: «Довайбкодилися»: Claude Opus 4.6 написав код із багом, який призвів до збитків у $1.76 мільйона
29 коментарів
Додати коментар Підписатись на коментаріВідписатись від коментарів