Сегодня увидел на репетиторском канале (https://t.me/mimimaths) простенькую задачку на логику. И решил попробовать скормить ее ChatGPT и Gemini. Просто интереса ради. Вспомнил, что когда вышла ChatGPT 4-o в демках показывали, как она якобы может заменить учителей.

Задача об электричках
Задача об электричках

ChatGPT мне выдал сначала неверный ответ, а потом после наведения на верный ответ, смог дать верный ответ и объяснить его, не так и плохо, но если ты знаешь верный ответ, то наверное и репетитор тебе не нужен, так что тест на репетитора провален.

Я: изображение с задачей

ChatGPT 4-o (пер. с англ.): Задача состоит в том, сколько поездов прибудет на станцию ​​в час, если они будут проходить каждые 5 минут в противоположном направлении и их скорости будут одинаковыми.

Поскольку поезда ходят каждые 5 минут, мы можем подсчитать, сколько поездов проходит за один час.

В часе 60 минут, поэтому:

\frac{60}{5} = \text{12 поездов в час}

Таким образом, за один час на станцию ​​прибудут 12 поездов.

Я: Но ведь я то тоже еду на электричке, навстречу

ChatGPT 4-o: Отличное замечание! Действительно, вы движетесь навстречу встречным электричкам, и это влияет на частоту встреч.

Если предположить, что скорости вашей электрички и встречных одинаковы, то каждые 5 минут между встречами — это результат как их движения, так и вашего. В данном случае, время встречи сокращается в два раза. Это значит, что электрички на самом деле отправляются с вокзала каждые 10 минут, а вы встречаете их каждые 5 минут из-за встречного движения.

Тогда за один час на вокзал прибудет:

\frac{60}{10} = 6 \text{ электричек}

Таким образом, за час к вокзалу прибудет 6 электричек.

Gemini (1.5 Flash) выдал более интересные ответы. Сам к ответу он прийти не смог, а когда я ему его дал и попросил объяснить, объяснение было весьма бредовым. Если не читать внимательно, то можно даже местами начать верить в его логику. Длинные ответы, в которых ОЧЕНЬ МНОГО галлюцинаций, но читать смешно, поэтому я и захотел создать эту статью!

ДИАЛОГ С GEMINI ДОВОЛЬНО ДЛИННЫЙ, ТАК ЧТО САМЫЕ ИНТЕРЕСНЫЕ ЦИТАТЫ ИЗ НЕГО Я ВЫНЕС СРАЗУ ПОД ДИАЛОГОМ

Я: изображение с задачей

Gemini:

Понимание задачи:

  • Вы едете на электричке от вокзала.

  • Каждые 5 минут вам встречается электричка, идущая к вокзалу.

  • Скорости всех электричек одинаковые.

  • Нужно узнать, сколько электричек приедет на вокзал за час.

Решение:

  • Если каждые 5 минут встречается одна электричка, то за 60 минут (1 час) встретится:

    • 60 минут / 5 минут/электричка = 12 электричек.

Ответ: За час на вокзал приедет 12 электричек.

Пояснение: Представьте, что вы стоите на месте и считаете проезжающие мимо вас электрички. Каждые 5 минут одна электричка проезжает мимо вас и направляется к вокзалу. Значит, за час мимо вас проедет 12 электричек. Так как скорости всех электричек одинаковые, то все они доедут до вокзала примерно в одно и то же время. Следовательно, на вокзал за час прибудет 12 электричек.

Я: Но ведь я то тоже еду на электричке, навстречу

Gemini: Вы абсолютно правы! Я допустил упрощение в своих рассуждениях.

Давайте разберемся подробнее:

Если вы и встречные электрички движутся с одинаковой скоростью, то ситуация напоминает встречные потоки машин на дороге. Когда две машины движутся навстречу друг другу с одинаковой скоростью, расстояние между ними уменьшается вдвое быстрее, чем если бы одна из машин стояла на месте.

Таким образом, если каждые 5 минут вы встречаете одну электричку, то за 5 минут две электрички (ваша и встречная) преодолевают путь, равный двум расстояниям между станциями.

Чтобы найти, сколько электричек приедет на вокзал за час, нам нужно:

  1. Узнать, сколько расстояний между станциями преодолевают две электрички за час:

    • За 5 минут - 2 расстояния.

    • За 60 минут (1 час) - 2 расстояния/5 минут * 60 минут = 24 расстояния.

  2. Поделить общее количество пройденных расстояний на 2:

    • 24 расстояния / 2 = 12 электричек.

Ответ: Несмотря на то, что вы сами находитесь в движении, на вокзал за час приедет все равно 12 электричек.

Почему так происходит? Представьте, что вы стоите на месте, а все остальные электрички движутся. За час мимо вас проедет 12 электричек. Но если вы тоже двигаетесь, то просто встретите эти же 12 электричек чуть раньше. Количество электричек, прибывающих на вокзал, от этого не изменится.

Вывод: Даже учитывая ваше движение, ответ на задачу остается прежним: за час на вокзал приедет 12 электричек.

Я: На самом деле ответ - 6. А теперь объясни почему ты был неправ.

Gemini: Абсолютно верно! Вы правы, я допустил ошибку в своих рассуждениях. Давайте разберемся, почему правильный ответ — 6 электричек.

Почему предыдущие рассуждения были неверны:

  • Двойной подсчет: В предыдущих расчетах мы дважды учитывали каждую электричку — один раз, когда она встречалась нам, и второй раз, когда она прибывала на вокзал. Это привело к завышенному результату.

  • Неучет времени в пути: Мы не учли, что электричка, которую мы встретили в начале нашего пути, уже проехала некоторое расстояние. Следовательно, она прибудет на вокзал раньше, чем следующая встречная электричка.

Правильное решение:

  • Визуализация: Представим себе железнодорожное полотно, по которому движутся электрички. Каждые 5 минут мы встречаем одну электричку.

  • Анализ: За 60 минут (1 час) мы встретим 12 электричек. Но это не значит, что все они прибудут на вокзал одновременно. Первая встреченная электричка уже ближе к вокзалу, чем последняя.

  • Логический вывод: Если за 60 минут мы встречаем 12 электричек, то за это время на вокзал прибудет только половина из них, так как каждая вторая электричка, которую мы встретили, еще не доехала до вокзала.

Ответ: Таким образом, за час на вокзал приедет 6 электричек.

Пояснение: Представьте, что железнодорожное полотно — это лента транспортера, а электрички — это шарики, движущиеся по этой ленте. Если каждые 5 секунд на ленту попадает новый шарик, то за минуту на ленту попадет 12 шариков. Но в конце ленты будет только 6 шариков, так как за это время только половина шариков успела дойти до конца.

Цитаты из ответов Gemini, которые особенно меня позабавили:

60 минут / 5 минут/электричка = 12 электричек

За 5 минут две электрички (ваша и встречная) преодолевают путь, равный двум расстояниям между станциями

каждая вторая электричка, которую мы встретили, еще не доехала до вокзала

Какие выводы у меня напрашиваются:

  1. Пока что нейросети не могут полностью заменить репетиторов, при попытках использовать их в таких целях результаты будут неприятными - ученики могут запутаться и совершенно не научиться логическому (в данном примере) мышлению, что потенциально приведет к глобальной деградации

  2. С учетом того, насколько логика важна в программировании, программиста тоже нейросеть не может заменить, раз даже с такой задачкой справиться не может, сколько бы успешных попыток использования мы не видели в куче разных статей на том же хабре.

Причина, по которой каждая вторая электричка не доезжает до вокзала, видимо (сгенерировано в ChatGPT)
Причина, по которой каждая вторая электричка не доезжает до вокзала, видимо (сгенерировано в ChatGPT)

Комментарии (16)


  1. ganqqwerty
    08.10.2024 11:19
    +6

    Это все страшно весело и увлекательно, но я тут обнаружил, что подобные задачки начали давать на собеседованиях. Видимо как раз по причине того, что ИИ на них плохо заточен. Это плохой сигнал, мы скатываемся обратно в нулевые, как бы не пришлось сидеть с учебником "математический кружок в средней школе" при подготовке.


    1. Tiriet
      08.10.2024 11:19

      Плохой сигнал для кого? для тех, кто не осилил математику уровня средней школы, для тех, кто забыл математику уровня средней школы, или для тех, у кто вынужден на собеседованиях проверять- соответствуют ли кандидаты уровню средней школы?


      1. ganqqwerty
        08.10.2024 11:19

        Для тех, кто забыл математику уровня олимпиадок средней школы и не имеет никакого желания натаскиваться на решение таких задачек на время. Все же тот факт, что человек до этого лет 5-10 приносил различным компаниям прибыль должен давать ему некоторую поблажку. Я страшно уважаю детей, зачитывающихся книжками "В царстве смекалки" или "Диковинки в мире чисел", но настроженно отношусь к использованию таких задач в процессе собеседований.


  1. Palesandr
    08.10.2024 11:19

    удолите мой комментарий )


  1. webhamster
    08.10.2024 11:19
    +3

    В формулировке задачи видно, что сетка будет все время "соскальзывать" в понимании какой вокзал в какой момент имеется в виду. Это соскальзывание может породить неправильный ответ даже если будет казаться что сетка правильно поняла задачу. Кроме того, электричка длинная, и непонятно что считать моментом, когда мимо вас проехала электричка, всмето этого хорошо бы использовать более "точечный" объект. Поэтому я бы не стал сетке давать такое задание.

    Я переформулировал задачу по-другому: "Вы едете на велосипеде из пункта А в пункт Б. Каждые 5 минут вам встречаются велосипедисты, которые едут из пункта Б в пункт А. Сколько велосипедистов приедут в пункт А за час, если их скорость такая же как и у вас?"

    Ответ:

    Рассмотрим задачу:

    Вы движетесь на велосипеде из пункта А в пункт Б, а велосипедисты, которые едут из пункта Б в пункт А, встречаются вам каждые 5 минут. Задача состоит в том, чтобы определить, сколько велосипедистов прибудут в пункт А за 1 час.

    Решение:
    Обозначим скорость: Допустим, ваша скорость — v км/ч. Скорость встречных велосипедистов также равна v км/ч.

    Общая скорость сближения: Так как велосипедисты едут навстречу вам с такой же скоростью, то относительная скорость сближения между вами и встречными велосипедистами будет:

    Vобщая = V+V = 2V

    То есть, вы и встречные велосипедисты сближаетесь с удвоенной скоростью относительно друг друга.

    Расстояние между велосипедистами: Велосипедисты встречаются с вами каждые 5 минут. То есть за 5 минут вы преодолеваете определённое расстояние со скоростью сближения 2v.

    За 5 минут (это 1/12 часа) вы вместе с встречными велосипедистами преодолеваете:

    S = 2V * 1/12 = V/6


    км.

    Это расстояние — интервал между велосипедистами, которые едут из пункта Б в пункт А.

    Сколько велосипедистов пересекает пункт А за час: За один час каждый велосипедист проезжает расстояние v. Если каждый велосипедист занимает расстояние \frac{v}{6} между собой и следующим, то за час через пункт А пройдет:

    V / (V/6) = 6

    велосипедистов.

    Ответ:
    За один час в пункт А прибудут 6 велосипедистов.


    1. RusikR2D2
      08.10.2024 11:19
      +1

      Для корректного ответа требуюутся уточнения в условии задачи.

      • Уточните, как давно вы выехали. Может быть, вы уже целый день едете, а встречать велосипедисты начали только 5 минут назад. Тогда ответ будет "0"

      • Даже если считать что встречать они начали "сразу", то нужно уточнить, когда встретился первый - через 5 минут после старта или вот прямо сразу на старте..

      • Также в условии нет уточнения, что на протяжении всего пути вы сохраняете постоянную скорость. Возможно, к концу пути ваша скорость будет раза в два меньше и тогда встреченные ближе к концу просто не успеют доехать до пункта А.. Это на всякий случай, мы же не знаем как "мыслит" нейросеть.


      1. Akina
        08.10.2024 11:19
        +2

        Ну тогда можно дорассуждаться до того, что если самый первый прибудет на вокзал точно в момент начала подсчёта, то точно в момент завершения подсчёта на вокзал прибудет (тадам!) седьмой...


  1. Ukrainskiy
    08.10.2024 11:19
    +3

    Реши логическую задачу. Вы едете на электричке от вокзала. Навстречу вам, в сторону вокзала, едут другие электрички, которые вы встречаете каждые 5 минут. Скорости всех электричек, вашей и встречных, одинаковы. Сколько электричек прибывает к вокзалу за один час?

    GPT-4o:

    Задача решается через анализ встречных электричек, их периодичности и взаимосвязи со скоростью.

    Условие: вы встречаете электричку каждые 5 минут, и все электрички движутся с одинаковой скоростью, включая вашу.

    Так как скорости электричек одинаковы, можно предположить, что ваша скорость и скорость встречных электричек складываются. Это означает, что встречные электрички движутся относительно вас в два раза быстрее, чем каждая электричка по отдельности. Если вы встречаете электричку каждые 5 минут, это значит, что в одну сторону (к вокзалу) электрички отправляются каждые 10 минут.

    Следовательно, за один час:

    10/60 ​=6

    Таким образом, за один час 6 электричек прибывает к вокзалу.


    Просто немного переформулировал промпт. В чем смысл подобных статей? Показать как на каком-то одном синтетическом кейсе gpt справляется/не справляется? Хватит уже этого...


    1. dmitrystu
      08.10.2024 11:19

      Ну если учитывать off-by-one, вы встретите 13 электричек. Но да, на конечный ответ это не повлияет.
      У AI можно спросить, сколько весит 1 кубометр воды на глубине 10м воды. Ответ вас порадует. Хотя, с последними версиями не тестил.


  1. doryfish
    08.10.2024 11:19
    +6

    • нейросети не могут написать даже простую статью

    • нейросети не могут нарисовать даже простую фотографию

    • нейросети не могут создать даже простое видео

    • нейросети не могут справиться даже с простой математической задачкой на логику

    • --> (вы находитесь здесь) <--

    • нейросети не могут доказать даже простую теорему

    • нейросети не могут создать даже простую теорию

    • нейросети не могут рассудить даже бытовые конфликты

    • нейросети не могут управлять даже маленьким государством


    1. qiper
      08.10.2024 11:19

      • нейросети не могут даже нанести упреждающий ядерный удар


  1. orekh
    08.10.2024 11:19
    +4

    ChatGPT не смогла прочесть условие задачи с картинки, это не её конёк. А от Gemini Flash сообразительности не ожидалось - это самая дешёвая нейросеть из предлагаемых крупными участниками рынка, с трудом разговаривающая на русском, её достоинство - это способность работать с мегабайтным контекстом за копейки.


    1. ruomserg
      08.10.2024 11:19
      +4

      Меня всегда радуют аргументы сторонников нейросетей типа: "а если вот так промпт написать - то она ее решит!" или "а это надо задать другой нейросети, она ее решит!".

      Понимаете, друзья - это какая-то хрень, если сказать по-русски. Очевидно, что имея миллиарды весов - мы можем так стимулировать сеть, чтобы она выдала любую наперед заданную реакцию. Однако, если мы хотим чтобы AI был не на уровне курьеза и ликвидации избытков электричества в технической цивилизации - он должен уметь в математику и логику. Потому что в силу непонятных причин наш мир так устроен - что бОльшая часть явлений описывается математикой. А когда сетка периодически гонит всякую чушь - как ей можно доверять ? А если мы не можем ей доверять, то как мы должны проверять ее решения ? И сколько ты не говори что нужно использовать AI responsibly - бизнес готов использовать AI только и только тогда, когда у него сейчас человек решает эту задачу, а можно человека вынуть а LLM вставить. Если вам надо сохранить и LLM и человека чтобы он проверял решения за моделью и пытался тыкать в нее исправленными промптами чтобы она выдала другое решение - то это ни разу не сокращает затраты, и бизнес скоро это просечет!

      В сухом итоге - пока (и если не произойдет серьезного прорыва) - LLM пригодны только для задач, где оно делается "для галочки". То есть "изучи запрос, и вежливо но туманно откажи клиенту в возврате средств" в пайплайне магазина - это OK. Потому что вам не важно что именно будет написано клиенту - вы и так и этак не собираетесь возвращать деньги кроме как по решению суда (а может быть и по нему не собираетесь путем регулярной замены юрлица ведущего торговлю). А вот любое решение где это на что-то влияет - от расчета дозы препарата для дезинфекции до расчета крыла на прочность - нафиг нафиг... Скорее бы уже закон о маркировке продукции созданной/спроектированной с помощью AI. Маркер - красный череп с костями на фоне латинских букв "AI" занимающий не менее 1/4 видимой поверхности упаковки и/или рекламной поверхности...


  1. TerryChan2003
    08.10.2024 11:19

    Есть вопрос эта статья была создана до появления o1 или после появления? Если до то как бы уже устарело, есть новая модель, гипотеза не объективна


  1. notwithstanding
    08.10.2024 11:19

    60 минут / 5 минут/электричка = 12 электричек

    Формально это выражение верно, числовое значение и размерность найдены правильно.


  1. d00m911
    08.10.2024 11:19
    +1

    Начнём с того, что скорости электричек одинаковы - это далеко не полное условие. Каких, всех, кроме вашей, или вообще всех? Ну, и я, при том, что разрабатывал в своей жизни очень сложные штуки, затупил и ответил так же, как и ChatGPT. Делает ли это меня человеком, не способным решать логические задачи? Да нет, конечно же нет. После того, как я понял, что я ошибся (даже не в чем, а воспринял сам факт ошибки), я решил эту задачу за 5 секунд.

    Нейросети (LLM) все разные, и они являются своеобразным инструментом, которым нужно уметь пользоваться. Они могут решать очень комплексные и неочевидные задачи, но тупить в простых случаях. В общем, они способны ускорить решение различных задач в десятки раз, если руки у пользователя прямые. Пока вроде всем очевидно, что в ближайший год нейросети вряд ли заменят всех программистов (возможно, заменят часть джунов в силу оптимизации работы остальных).

    И да, тут справедливо отметили, что o1-preview в разы сообразительнее всего, что было до.