Другой ИИ обыграл, да. Но тактика ИИ вполне пригодна для использования человеком, как оказалось. И человек с её помощью обыграл.
гениальный отвлекающий маневр - так вроде любой игрок на пару уровней выше начинающего что то подобное делает, это же почти основы игры в го.
В статье описано весьма абстрактно. Но "что-то подобное" возникает очень редко в обычных играх. Вероятно, именно поэтому у ИИ и оказалось слепое пятно - таких ситуаций попросту не было или они были, но в недостаточном количестве для обучения.
Сама тактика концептуально простая - построить живую группу внутри группы противника, а потом окружить группу противника. ИИ считает, что его большая окружающая группа живёт, когда на самом деле она мертва.
bool(...) даёт True, кстати, и это важное, и наверное, единственное отличие этого объекта от None.
Да. Остальные отличия - только в том, как эти объекты используются. Из документации:
None
This type has a single value. There is a single object with this value. This object is accessed through the built-in name None. It is used to signify the absence of a value in many situations, e.g., it is returned from functions that don’t explicitly return anything. Its truth value is false.
Ellipsis
This type has a single value. There is a single object with this value. This object is accessed through the literal ... or the built-in name Ellipsis. Its truth value is true.
Прям быстрого хака нет, насколько я знаю. Можно преобразовать значение в число с плавающей точкой, это будет некоторым приближением к экспоненте, если я не ошибаюсь.
Но ещё лучше будет использовать ReLU. Они проще вычисляются и ускоряют обучение.
Оценка снизу весьма грубая. Минимально доказанная невозможность универсального конструктора - 2 глайдера, если не ошибаюсь. Для них все возможные столкновения перечислены.
Для 3 глайдеров были попытки перечислить все столкновения, но полной и точной классификации, насколько я знаю, нет. Но в любом случае крайне маловероятно, что есть универсальный конструктор из 3 глайдеров.
С 4 глайдерами ситуация интересней. Пространство возможных конфигураций слишком большое, чтобы его можно было полностью перечислить с текущими вычислительными возможностями. Не исключено, что есть и универсальный конструктор среди них, но это, опять же, маловероятно.
Лично я бы оценил нижнюю границу в 8 глайдеров. С данным количеством можно сделать 2 "чистых" (не выпускающих глайдеры во все стороны) Кордер-двигателя, движущихся навстречу или перпендикулярно друг другу, и разнести их на произвольное расстояние. Вполне может быть, что где-то в пространстве возможностей есть удачная комбинация, рождающая универсальный конструктор.
Ещё на данный момент есть предварительный дизайн конструктора из 13 глайдеров (или 12, если использовать один трюк), но на данный момент неизвестно, может ли он оказаться рабочим.
Я думал о том, чтобы написать статью на тему "Игра "Жизнь" Конвея. Достижения последних лет" или что-то вроде, но пока не доходят руки. Новых открытий и инженерных конструкций много, описать хочется обстоятельно.
Конструктор может собрать любую конфигурацию, которую можно собрать из произвольного количества глайдеров. Естественно, он не может собрать абсолютно любую конфигурацию.
Основная суть - ограничение верхнего количества глайдеров. Если есть что-нибудь, что можно собрать из, скажем, 10^100 глайдеров, это же самое можно собрать и из 15 глайдеров.
Для такого рода игр можно получить точное решение с помощью цепей Маркова. Для каждой клетки поля расписывается вероятность попасть на каждую другую клетку поля. Затем можно использовать получившуюся матрицу в уравнениях, например, можно записать уравнение на ожидаемое количество ходов до каждой клетки. В решении такого рода уравнений будут учтены, в том числе, и бесконечные циклы (игрок постоянно ходит по кругу).
В вашем анализе "максимальное число ходов" не имеет смысла. С увеличением размера выборки это число будет расти, как раз из-за наличия бесконечного цикла. Минимальное число ходов, скорее всего, соответствует точному значению. Для него большой выборки не нужно, достаточно один раз попасть на оптимальную последовательность ходов.
Вероятности при условии более частого попадания в отбрасывалку считаются сложнее, но для них тоже потенциально можно получить точное решение. Здесь уже придётся (насколько я понимаю) хранить позицию каждого игрока и "превосходство по отбрасываниям". Матрица в этом случае будет большая и, возможно, за приемлемое время не удастся получить точного решения. Но в этом случае можно получить очень близкое к точному приближённое решение, используя в качестве состояния позицию игрока и количество отбрасываний вплоть до какого-то N, скажем, 50. Вероятности таких состояний будут очень маленькие, а следовательно, и погрешность результата.
А именно: для человеческого уха наиболее гармоничны те интервалы, где частоты точно соотносятся как небольшие натуральные числа. Например, октава - самый консонирующий интервал - всегда имеет соотношение 2:1
Это не обязательно так. Автокорреляция и обертоны играют более важную роль.
Когда я выгляжу как супергерой, я и действую по-супергеройски — быстро и точно.
Для меня это выглядит как осозноваемый эффект плацебо. Если это работает - почему бы и не воспользоваться?
Вроде бы серьёзные намерения у конторы, серьезный бизнес (о чем упоминалось не раз в статье), я бы даже сказал, что серьёзнее деятельность в IT не найти - и при этом супергерои... Как потом к вам серьезно-то и по взрослому относится?
Один пункт про внешний вид для вас перечёркивает все остальные в плане серьёзного отношения?
Простите за занудство - а я всегда думал, что в кибербезе мозг - это главное, а то, как ты выглядишь - вообще роли не играет - ибо тебя никто и не видит толком, да и не должен.
И при этом вы утверждаете, что считаете, что внешний вид роли вообще не играет?
Для меня выглядит так, как будто на самом деле критерием серьёзности отношения для вас является именно внешний вид и позиционирование себя.
Не соглашусь с обоими аргументами (в том смысле, что не считаю их аргументами "против").
Если же ходов будет несколько - то это для детей неправильно.
В первой задаче в разделе про открытый шах правильных ходов несколько - по сути, любой ход слона является решением. Во второй задаче из этого же раздела, с ладьёй и двумя королями, ходов, дающих шах, тоже несколько.
А дети на этот момент знают что король шах дать не может. И это ребенку дополнительная сложность.
Похожий аргумент применим и к той самой первой задаче со слоном. Вы сами пишете:
Дело в том, что они до этого четко усвоили что шах дает та же фигура которая ходит. Хотя про это и не говорилось в явном виде, но они запоминают именно это.
То есть, здесь тоже есть та самая дополнительная сложность, которую ребёнку приходится преодолевать.
Вот я и предлагаю по-максимуму уменьшить барьер, который нужно преодолеть, чтобы увидеть открытый шах. Ставим задачу с королём и двумя ладьями, как во втором примере из раздела про октрытый шах (только наш король стоит вплотную к ладье).
А почему бы не начинать объяснение открытого шаха с задачи с двумя королями и ладьёй? Причём ещё можно поставить короля вплотную к ладье, чтобы сократить количество возможных вариантов хода ладьи. В таком случае, на мой взгляд, ребёнку будет проще догадаться, что именно нужно сделать.
Всё-таки, у ладьи остаются ходы только вдоль одной линии, ни один из которых не даёт шах, а королём в задачах на шах ребёнок ходить ещё не пробовал. Если попробует - почти все ходы короля сработают.
Юмор: у кого-нибудь есть на примете суперкомпьютер, чтобы прогнать программу до такого значения? И куда вообще записать информацию о таком количестве простых чисел?
Необязательно хранить информацию о всех предыдущих простых при исследовании простых чисел.
Промежутки между простыми изучались разными людьми. Вот, например, один ресурс про промежутки.
Можно рассматривать такие задачи и их решения с точки зрения теории множеств и формальной логики. В этом случае можно перевести на формальный язык имеющиеся в задаче высказывания и оперировать уже строгими выводами.
С предпосылкой, что существуют бегемоты, то есть ∃x (x∈Б), можно получить выражение ∃x (x∈И)⋀(x∈М), то есть существуют знатоки интегрального исчисления, любящие мороженое.
Потому что по модулю простых, на которые раскладывается модуль, эти числа имеют остатки (1,1); (1,0); (0,1); (1,-1); (-1,1); (-1,-1). При возведении в степень они не меняются (потому что экспонента нечётная).
Какое-то у Вас сложноватое аналитическое решение. Через рекурсию проще:
Пусть E(n|b) - условное мат. ожидание количества пулов, если последний шар чёрный, и E(n|w) - условное мат. ожидание кол-ва пулов, если последний шар белый. Пусть p - вероятность вытянуть белый шар.
E(1|b)=0, E(1|w)=1
E(n+1|b) = E(n) =E(n|b)*(1-p)+E(n|w)*p - если последний шар чёрный, то мат. ожидание такое же, как если бы шара не было.
E(n+1|w) = E(n,w)*p + (E(n,b)+1)*(1-p) = E(n)+(1-p) - если последний шар белый, то мат. ожидание не меняется, если до этого тоже был белый шар, и увеличивается на 1, если до этого был чёрный шар.
Матч-реванш: человек выиграл в го у искусственного интеллекта
Другой ИИ обыграл, да. Но тактика ИИ вполне пригодна для использования человеком, как оказалось. И человек с её помощью обыграл.
В статье описано весьма абстрактно. Но "что-то подобное" возникает очень редко в обычных играх. Вероятно, именно поэтому у ИИ и оказалось слепое пятно - таких ситуаций попросту не было или они были, но в недостаточном количестве для обучения.
Сама тактика концептуально простая - построить живую группу внутри группы противника, а потом окружить группу противника. ИИ считает, что его большая окружающая группа живёт, когда на самом деле она мертва.
Объект многоточие в Python
Да. Остальные отличия - только в том, как эти объекты используются.
Из документации:
Простейшая нейросеть: еще раз и подробнее
Прям быстрого хака нет, насколько я знаю. Можно преобразовать значение в число с плавающей точкой, это будет некоторым приближением к экспоненте, если я не ошибаюсь.
Но ещё лучше будет использовать ReLU. Они проще вычисляются и ускоряют обучение.
Математическая продлёнка. Квадратные уравнения во всей красе
Ваше утверждение не противоречит цитируемому. И цитируемое является верным.
Квадратное уравнение решается, если дискриминант неотрицателен. Из этого не следует, что оно не решается, если дискриминант отрицателен.
Более точной была бы формулировка "Квадратное уравнение решается в действительных числах, только если его дискриминант неотрицателен".
Игра «Жизнь» — как собрать произвольный шаблон всего из 15 глайдеров
Оценка снизу весьма грубая. Минимально доказанная невозможность универсального конструктора - 2 глайдера, если не ошибаюсь. Для них все возможные столкновения перечислены.
Для 3 глайдеров были попытки перечислить все столкновения, но полной и точной классификации, насколько я знаю, нет. Но в любом случае крайне маловероятно, что есть универсальный конструктор из 3 глайдеров.
С 4 глайдерами ситуация интересней. Пространство возможных конфигураций слишком большое, чтобы его можно было полностью перечислить с текущими вычислительными возможностями. Не исключено, что есть и универсальный конструктор среди них, но это, опять же, маловероятно.
Лично я бы оценил нижнюю границу в 8 глайдеров. С данным количеством можно сделать 2 "чистых" (не выпускающих глайдеры во все стороны) Кордер-двигателя, движущихся навстречу или перпендикулярно друг другу, и разнести их на произвольное расстояние. Вполне может быть, что где-то в пространстве возможностей есть удачная комбинация, рождающая универсальный конструктор.
Ещё на данный момент есть предварительный дизайн конструктора из 13 глайдеров (или 12, если использовать один трюк), но на данный момент неизвестно, может ли он оказаться рабочим.
Игра «Жизнь» — как собрать произвольный шаблон всего из 15 глайдеров
Я думал о том, чтобы написать статью на тему "Игра "Жизнь" Конвея. Достижения последних лет" или что-то вроде, но пока не доходят руки. Новых открытий и инженерных конструкций много, описать хочется обстоятельно.
Игра «Жизнь» — как собрать произвольный шаблон всего из 15 глайдеров
Я один из авторов данной конструкции. Если есть какие-то вопросы по техническим деталям и не только, постараюсь ответить.
Игра «Жизнь» — как собрать произвольный шаблон всего из 15 глайдеров
Конструктор может собрать любую конфигурацию, которую можно собрать из произвольного количества глайдеров. Естественно, он не может собрать абсолютно любую конфигурацию.
Основная суть - ограничение верхнего количества глайдеров. Если есть что-нибудь, что можно собрать из, скажем, 10^100 глайдеров, это же самое можно собрать и из 15 глайдеров.
Игра «Жизнь» — как собрать произвольный шаблон всего из 15 глайдеров
Можно посмотреть на вики: https://conwaylife.com/wiki/Main_Page
Самые интересные по мнению сообщества начальные конфигурации участвуют в небольшом конкурсе "Pattern of the Year": https://conwaylife.com/wiki/Pattern_of_the_Year
Анализ шансов в настольных играх через эмуляции
Для такого рода игр можно получить точное решение с помощью цепей Маркова. Для каждой клетки поля расписывается вероятность попасть на каждую другую клетку поля. Затем можно использовать получившуюся матрицу в уравнениях, например, можно записать уравнение на ожидаемое количество ходов до каждой клетки. В решении такого рода уравнений будут учтены, в том числе, и бесконечные циклы (игрок постоянно ходит по кругу).
В вашем анализе "максимальное число ходов" не имеет смысла. С увеличением размера выборки это число будет расти, как раз из-за наличия бесконечного цикла.
Минимальное число ходов, скорее всего, соответствует точному значению. Для него большой выборки не нужно, достаточно один раз попасть на оптимальную последовательность ходов.
Вероятности при условии более частого попадания в отбрасывалку считаются сложнее, но для них тоже потенциально можно получить точное решение. Здесь уже придётся (насколько я понимаю) хранить позицию каждого игрока и "превосходство по отбрасываниям". Матрица в этом случае будет большая и, возможно, за приемлемое время не удастся получить точного решения. Но в этом случае можно получить очень близкое к точному приближённое решение, используя в качестве состояния позицию игрока и количество отбрасываний вплоть до какого-то N, скажем, 50. Вероятности таких состояний будут очень маленькие, а следовательно, и погрешность результата.
Вычисление значения частоты любой ноты и интересное звучание «псевдонатурального» строя
Это не обязательно так. Автокорреляция и обертоны играют более важную роль.
https://www.youtube.com/watch?v=wg5QcF2akzQ
Вычисление значения частоты любой ноты и интересное звучание «псевдонатурального» строя
А вы слышали про Scala?
Там есть, по сути, всё, что нужно для любых экспериментов с музыкальными строями. А ещё в некоторых плагинах и DAW есть поддержка файлов .scl.
Анна Юртаева: «В кибербезе сейчас идет самая ожесточенная борьба с криминалом»
Для меня это выглядит как осозноваемый эффект плацебо. Если это работает - почему бы и не воспользоваться?
Один пункт про внешний вид для вас перечёркивает все остальные в плане серьёзного отношения?
И при этом вы утверждаете, что считаете, что внешний вид роли вообще не играет?
Для меня выглядит так, как будто на самом деле критерием серьёзности отношения для вас является именно внешний вид и позиционирование себя.
Шах (часть 7)
Не соглашусь с обоими аргументами (в том смысле, что не считаю их аргументами "против").
В первой задаче в разделе про открытый шах правильных ходов несколько - по сути, любой ход слона является решением. Во второй задаче из этого же раздела, с ладьёй и двумя королями, ходов, дающих шах, тоже несколько.
Похожий аргумент применим и к той самой первой задаче со слоном. Вы сами пишете:
То есть, здесь тоже есть та самая дополнительная сложность, которую ребёнку приходится преодолевать.
Вот я и предлагаю по-максимуму уменьшить барьер, который нужно преодолеть, чтобы увидеть открытый шах. Ставим задачу с королём и двумя ладьями, как во втором примере из раздела про октрытый шах (только наш король стоит вплотную к ладье).
Шах (часть 7)
А почему бы не начинать объяснение открытого шаха с задачи с двумя королями и ладьёй? Причём ещё можно поставить короля вплотную к ладье, чтобы сократить количество возможных вариантов хода ладьи. В таком случае, на мой взгляд, ребёнку будет проще догадаться, что именно нужно сделать.
Всё-таки, у ладьи остаются ходы только вдоль одной линии, ни один из которых не даёт шах, а королём в задачах на шах ребёнок ходить ещё не пробовал. Если попробует - почти все ходы короля сработают.
Аддитивная композиция натуральных чисел и её интересные свойства
Необязательно хранить информацию о всех предыдущих простых при исследовании простых чисел.
Промежутки между простыми изучались разными людьми. Вот, например, один ресурс про промежутки.
7 логических и математических задачек про разумных бегемотов
Можно рассматривать такие задачи и их решения с точки зрения теории множеств и формальной логики. В этом случае можно перевести на формальный язык имеющиеся в задаче высказывания и оперировать уже строгими выводами.
Бегемоты знают интегральное исчисление. ∀x (x∈Б)→(x∈И)
Все бегемоты любят мороженое. ∀x (x∈Б)→(x∈М)
С предпосылкой, что существуют бегемоты, то есть ∃x (x∈Б), можно получить выражение ∃x (x∈И)⋀(x∈М), то есть существуют знатоки интегрального исчисления, любящие мороженое.
Эволюция бесконечной случайной конфигурации в игре «Жизнь»
Для случайных супов размером 16*16 с заполнением 50% собирается огромная статистика здесь:
https://catagolue.hatsya.com/statistics
Шифры замены
Потому что по модулю простых, на которые раскладывается модуль, эти числа имеют остатки (1,1); (1,0); (0,1); (1,-1); (-1,1); (-1,-1). При возведении в степень они не меняются (потому что экспонента нечётная).
Аналитика vs моделирование. Задача по теории вероятностей
Какое-то у Вас сложноватое аналитическое решение. Через рекурсию проще:
Пусть E(n|b) - условное мат. ожидание количества пулов, если последний шар чёрный, и E(n|w) - условное мат. ожидание кол-ва пулов, если последний шар белый. Пусть p - вероятность вытянуть белый шар.
E(1|b)=0, E(1|w)=1
E(n+1|b) = E(n) =E(n|b)*(1-p)+E(n|w)*p - если последний шар чёрный, то мат. ожидание такое же, как если бы шара не было.
E(n+1|w) = E(n,w)*p + (E(n,b)+1)*(1-p) = E(n)+(1-p) - если последний шар белый, то мат. ожидание не меняется, если до этого тоже был белый шар, и увеличивается на 1, если до этого был чёрный шар.
E(n+1)=E(n+1|b)*(1-p)+E(n+1|w)*p=E(n)*(1-p)+E(n)*p+(1-p)*p=E(n)+p(1-p)
Учитывая E(1)=p, получаем E(n)=p+(n-1)p(1-p)=p^2+np(1-p)
E(20)=4/49+20*2/7*5/7=204/49