Владимер Арнольд наверное имел ввиду, про погрешность с плавающей точкой, там погрешность измерения считается, не по абсолютной величине, а по отностельной и для двойной точности выделяется 54 бит (2^54) знаков после запятой, 1 бит на знак дается, а 9 бит на степень. Соответственно можно посчитать ошибку в округлении при расчетах при каждой итерации, после можно оценить глобальную ошибку заранее
будучи магистрнатом, считал задачу методом конечных элементов, и как то присутсововал при разговаре аспиранта и научрука. у аспиранта не решилась задача. так вот пожилой доктор физ мат наук который в ворде навряд ли разбирается. объяснил в чем ошибка и как нужно правильно считать. позже все правильно вышло...
Лет уже 30 назад отец пытался объяснить мне слабость компьютеров и силу ума на такой задаче: я на БК-0010-01 написал программку, которая считала факториал в цикле, тупо умножая, а он в соседней комнате на бумажке с ручкой считал тот же факториал по сокращённой формуле, которую он знал, а я нет. На малых значениях компьютер, конечно, считал быстрее, отец даже записать не успевал условие, а вот на больших он не только успевал получить ответ, но и чаю попить.
Я не знаю в каком вузе дежурные так погано содержат доски но нас замдекана высушил и отдраивали доску три раза в чистой воде пока разводов не осталось.
пиздуй в казарму - там только и занимаются хуйнёй по вытиранию досок, по покраске газонов, по застеливанию кроватей... и орут "можемповторить" и "киевзатридня"😂😂😂
Что за бред? Чего там квантового? Я знаю ученых, которые для расчетов используют тот же Python, я же сам использую тот же питон для криптографии в лоб (алгоритм Диффи-Хелмена) с числами в сотни знаков, и будь там хоть в одной цифре хоть иногда ошибка - все бы грохнулось очень громко. Но все работает. Все вычислительные алгоритмы работают согласно спецификациям на точность (да, работа с вещественными числами предполагает округление [причем в двоичной системе], которое необходимо учитывать, но с теми же целыми можно работать и с сотнями, и с тысячами и с миллионами знаков без потери точности).
Имеется наблюдаемый факт, вычисления дали разные результаты. Арнольд прямо говорит, что за ошибки компьютера он не отвечает, причины могут быть разные, но они налицо. А за свои вычисления отвечает и докапывается до первопричин. Мне в этом отрывке нравится именно его поведение в условиях неполной информации. Он не исключает самых диковатых гипотез, пока у них нет настоящего опровержения. Только так можно открыть что-то действительно прорывное. Могу предположить, что библиотеки того же питона для работы с длинными числами имеют низкоуровневое дублирование или контроль четности, чтобы исключить сбои процессора или памяти, также на это может влиять класс выбранных компонентов. Это непринципиально, главное, что Арнольд как ученый готов к этой ситуации, а не отбрасывает ее сходу с возгласом "такого не может быть потому что не может быть никогда". А то, что он возможно ошибается в причинах ошибок компьютера, ничего в моей оценке этого эпизода не меняет.
Здесь речь идет о том, что 3 процента вычислений давали разные результаты, при этом компьютер ошибался в 3 раза чаще, чем Арнольд. На счет ваших предположений по поводу библиотек питона - они не верны. Вероятность аппаратного сбоя компьютера отлична от нуля, но ей очень далеко до тех 3-х процентов, о которых идет речь. Обычный бытовой компьютер может выполнить квадриллионы вычислений без ошибок, и принимать во внимание вероятность аппаратной ошибки при вычислениях не имеет смысла - она слишком мала, если она произойдет, то скорее всего программа аварийно завершится, а для особо ответственных вычислений можно выполнить их параллельно на нескольких компьютерах. Бывают ошибки в программах (которые пишут люди), но на вычислительных задачах они дают одинаковый стабильно ошибочный результат. Кстати, компьютер переводится как вычислитель, и в этой области с ним не сравнится ни один человек как по скорости, так и по точности. Каким бы Арнольдом не был этот человек, он не сможет превзойти в 3 раза по точности вычислений компьютер (снабженный нормальными тестированными программами).
MrMaxAmn 3% это действительно многовато. Скорее всего вы правы и Арнольд обошел не столько компьютер, сколько не очень грамотную программу своих студентов. Но, повторюсь, не считаю, что видео бросает какую-то тень на Владимира Арнольда. Он действовал в своем стиле и достигал своих целей. Скорее это интересный пример взаимодействия ученых старой школы с совершенно новыми условиями существования науки.
Арнольд говорит о сорокозначных числах, но не уточняет, какие это числа - целые или вещественные. Если он дал задачу с вещественными числами, но не уточнил, что вычисления нужно выполнять с 40 значащими цифрами, то его студенты могли написать программу, используя стандартный double, где число значащих цифр 15.95 (53 двоичных бита). И конечно тут будут расхождения с его результатами, причем чем больше итераций в вычислениях, тем больше будут расхождения, так как ошибки округления накапливаются. Если же речь идет о сорокозначных целых и целочисленных вычислениях, то нужно быть просто кривым программистом, чтобы написать программу, которая ошибется хотя бы на 1. Но такая программа (с ошибкой) будет давать всегда неверный результат.
@@MrMaxAmn Ошибка программиста - это тоже часть решения. И если программа наврала, значит ответ неверен. И решающий задачу должен учитывать этот риск и перепроверять результат доступными ему способами, а не молиться на компьютер. Арнольд говорит именно о том, что многие глупыши на компьютер именно молятся, создали из него идола, думают, что если у него есть двадцатиядерный компьютер с Википедией, то они уже умные. А на самом деле компьютер это просто счёты, а счёты хоть и помогают в вычислениях, но ещё ни одного дурака не сделали умным, разве что оного дурака бить по голове теми счётами, пока не поумнеет, но это уже другая история.
попробуй поработай с числами, если одно от другого отличается на 60 порядков. Человек с этим справится может. А компьютер, с его типом "double" сам хрен заметит, что происходит
Ну, вы загнули. )) Как-то раз я в Excel'е я сделал маленькую програмку вычисления любого количества знаков. Позже я обнаружил, что в Maple это уже сделано. Maple считал раза в 4 быстрее
я программирую на компьютере да да никак не могу вычислить дважды два он мне то пять в ответе выдаёт то ваще отказывается считать и начинает петь про паровоз а вы говорите сороказначные числа нет надо на счёты переходить а то и на абак 000100010001111001110101110
Я как программист с большим стажем могу сказать, что он врёт. Если компьютер исправный - он всегда будет выдавать тот же результат, если нет случайных чисел
Во-первых, это могут быть bit flips. Арнольд наверняка рассказывал про времена, когда память была без ECC. Во-вторых, если у тебя параллельные вычисления, то ты можешь получить разные ответы даже если не использовал случайных чисел. Порядок действий (например, сложений) может оказаться другим и накопится ошибка. А если алгоритм неустойчивый, то ошибка может быть очень существенной.
@@arzas5242 Если программа работает в одном потоке и не использует команды random, то при одинаковых входных данных просто обязан быть одинаковый результат. Даже, если не стоит память с коррекцией ошибок. Если задачу возможно посчитать человеку за не большое время - то компьютер посчитает это намного быстрее, и нет смысла писать программу в несколько потоков.
А проверить результат иным алгоритмом на том же компьютере религия не позволяет? ) Соглашусь пожалуй с тем, что человек попал на излом старого и нового и с достаточной степенью юмора и мудрости пытается к этому адаптироваться.
Арнольд прекрасно адаптировался, уверяю вас )) Нет никакого "излома старого и нового". Компьютеры возникли не вчера, а почти сразу после 2-мировой войны. Просто считали не так быстро. У математиков противоречий с ними нет и не было.
Ничего не сказал нового, ценности никакой в его словах нет. В 99% вычислительных задачах 99% людей будут допускать ошибки, решать медленно или не решать вовсе - 99% компьютеров будут решать правильно и быстро. В 1% вычислительных задачах 1% людей решат медленно но правильно - 100% компьютеров неправильно. Так себе примеры, особенно когда сейчас задачи могут решаться не только приближённо, но и АНАЛИТИЧЕСКИ. Да и если ты дашь дёру компуктеру, ты должен быть Эйнштейном или Арнольдом или ещё каким-нибудь хуем с горы, незаурядных талантов и посвятить пол жизни этой области. То что компьютеры умеют не всё, это и дураку понятно. Проблемы погрешности вычислений эвм сильно преувеличены, больше звучало как хвастовство, хотя этот человек заслужил себя так вести.
Когда учёный-математик деградирует, вырождается как теоретик, он начинает вычислять, причём много, и делать из этого "открытие", и пытается это ещё обобщить и экстраполировать на другие области науки. В последние годы Арнольд реально вырождался, хотя в молодые годы создал много нового и интересного. Пытался найти хаос в числах, притянуть за уши дифуры и динамические системы. После его смерти эти его квазиоткрытия как-то быстро забылись и теперь ими занимаются разве только его фанаты-олдфаги.
Владимер Арнольд наверное имел ввиду, про погрешность с плавающей точкой, там погрешность измерения считается, не по абсолютной величине, а по отностельной и для двойной точности выделяется 54 бит (2^54) знаков после запятой, 1 бит на знак дается, а 9 бит на степень. Соответственно можно посчитать ошибку в округлении при расчетах при каждой итерации, после можно оценить глобальную ошибку заранее
Как интересно было бы ходить к нему на лекции
Как же ютубовских комментаторов разорвало от троллинга Владимира Игоревича
будучи магистрнатом, считал задачу методом конечных элементов, и как то присутсововал при разговаре аспиранта и научрука. у аспиранта не решилась задача. так вот пожилой доктор физ мат наук который в ворде навряд ли разбирается. объяснил в чем ошибка и как нужно правильно считать. позже все правильно вышло...
Лет уже 30 назад отец пытался объяснить мне слабость компьютеров и силу ума на такой задаче: я на БК-0010-01 написал программку, которая считала факториал в цикле, тупо умножая, а он в соседней комнате на бумажке с ручкой считал тот же факториал по сокращённой формуле, которую он знал, а я нет. На малых значениях компьютер, конечно, считал быстрее, отец даже записать не успевал условие, а вот на больших он не только успевал получить ответ, но и чаю попить.
Мораль?)
@@bohdan_zoshchenko знайте сокращенные формулы!))
@@bohdan_zoshchenko Мораль сей басни такова: не лезьте голым на слона!
Я когда-то имел разговор с Арнольдом в течение 3 часов. Этот разговор произвел на меня очень благоприятное впечатление.
Это действительно занимательно. Отлично, сэр.
Дайте ссылку на ваш разговор
1:15 Компьтер сам ничего не вычисляет. Вопрос правильности ввода данных или верности самого алгоритма, написаного программистом.
Компьютер сделает всё, что вы ему скажете. Но это может сильно отличаться от от того, что вы имели в виду.
Я не знаю в каком вузе дежурные так погано содержат доски но нас замдекана высушил и отдраивали доску три раза в чистой воде пока разводов не осталось.
Это летняя школа, дело происходит не в вузе.
гордись жизнью в концлагере брОу)
пиздуй в казарму - там только и занимаются хуйнёй по вытиранию досок, по покраске газонов, по застеливанию кроватей... и орут "можемповторить" и "киевзатридня"😂😂😂
Что за бред? Чего там квантового? Я знаю ученых, которые для расчетов используют тот же Python, я же сам использую тот же питон для криптографии в лоб (алгоритм Диффи-Хелмена) с числами в сотни знаков, и будь там хоть в одной цифре хоть иногда ошибка - все бы грохнулось очень громко. Но все работает. Все вычислительные алгоритмы работают согласно спецификациям на точность (да, работа с вещественными числами предполагает округление [причем в двоичной системе], которое необходимо учитывать, но с теми же целыми можно работать и с сотнями, и с тысячами и с миллионами знаков без потери точности).
Имеется наблюдаемый факт, вычисления дали разные результаты. Арнольд прямо говорит, что за ошибки компьютера он не отвечает, причины могут быть разные, но они налицо. А за свои вычисления отвечает и докапывается до первопричин. Мне в этом отрывке нравится именно его поведение в условиях неполной информации. Он не исключает самых диковатых гипотез, пока у них нет настоящего опровержения. Только так можно открыть что-то действительно прорывное.
Могу предположить, что библиотеки того же питона для работы с длинными числами имеют низкоуровневое дублирование или контроль четности, чтобы исключить сбои процессора или памяти, также на это может влиять класс выбранных компонентов. Это непринципиально, главное, что Арнольд как ученый готов к этой ситуации, а не отбрасывает ее сходу с возгласом "такого не может быть потому что не может быть никогда". А то, что он возможно ошибается в причинах ошибок компьютера, ничего в моей оценке этого эпизода не меняет.
Здесь речь идет о том, что 3 процента вычислений давали разные результаты, при этом компьютер ошибался в 3 раза чаще, чем Арнольд.
На счет ваших предположений по поводу библиотек питона - они не верны. Вероятность аппаратного сбоя компьютера отлична от нуля, но ей очень далеко до тех 3-х процентов, о которых идет речь.
Обычный бытовой компьютер может выполнить квадриллионы вычислений без ошибок, и принимать во внимание вероятность аппаратной ошибки при вычислениях не имеет смысла - она слишком мала, если она произойдет, то скорее всего программа аварийно завершится, а для особо ответственных вычислений можно выполнить их параллельно на нескольких компьютерах.
Бывают ошибки в программах (которые пишут люди), но на вычислительных задачах они дают одинаковый стабильно ошибочный результат.
Кстати, компьютер переводится как вычислитель, и в этой области с ним не сравнится ни один человек как по скорости, так и по точности. Каким бы Арнольдом не был этот человек, он не сможет превзойти в 3 раза по точности вычислений компьютер (снабженный нормальными тестированными программами).
MrMaxAmn 3% это действительно многовато. Скорее всего вы правы и Арнольд обошел не столько компьютер, сколько не очень грамотную программу своих студентов. Но, повторюсь, не считаю, что видео бросает какую-то тень на Владимира Арнольда. Он действовал в своем стиле и достигал своих целей. Скорее это интересный пример взаимодействия ученых старой школы с совершенно новыми условиями существования науки.
Арнольд говорит о сорокозначных числах, но не уточняет, какие это числа - целые или вещественные. Если он дал задачу с вещественными числами, но не уточнил, что вычисления нужно выполнять с 40 значащими цифрами, то его студенты могли написать программу, используя стандартный double, где число значащих цифр 15.95 (53 двоичных бита). И конечно тут будут расхождения с его результатами, причем чем больше итераций в вычислениях, тем больше будут расхождения, так как ошибки округления накапливаются.
Если же речь идет о сорокозначных целых и целочисленных вычислениях, то нужно быть просто кривым программистом, чтобы написать программу, которая ошибется хотя бы на 1. Но такая программа (с ошибкой) будет давать всегда неверный результат.
@@MrMaxAmn
Ошибка программиста - это тоже часть решения. И если программа наврала, значит ответ неверен. И решающий задачу должен учитывать этот риск и перепроверять результат доступными ему способами, а не молиться на компьютер.
Арнольд говорит именно о том, что многие глупыши на компьютер именно молятся, создали из него идола, думают, что если у него есть двадцатиядерный компьютер с Википедией, то они уже умные. А на самом деле компьютер это просто счёты, а счёты хоть и помогают в вычислениях, но ещё ни одного дурака не сделали умным, разве что оного дурака бить по голове теми счётами, пока не поумнеет, но это уже другая история.
попробуй поработай с числами, если одно от другого отличается на 60 порядков. Человек с этим справится может. А компьютер, с его типом "double" сам хрен заметит, что происходит
Не хочу тебя pасстpаивать, но комnьютеp отнюдь не огpаничен тиnом double
Нужно уметь программировать
какой дабл, есть длинные вычисления с любым количеством знаков, лишь бы памяти хватило
так double и не заметит, нужно использовать другие типы. decimal в C#, например
Ну, вы загнули. )) Как-то раз я в Excel'е я сделал маленькую програмку вычисления любого количества знаков. Позже я обнаружил, что в Maple это уже сделано. Maple считал раза в 4 быстрее
я программирую на компьютере
да да
никак не могу вычислить дважды два
он мне то пять в ответе выдаёт
то ваще отказывается считать
и начинает петь про паровоз
а вы говорите сороказначные числа
нет
надо на счёты переходить
а то и на абак
000100010001111001110101110
на счет древних русов
😊👍👍👍♥️♥️♥️♥️♥️♥️⚜⚜⚜
Иногда он несёт бред.
Нес...
Здесь идет речь о погрешностях с плавающей точкой
Иногда все несут бред. Поточнее...
Я как программист с большим стажем могу сказать, что он врёт. Если компьютер исправный - он всегда будет выдавать тот же результат, если нет случайных чисел
А как же метод Монте-Карло или машинное обучение или те же самые нейронные сети?
Во-первых, это могут быть bit flips. Арнольд наверняка рассказывал про времена, когда память была без ECC.
Во-вторых, если у тебя параллельные вычисления, то ты можешь получить разные ответы даже если не использовал случайных чисел. Порядок действий (например, сложений) может оказаться другим и накопится ошибка. А если алгоритм неустойчивый, то ошибка может быть очень существенной.
Почитай, что такое PUF, и вообще ознакомься с цифровой схемотехникой поближе, "программист". Наверняка формошлёп какой-нибудь.
Дело в том что все знают какой математик Арнольд,но никто не знает какой вы программист.
@@arzas5242 Если программа работает в одном потоке и не использует команды random, то при одинаковых входных данных просто обязан быть одинаковый результат. Даже, если не стоит память с коррекцией ошибок. Если задачу возможно посчитать человеку за не большое время - то компьютер посчитает это намного быстрее, и нет смысла писать программу в несколько потоков.
Гений
А проверить результат иным алгоритмом на том же компьютере религия не позволяет? ) Соглашусь пожалуй с тем, что человек попал на излом старого и нового и с достаточной степенью юмора и мудрости пытается к этому адаптироваться.
енто "излом" единственной извилины в твоем крохотном мозгЕ. ... бггг
Арнольд прекрасно адаптировался, уверяю вас )) Нет никакого "излома старого и нового". Компьютеры возникли не вчера, а почти сразу после 2-мировой войны. Просто считали не так быстро. У математиков противоречий с ними нет и не было.
Это он троллит так, конечно он в теме про внутреннее представление вещественного числа)
Ничего не сказал нового, ценности никакой в его словах нет. В 99% вычислительных задачах 99% людей будут допускать ошибки, решать медленно или не решать вовсе - 99% компьютеров будут решать правильно и быстро. В 1% вычислительных задачах 1% людей решат медленно но правильно - 100% компьютеров неправильно.
Так себе примеры, особенно когда сейчас задачи могут решаться не только приближённо, но и АНАЛИТИЧЕСКИ. Да и если ты дашь дёру компуктеру, ты должен быть Эйнштейном или Арнольдом или ещё каким-нибудь хуем с горы, незаурядных талантов и посвятить пол жизни этой области.
То что компьютеры умеют не всё, это и дураку понятно. Проблемы погрешности вычислений эвм сильно преувеличены, больше звучало как хвастовство, хотя этот человек заслужил себя так вести.
Все надо считать в целых чи лах. :-)
Когда учёный-математик деградирует, вырождается как теоретик, он начинает вычислять, причём много, и делать из этого "открытие", и пытается это ещё обобщить и экстраполировать на другие области науки. В последние годы Арнольд реально вырождался, хотя в молодые годы создал много нового и интересного. Пытался найти хаос в числах, притянуть за уши дифуры и динамические системы. После его смерти эти его квазиоткрытия как-то быстро забылись и теперь ими занимаются разве только его фанаты-олдфаги.