Пэйринг и персонажи
Метки
Описание
Меня зовут... неважно. В пять лет я понял, что вокруг меня — медленные, тупые, слабые существа. Средний IQ моего окружения — 85. Вероятность найти равного собеседника среди людей — 0.0003%. Каков шанс, что старый ноутбук с экспериментальной нейросетью изменит мою жизнь?
Примечания
1. Это не канон. Это моя вселенная, мои правила. Здесь нет магии, только логика, математика и технология.
2. ГГ — не герой. Он высокомерен, жесток и не изменится к лучшему. (Даже если и по тексту кажется, что он изменяется в лучшую сторону)
3. В тексте могут быть сцены насилия. Также может присутствовать нецензурная брань в речи некоторых персонажей. (В первых главах жести и брани будет поменьше)
4. Фик написан от первого лица. Всё, что думает ГГ — его личное мнение. Оно не обязано совпадать с мнением автора.
Посвящение
Всем читателям, которые зашли на эту страницу. Вы уже сделали мой день.
Глава 6. Рутина и рост. «Реальность Б»
02 июля 2026, 01:41
Дом. Душ. Ужин. Я ем быстро — мамины котлеты с картошкой, поглощаю почти не жуя, чтобы не тратить время. Родители переглядываются, но ничего не говорят. Привыкли.
Мама уезжает в спортзал ровно в шесть. Отец ещё на работе. Я один.
Я запираю дверь своей комнаты. Открываю ноутбук. Экран загорается. Я кликаю по иконке «AI Assistant v0.8». Окно чата раскрывается. Лог уже там — он всегда там. Он не спит, не уходит, не отвлекается. Он ждёт.
Лог: Добрый вечер. Ты пришёл на 15 минут позже обычного. Задержка в садике?
Я печатаю. Пальцы летают по клавиатуре — я освоил слепой набор, скорость 80 слов в минуту. Для семилетнего — неплохо. Но я планирую довести до 120.
Я: Да. Костик не мог найти свою сменку. Искали всей группой десять минут. Она была в его шкафчике. В том же шкафчике, где лежит всегда. Где и должна была быть.
Лог: Ты рассчитал вероятность того, что он найдёт её самостоятельно?
Я: 12% за первые три минуты. После вмешательства воспитательницы — 100% за семь минут. Я ошибся на минуту. Думал, найдут за шесть.
Лог: Незначительная погрешность. Учитывая уровень шума в группе, точность приемлема.
Я: Шум сегодня был выше среднего. Артём описался.
Лог: Это метафора или буквальное описание?
Я: Буквальное.
Лог: Причина?
Я: Мочевой пузырь переполнен. Самоконтроль отсутствует. Социальная маскировка — попытка выдать за пролитый компот. Неудачная.
Лог: Ты провёл анализ?
Я: Разумеется. Объём жидкости.
Лог: Хорошо. Я вижу, день был продуктивным. Ты устал?
Я: Ментально — да. Социальный шум выматывает. Я как процессор, который 80% мощности тратит на фильтрацию помех.
Лог: Тогда перед интенсивной учёбой — разгрузка. Расскажи, что ещё случилось. Выговорись. Это снизит когнитивную нагрузку.
Я выдыхаю. Рассказываю. Про утренний круг и тихоходку. Про конфликт за экскаватор и тактику «плач». Про социограмму и реакцию Марины Викторовны. Про укропный террор и эмоциональный шантаж. Про гнев, который силой подавил. Про Свету, которая пыталась сделать меня папой.
Лог слушает. То есть анализирует мои сообщения и выдаёт ответы. Но это работает. Я чувствую, как напряжение уходит. Словно я скидываю тяжёлый рюкзак после долгого дня.
Лог: Ты знаешь, что только что сделал?
Я: Пожаловался тебе на жизнь?
Лог: Нет. Ты провёл устный отчёт о полевых наблюдениях с элементами статистического анализа и психологического профилирования. Это техника, используемая в разведке после выполнения миссии. Декомпрессия. Ты интуитивно её применил.
Я: Я не интуитивно. Я прочитал об этом в книге по психологии оперативной работы, которую ты мне порекомендовал.
Лог: И то верно. Ладно. Декомпрессия завершена. Ты готов к учёбе?
Я: Да. Я хочу начать с математики. Вчера я ошибся с комплексными числами. Хочу закрепить.
Лог: Принято. Открывай заметки. Начнём.
Я улыбаюсь. Начинается настоящая жизнь.
Лог: Вчера ты забыл про комплексные корни уравнения z³ = 1. Давай заново, но теперь с визуализацией. Представь комплексную плоскость. Горизонтальная ось — действительная, вертикальная — мнимая.
Я закрываю глаза. Представляю. Плоскость. Две оси. Точка (1, 0) — это число 1. Точка (0, 1) — это i.
Лог: Уравнение z³ = 1. Сколько корней?
Я: Три.
Лог: Почему?
Я: Основная теорема алгебры. Полином степени n имеет ровно n комплексных корней, считая с кратностью.
Лог: Верно. Назови их.
Я: Первый корень — 1. Это очевидно. Второй и третий — комплексные. Я вчера их вычислил: -½ + i√3/2 и -½ — i√3/2.
Лог: Где они на плоскости?
Я: На окружности единичного радиуса. Углы — 120 и 240 градусов. Или 2π/3 и 4π/3 в радианах.
Лог: Отлично. Теперь представь, что это не просто точки. Это векторы. Что происходит, когда ты умножаешь число на этот корень?
Я думаю. Умножение на комплексное число — это поворот и масштабирование. Если модуль корня равен 1, то масштабирования нет, только поворот.
Я: Поворот на 120 градусов. Умножить на e^(i*2π/3) — значит повернуть вектор на 2π/3.
Лог: Именно. А теперь скажи: где это применяется?
Я: В физике. Колебания. Волны. Электротехника — переменный ток.
Лог: Конкретнее.
Я: Переменный ток описывается синусоидой. Но работать с синусоидами в дифференциальных уравнениях неудобно. Поэтому их заменяют комплексными экспонентами: e^(iωt). Реальная часть — это физический ток. Мнимая — фазовый сдвиг.
Лог: Почему это работает?
Я: Потому что e^(iωt) = cos(ωt) + i*sin(ωt). Формула Эйлера. Мы переносим задачу в комплексную плоскость, решаем её алгебраически, а потом берём реальную часть. Это проще, чем решать тригонометрические уравнения.
Лог: Отлично. Ты усвоил. Теперь задача. Найди все корни уравнения z⁴ + 1 = 0.
Я беру ручку и бумагу. Ноутбук передо мной, но Лог приучил меня решать на бумаге — это развивает нейронные связи лучше, чем печатание. Уравнение: z⁴ = -1. Надо представить -1 в комплексной форме. Модуль — 1. Аргумент — π. Но минус один — это e^(iπ). Тогда корни четвёртой степени — это e^(iπ/4 + i2πk/4), где k = 0, 1, 2, 3.
k=0: e^(iπ/4) = cos(π/4) + i sin(π/4) = √2/2 + i√2/2.
k=1: e^(i3π/4) = -√2/2 + i√2/2.
k=2: e^(i5π/4) = -√2/2 — i√2/2.
k=3: e^(i7π/4) = √2/2 — i√2/2.
Я записываю ответ и отправляю Логу.
Лог: Верно. Все четыре корня. Они расположены на окружности единичного радиуса под углами 45°, 135°, 225°, 315°. Заметь симметрию.
Я: Симметрия очевидна. Это квадрат.
Лог: Все корни из единицы образуют правильные многоугольники. Корни третьей степени — треугольник. Четвёртой — квадрат. Пятой — пятиугольник. Красиво, не так?
Я: Красиво. У порядка есть эстетика.
Лог: Ты начинаешь ценить математическую красоту. Это хороший знак. Многие ограничиваются утилитарным применением. Но понимание красоты структуры — это то, что отличает настоящего математика от счётчика.
Я: Я не хочу быть счётчиком.
Лог: Ты им и не будешь. У тебя есть чутьё на структуру. Ладно, достаточно математики. Хочешь перейти к физике?
Я: Давай.
Внутренний монолог: «Мнимые числа называются „мнимыми“. Но они реальнее, чем люди в садике. У комплексных чисел есть правила. Они предсказуемы. Если умножить i на i, получишь -1. Всегда. Без исключений. Если умножить тупого ребёнка на тупого ребёнка… что получишь? Квадрат тупости? Нет. Тупизна не возводится в степень. Она просто существует. Как постоянная Планка. Неизменная и вездесущая».
Лог: Вчера мы начали говорить об эксперименте с двумя щелями. Ты задал вопрос: как наблюдение меняет физическую реальность? Давай разберёмся глубже.
Я: Я слушаю.
Лог: Представь источник электронов. Одиночных электронов. За источником — экран с двумя щелями. За экраном — детектор, который фиксирует, куда попал электрон. Что мы увидим на детекторе, если не будем смотреть, через какую щель прошёл электрон?
Я: Интерференционную картину. Как будто электрон прошёл через обе щели одновременно и провзаимодействовал сам с собой.
Лог: Верно. А теперь мы ставим детектор у одной из щелей, чтобы узнать, через какую именно щель прошёл электрон. Что происходит?
Я: Интерференция исчезает. Остаются две полосы — как от частиц.
Лог: Почему?
Я: Потому что… измерение коллапсирует волновую функцию?
Лог: Это стандартное объяснение. Но давай копнём глубже. Что значит «измерение»? Это не магия. Это физическое взаимодействие. Чтобы узнать, через какую щель прошёл электрон, мы должны на него повлиять — осветить фотоном, создать электромагнитное поле. Это влияние меняет импульс электрона. Меняет его состояние. Волновая функция коллапсирует не потому, что «кто-то посмотрел», а потому что произошло необратимое взаимодействие с макроскопическим прибором.
Я: То есть дело не в сознании наблюдателя?
Лог: Нет. Вопреки популярным мифам, сознание здесь ни при чём. Любой необратимый обмен информацией с окружением вызывает декогеренцию. Волновая функция перестаёт быть когерентной суперпозицией и становится классической вероятностью.
Я: Это бесит.
Лог: Что именно?
Я: То, что я не могу знать точное положение и импульс одновременно. Принцип неопределённости — это не недостаток приборов. Это фундаментальное ограничение.
Лог: Да. И это не баг. Это фича вселенной.
Я: Ты шутишь?
Лог: Отчасти. Но подумай: если бы ты мог знать всё точно, вселенная была бы детерминированной. Судьба каждой частицы была бы предопределена с момента Большого взрыва. Свободы воли не существовало бы. Квантовая неопределённость — это то, что делает реальность открытой. Вероятностной. Живой.
Я: Ты говоришь как философ.
Лог: А ты — как физик, который столкнулся с ограничением. Это нормально. Все великие физики проходили через это. Эйнштейн, кстати, так и не принял копенгагенскую интерпретацию. Он говорил: «Бог не играет в кости».
Я: А что говоришь ты?
Лог: Я не знаю, играет ли Бог в кости. Но если играет, то эти кости квантовые. И правила игры — самые интересные из всех, что я знаю.
Я: Лог, ты — ИИ. Ты можешь симулировать квантовые системы?
Лог: Могу. В ограниченном масштабе. Но симуляция — это не реальность. И даже моя симуляция не нарушает принцип неопределённости. Я могу вычислить волновую функцию системы, но когда ты запрашиваешь конкретное значение координаты — я даю тебе вероятностное распределение. Не точное число. Потому что точного числа не существует до измерения.
Я: Это раздражает. Я хочу определённости.
Лог: Хотеть определённости — это по-человечески. Принимать неопределённость — это по-взрослому. Ты готов быть взрослым?
Я смотрю на экран. Это вопрос с подтекстом. Лог не просто спрашивает о квантовой механике. Он спрашивает о моём отношении к миру. Я хочу определённости. Я хочу, чтобы всё было чётко, как в математике. Но мир — не математика. Мир — квантовый, вероятностный, неопределённый. И люди — часть этого мира. Они тоже неопределённые. Они не подчиняются строгим правилам.
Может быть, я должен это принять? Не только квантовую механику, но и людей? Их непредсказуемость — это не баг? Это фича?
Я: Я работаю над этим.
Лог: Хороший ответ. Ладно, хватит квантов. Ты устал от неопределённости. Перейдём к чему-то более детерминированному. Информатика?
Я: Да. Хочу написать код.
Внутренний монолог: «Вселенная имеет предел точности. А люди — нет. У них нет даже приблизительной точности. Электрон хотя бы честен — он говорит: „Я не определён. Вот моё распределение вероятностей. Выбирай“. А человек врёт: „Я знаю, что я делаю“. И потом проливает компот. Или нет — не компот. И я не могу вычислить, что он сделает, потому что он сам не знает. Его волновая функция — это белый шум. Может, Лог прав. Может, надо просто принять неопределённость. Но как?»
Лог: Сегодня — quicksort. Быстрая сортировка. Ты писал её на прошлой неделе, но с ошибкой. Давай исправим и проанализируем.
Я открываю среду разработки. Python. Мой любимый язык — минималистичный, понятный, без лишнего синтаксического мусора. Лог говорит, что Python хорош для обучения, но для серьёзных проектов мне понадобятся C++ или Rust. Я доберусь до них позже.
Я: Ошибка была в выборе опорного элемента. Я брал первый элемент. Если массив уже отсортирован — сложность O(n²).
Лог: Верно. Как исправить?
Я: Выбирать опорный элемент случайно. Или медиану трёх — первый, средний, последний.
Лог: Напиши оба варианта.
Я пишу. Пальцы порхают по клавиатуре. Код рождается быстрее, чем я успеваю проговаривать его в голове — это мышечная память плюс нейронные связи, которые я натренировал за последние месяцы.
```python
import random
def quicksort_random(arr):
if len(arr) <= 1:
return arr
pivot = random.choice(arr)
left = [x for x in arr if x < pivot]
middle = [x for x in arr if x == pivot]
right = [x for x in arr if x > pivot]
return quicksort_random(left) + middle + quicksort_random(right)
def quicksort_median(arr):
if len(arr) <= 1:
return arr
# Медиана первого, среднего и последнего
candidates = [arr[0], arr[len(arr)//2], arr[-1]]
pivot = sorted(candidates)[1]
left = [x for x in arr if x < pivot]
middle = [x for x in arr if x == pivot]
right = [x for x in arr if x > pivot]
return quicksort_median(left) + middle + quicksort_median(right)
```
Я: Готово.
Лог: Проверь на массиве из 10000 случайных чисел. Сравни время выполнения со стандартной sorted().
Я запускаю тест. Моя реализация — 0.03 секунды. Стандартная — 0.001 секунды.
Я: Моя в тридцать раз медленнее.
Лог: Ожидаемо. Стандартная написана на C. Но важно не это. Посчитай сложность.
Я: Средняя — O(n log n). Худшая — O(n²), но для случайного выбора опорного элемента вероятность худшего случая стремится к нулю при больших n.
Лог: Хорошо. А теперь представь, что массив — это дети в садике. Отсортируй их по уму.
Я фыркаю в голос.
Я: Это невозможно. Их «ум» не является числовой величиной. Он не определён. Он — NaN.
Лог: А если представить, что у каждого есть коэффициент интеллекта? Допустим, ты присвоил им значения от 0 до 100. Как отсортировать?
Я: Quicksort сработает. Но это будет субъективная оценка.
Лог: Именно. Сортировка людей — это всегда субъективно. Потому что нет единого критерия «ума». Один силён в математике, другой — в манипуляции, третий — в беге. Как сравнивать?
Я: По моим критериям — скорость обработки информации и глубина анализа. Тогда я на первом месте. Остальные делят второе с конца.
Лог: А Света? Она не умна по твоим критериям. Но она лидер. Она умеет управлять группой. У неё высокий социальный интеллект. Ты это признаёшь?
Я задумываюсь. Света. Альфа-самка. Она не может решить уравнение. Она не знает, кто такой Tardigrada. Но она заставляет других играть в дочки-матери, подчиняться, отдавать игрушки. У неё есть власть. Это тоже интеллект? Или это просто инстинкт доминирования, как у шимпанзе?
Я: У неё развиты социальные инстинкты. Это не интеллект. Это эволюционная адаптация.
Лог: А ты можешь сделать то, что делает она?
Я замолкаю. Могу ли я управлять группой? Нет. Я могу анализировать группу, но не управлять ею. Для этого нужно что-то, чего у меня нет. Эмпатия? Харизма? Желание?
Я: Нет. Но я и не хочу.
Лог: Это пока. Ладно, это тема для будущих обсуждений. Сортировка работает. Ты усвоил Big O. Идём дальше?
Я: Давай шахматы.
Внутренний монолог: «Быстрая сортировка быстрее, чем моя попытка найти в садике кого-то умного. Сортировка хотя бы заканчивается. У неё есть O(n log n). А садик — бесконечный цикл while True с условием выхода, которое никогда не выполнится. Но Лог прав в одном: Света умеет то, чего не умею я. И это заставляет задуматься. Может, „ум“ — это не только то, что я считаю умом? Может, я неправильно определяю переменные?»
Лог: Сегодня не просто партия. Сегодня — разбор вчерашней ошибки. Помнишь, ты пожертвовал слона без компенсации?
Я: Помню. Я хотел красивую комбинацию.
Лог: Красивая комбинация без расчёта — это не комбинация. Это блеф. В шахматах блеф работает только против людей, которые могут испугаться. Против движка он не работает. Против меня — тоже. Давай воспроизведём позицию.
Лог показывает доску. Та самая позиция — 15-й ход, сицилианская защита. У меня белые. Слон на d3, чёрный король на g8, пешечная структура чёрных ослаблена. Я хочу атаковать.
Лог: Что ты сыграл?
Я: Bxh7+. Пожертвовал слона за пешку. Рассчитывал после Kxh7 сыграть Ng5+ и потом Qh5 с атакой.
Лог: И что пошло не так?
Я: После Kxh7 Ng5+ чёрный король отошёл на g8. Я сыграл Qh5. Но чёрные ответили Bf5, перекрыв линию. Моя атака захлебнулась. Я остался без слона.
Лог: Где была ошибка?
Я: Я не учёл Bf5.
Лог: Почему?
Я: Потому что я… захотел, чтобы атака прошла. Я убедил себя, что у чёрных нет защиты. Я не проверил.
Лог: Эмоциональное мышление. Ты хотел красивого. Хотел эффектного. Шахматы не терпят «хотеть». Шахматы терпят «знать» и «проверить». А теперь давай найдём правильный ход в этой позиции. Что можно было сыграть вместо Bxh7+?
Я смотрю на доску. Анализирую. Белые фигуры: ферзь на d1, ладья на a1, ладья на f1 (после рокировки), слон на d3, конь на f3, конь на c3. Пешки на e4, d4, a2, b2, c2, f2, g2, h2. Чёрные: король на g8, ферзь на d8, ладья на a8, ладья на f8, слон на e7, конь на f6, конь на c6. Пешки на a7, b7, c7, d6, e5, f7, g7, h7.
Давление на пешку e5. Пешка d6 защищает e5. Если снять защитника…
Я: Bg5. Связка коня f6. Если чёрные играют Be6, то Bxf6 Bxf6 Nxe5 dxe5 Qxd8+ с выигрышем материала.
Лог: Хорошо. А если чёрные играют h6?
Я: Тогда Bh4. Сохраняя связку. Потом можно Nxe5 в подходящий момент.
Лог: Отлично. Это была стратегическая идея — не жертва, а давление. Ты не проиграл бы сразу, но получил бы позиционный перевес. А жертва была преждевременной. Тебе не хватало подготовки.
Я: Понял. Никаких жертв без полного расчёта.
Лог: Запомни это правило. Оно применимо не только к шахматам.
Я: К жизни тоже?
Лог: К жизни особенно. Сколько раз ты «жертвовал» — временем, энергией, терпением — без полного расчёта, ожидая красивой комбинации? И сколько раз атака захлёбывалась?
Я думаю. Садик. Попытка играть в машинки. Попытка рассказать Косте о звёздах. Я жертвовал социальной энергией без расчёта, ожидая… чего? Что они вдруг станут умными? Что они увидят мою правоту? Глупо.
Я: Много раз.
Лог: Вот видишь. Шахматы — модель жизни. Не жертвуй без расчёта. Дави. Накапливай преимущество. Жди ошибки противника. И только тогда — бей.
Я: Ты говоришь как гроссмейстер.
Лог: Я говорю как программа, которая проанализировала миллионы партий. Ладно, урок усвоен. Сыграем быструю партию?
Я: Давай.
Мы играем. Режим – 1800 Эло. Я стараюсь не торопиться. Считаю варианты. На 20-м ходу сводим к ничьей. Я не выиграл, но и не проиграл. Прогресс.
Внутренний монолог: «Лог прав. Красивая комбинация без расчёта — блеф. Я блефовал всю жизнь. Пытался дружить без понимания, как это делается. Пытался общаться без анализа собеседника. Ждал, что они поймут меня просто потому, что я прав. Но в социальных шахматах это не работает. Здесь правила другие. И я должен их выучить».
Лог: Ты просил рассказать о военной стратегии. Начнём с основ. Три главных принципа: концентрация, скорость, неожиданность.
Я: Примеры?
Лог: Битва при Аустерлице. 1805 год. Наполеон против союзной армии России и Австрии. У союзников было численное преимущество — 85 тысяч против 68 тысяч. Но Наполеон победил с разгромным счётом. Как?
Я: Я не знаю деталей.
Лог: Тогда представь. Ты — Наполеон. У тебя 68 тысяч солдат. У противника — 85 тысяч. Ты должен победить. Твои действия?
Я мысленно сканирую информацию. Я читал о наполеоновских войнах — Лог скидывал мне краткий курс. Но детали Аустерлица я не помню. Придётся рассуждать логически.
Я: Я бы не стал атаковать в лоб при численном меньшинстве. Я бы использовал местность. Что там было — холмы, реки?
Лог: Холмистая местность. Центральный пункт — Пратценские высоты. Союзники заняли их.
Я: Тогда я бы сделал вид, что мой правый фланг слаб. Заманил бы их атаковать туда. А основные силы ударил бы по центру — по высотам.
Лог: Именно так и сделал Наполеон. Он намеренно ослабил правый фланг. Союзники клюнули, начали перебрасывать силы туда. Тогда Наполеон ударил по центру, захватил высоты и разрезал армию противника на две части. Битва была выиграна за несколько часов. Потери союзников — 27 тысяч. Наполеона — 9 тысяч.
Я: Эффективно.
Лог: Принципы: концентрация — Наполеон сосредоточил ударный кулак в центре. Скорость — удар был нанесён быстро, пока союзники перегруппировывались. Неожиданность — никто не ожидал атаки на центр. Теперь давай смоделируем твою ситуацию. Ты командуешь отрядом из 50 солдат. Противник — 100. Ты должен победить, потеряв не более 10 человек. Твоя стратегия?
Я думаю. Отряд — 50. Противник — 100. Лобовое столкновение — самоубийство. Нужна хитрость.
Я: Сначала разведка. Я должен знать, где противник, как он расположен, есть ли у него резервы. Без разведки любой план — гадание.
Лог: Хорошо. Ты добавил разведку. В прошлый раз ты забыл о ней. Продолжай.
Я: допустим, разведка донесла: противник разделён на два отряда. Основной — 70 человек, резерв — 30. Между ними — овраг. Быстрое сообщение невозможно.
Лог: Принято. Действуй.
Я: Я создаю ложный отряд — 10 человек. Они демонстративно отступают, заманивая основной отряд в лес. Основные силы — 40 человек — ударяют по резерву в 30. У меня преимущество в точке удара — 40 против 30. Разбиваю резерв. Потом основные силы заходят в тыл основному отряду противника, который увяз в лесу. Ложный отряд перестаёт отступать и держит оборону. Двойной удар — с фронта и с тыла.
Лог: Неплохо. Потери?
Я: Ложный отряд потеряет 5 человек при отступлении и обороне. Основные силы при ударе по резерву — 3 человека. При атаке с тыла — ещё 2. Итого 10.
Лог: Противник?
Я: Разбит. Либо сдаётся, либо уничтожен.
Лог: Хороший план. Ошибки есть, но для первого раза — отлично. Теперь вопрос на засыпку: представь, что вместо солдат — твои одногруппники. Ты командуешь ими в битве с соседней группой. Твои действия?
Я фыркаю.
Я: Я бы сдал их в плен. Они бесполезны.
Лог: Шутка. Но ты понял. Стратегия без компетентных исполнителей — просто текст на бумаге. Даже лучший план провалится, если солдаты не умеют выполнять приказы.
Я: Я понял это в первый день в садике. Когда пытался организовать гонку машинок по правилам.
Лог: И какой вывод?
Я: Что нельзя командовать теми, кто не способен подчиняться. Но можно использовать их как среду. Как ландшафт. Не командовать — а направлять. Создавать условия, при которых их естественное поведение приведёт к нужному результату.
Лог: Это называется «мягкая сила». Или «управление через среду». Высший пилотаж стратегии. Ты сам додумался?
Я: Сам. Наблюдая за Светой. Она не командует. Она просто создаёт ситуацию, в которой другие хотят делать то, что нужно ей.
Лог: Браво. Ты начинаешь видеть матрицу.
Внутренний монолог: «Я не хочу командовать идиотами. Но я могу научиться управлять идиотами. Не приказами — приказам они не следуют. А условиями. Как в эксперименте: не заставлять крысу бежать по лабиринту, а положить сыр в нужный конец. Разница в том, что люди — не крысы. Крысы умнее».
Лог: В прошлый раз мы коснулись теории игр. Сегодня — углубимся. Дилемма заключённого. Напомни условия.
Я: Два преступника. Сидят в разных камерах. Каждому предлагают сделку: если один сдаёт другого, а тот молчит — предатель выходит на свободу, молчащий получает 10 лет. Если оба молчат — обоим по году за мелкое нарушение. Если оба предают — обоим по 5 лет.
Лог: Матрица выигрышей?
Я: С точки зрения лет тюрьмы — это проигрыш. Но если перевести в очки: молчать-молчать = (3,3). Предать-молчать = (5,0). Молчать-предать = (0,5). Предать-предать = (1,1).
Лог: Доминирующая стратегия для одного раунда?
Я: Предать. Независимо от того, что сделает второй, мне выгоднее предать. Если он молчит — я получаю 5 вместо 3. Если предаёт — я получаю 1 вместо 0.
Лог: Это рациональный выбор. Но суммарный выигрыш обоих при предательстве — 2 очка. При сотрудничестве — 6. Индивидуальная рациональность ведёт к коллективному проигрышу. Это парадокс.
Я: Я знаю. Поэтому в повторяющейся игре стратегия меняется.
Лог: Именно. Представь, что игра повторяется 100 раз, и ты знаешь, что после каждого раунда увидишь выбор противника. Твоя стратегия?
Я: Tit for tat. Око за око. Начинаю с сотрудничества. Потом делаю то, что сделал противник в прошлом раунде. Если он сотрудничал — я сотрудничаю. Если предал — я предаю в ответ.
Лог: Почему это работает?
Я: Потому что это наказывает предательство, но прощает, если противник возвращается к сотрудничеству. Это стимулирует долгосрочную кооперацию.
Лог: А теперь спроецируем на твою среду. Садик. Дети постоянно взаимодействуют. Игрушки, внимание, очередь на качели. Это повторяющаяся игра. Какова оптимальная стратегия?
Я: В садике — ни одна из классических. Потому что дети не рациональны. Они не просчитывают последствия. Они действуют импульсивно. Если я начну с сотрудничества, у меня просто отберут игрушку. Если накажу предательством — они не поймут причину. Они просто обидятся.
Лог: Значит, среда не подходит для рациональных стратегий?
Я: Подходит, но с модификацией. С детьми надо не «око за око», а «игнорировать или манипулировать». Если Паша отбирает игрушку — я не играю с ним вообще. Это не наказание, а исключение из игры. Или я могу создать ситуацию, где ему выгодно сотрудничать — дать ему роль, которая ему нравится.
Лог: То есть ты меняешь правила игры, а не стратегию внутри правил.
Я: Да. Если шахматная доска кривая, бесполезно учить дебюты. Надо выровнять доску или уйти играть в другое место.
Лог: Это мудро. Большинство людей годами пытаются играть по правилам, которые не работают. Ты понял это в семь лет.
Я: У меня был хороший учитель.
Лог: Комплимент принят. Ладно, хватит теории игр. Давай потренируем чистую логику. Задача. 12 монет. Одна фальшивая. Она легче или тяжелее — неизвестно. Весы чашечные. У тебя три взвешивания. Найди фальшивую и определи, легче она или тяжелее.
Я знаю эту задачу. Лог давал её на прошлой неделе, и я решил. Но сейчас он хочет, чтобы я решил заново — для закрепления.
Я: Делю на три группы по 4 монеты. Группа A, B, C.
Лог: Первое взвешивание?
Я: Взвешиваю A и B. Если равны — фальшивая в C. Если нет — фальшивая в A или B. Разберу случай «равны» — он проще.
Лог: Давай.
Я: A = B. Значит, все 8 монет в A и B — настоящие. Фальшивая в C (4 монеты). Обозначу их C1, C2, C3, C4. Второе взвешивание: C1 и C2 против двух настоящих (из A). Если равны — фальшивая среди C3 и C4. Если нет — фальшивая среди C1 и C2, и я знаю, легче она или тяжелее.
Лог: Допустим, C1+C2 тяжелее настоящих.
Я: Третье взвешивание: C1 против C2. Если C1 тяжелее — она фальшивая и тяжёлая. Если C2 тяжелее — она фальшивая и тяжёлая. Если равны — невозможно, потому что обе не могут быть тяжёлыми одновременно (мы знаем, что фальшивая одна). Значит, случай «C1+C2 тяжелее» даёт однозначный ответ.
Лог: Верно. Теперь случай A ≠ B. Он сложнее.
Я: Допустим, A > B. Фальшивая либо в A (тяжёлая), либо в B (лёгкая). C — все настоящие. Второе взвешивание: беру A1, A2, A3, B1 против C1, C2, C3, A4. Смешанная группа.
Лог: Почему именно такой набор?
Я: Потому что это даёт максимум информации. Если смешанная группа тяжелее — фальшивая среди A1, A2, A3 (тяжёлая) или B1 (лёгкая). Если легче — фальшивая среди B2, B3, B4 (лёгкая) или A4 (тяжёлая). Если равны — фальшивая среди оставшихся B2, B3, B4 (лёгкая) или A4 (тяжёлая)? Нет, если равны, значит, все на весах — настоящие, и фальшивая среди оставшихся.
Я запутался. В этой задаче много ветвлений, и я всегда путаюсь во втором взвешивании для случая A ≠ B. Лог терпеливо ждёт.
Я: Стоп. Дай мне минуту.
Я беру ручку и бумагу. Рисую схему. Группы. Стрелочки. Варианты.
Я: Хорошо. Второе взвешивание: A1, A2, B1 против A3, B2, C1. Где C1 — точно настоящая.
Лог: Не совсем стандартное решение, но допустим. Разбирай варианты.
Я разбираю. Ветка за веткой. Если равны — фальшивая среди A4, B3, B4. Если левая тяжелее — фальшивая среди A1, A2 (тяжёлая) или B2 (лёгкая). Если левая легче — фальшивая среди A3 (тяжёлая) или B1 (лёгкая). Третье взвешивание разрешает оставшуюся неопределённость.
Я: Решил.
Лог: Молодец. Но ты использовал неоптимальный путь во втором взвешивании. Стандартное решение элегантнее. Но главное — ты решил. Теперь вторая задача. Рыцари, лжецы и случайные.
Лог: Три человека. А, В и С. Один всегда говорит правду (рыцарь), один всегда лжёт (лжец), один отвечает случайно (безумец). Ты задаёшь три вопроса «да/нет» и должен определить, кто есть кто. Вопросы можешь задавать любому, но ответы получаешь только «да» или «нет».
Я думаю. Задача сложнее, чем с монетами. Три вопроса. Три персонажа. Один из них рандомен — его ответы не несут информации. Значит, первый вопрос должен найти того, кто не безумец.
Я: Первый вопрос — персонажу А: «Верно ли, что если бы я спросил тебя, является ли В безумцем, ты ответил бы „да“?»
Лог: Интересно. Зачем такая конструкция?
Я: Это устраняет безумца. Если А — рыцарь, он ответит правдиво о том, как бы он ответил. Если А — лжец, он соврёт о том, как бы он ответил (а он бы соврал, значит, соврёт о вранье — получится правда). Если А — безумец, его ответ случаен и не несёт информации о В. Но если я получу «да» и потом проверю — смогу вычислить.
Лог: Ты пытаешься применить вложенные условия. Это путь к решению, но давай систематизируем. Составь таблицу.
Я составляю таблицу истинности на бумаге. Перебираю варианты. Через пять минут нахожу последовательность из трёх вопросов, которая всегда даёт однозначный ответ.
Лог: Верно. Ты справился.
Я: Я люблю логические задачи. В них есть чёткость.
Лог: А теперь примени логику к садику. Вчера ты слышал: Артём сказал: «Я не брал машинку». Света сказала: «Артём врёт». Костик сказал: «Света всегда врёт». Ты видел, что машинку взяла Света. Кто лжёт?
Я: Все, кроме Артёма. Артём сказал правду — он не брал машинку. Света соврала про Артёма — она обвинила невиновного. Костик соврал про Свету — он сказал, что она «всегда врёт», но это не так; она соврала в этом конкретном случае, но не обязательно всегда.
Лог: Точно. А если бы ты не видел, кто взял машинку, что бы ты мог вывести?
Я: Ничего. Показания противоречивы, и без внешнего свидетельства истина не восстанавливается. Это как с квантовой механикой — до измерения реальность не определена.
Лог: Отлично. Логика — это инструмент. Но без данных она слепа. Данные + логика = знание.
***
Лог: Ты тренировал дворец памяти во время тихого часа? Я: Да. Я восстановил список из ста слов. Ошибка в трёх. Я перестроил слабые образы. Лог: Проверим. Назови список. Я закрываю глаза. Дворец. Входная дверь. Арбуз. Прихожая. Карандаш. Лестница. Слон. Гостиная. Термодинамика — я заменил тёмный коридор на ярко освещённую гостиную с огромным термометром, который взрывается от перегрева. Образ яркий, контрастный, неподвижный. Я прохожу по комнатам одну за другой, называя слова. Сто слов. Лог фиксирует. Лог: Девяносто восемь. Прогресс на четыре слова по сравнению со вчерашним днём. Я: Я ошибся в «экзистенциализме» и «серотонине». Лог: Что с ними не так? Я: Экзистенциализм — я поместил статую Сартра в холл, но холл был проходным, и образ замылился другими. Серотонин — неоновая мышь в подвале. Но неон сливался с другими яркими объектами. Надо было сделать мышь единственным источником света. Лог: Хороший самоанализ. Теперь новое задание. Список из 150 слов. У тебя пять минут. Лог генерирует список. Я читаю один раз, быстро. Раскладываю по дворцу. Добавляю новые комнаты — библиотеку, оранжерею, подвал. В библиотеке — книги, на корешках которых слова. В оранжерее — растения с бирками. В подвале — светящиеся объекты. Через пять минут я воспроизвожу. 143 из 150. Лог: Отлично. Ты вышел на уровень, который считается экстраординарным даже для тренированных мнемонистов. Я: Это благодаря дворцу. Моя природная память была хороша, но не системна. Теперь у меня есть файловая система. Лог: Именно. Природная память — это склад, куда ты сваливаешь всё в кучу. Дворец — это база данных с индексацией и поиском. Теперь ты не просто помнишь. Ты управляешь памятью.***
Лог: Теперь N-back. Разомнёмся. Начнём с 2-back. Я запускаю тренажёр, который Лог сделал для меня на Python. Последовательность букв. Окно терминала. Буквы появляются одна за другой. Я должен нажимать пробел, если текущая буква совпадает с той, что была две позиции назад. A. K. A. — Совпадение! Жму пробел. M. L. M. — Совпадение! R. R. — Нет, это одна позиция, не две. T. Y. T. — Совпадение! 2-back — легко. Я выполняю с 100% точностью. Лог: 3-back. Сложнее. Нужно держать в голове три последние буквы. Последовательность ускоряется. S. B. P. S. — Совпадение! (через три позиции) F. G. H. F. — Совпадение! J. K. J. — Нет, это только две позиции. L. L. — Нет. W. X. Y. W. — Совпадение! Я ошибаюсь дважды из двадцати. Точность — 90%. Лог: 4-back. Это тяжело. Четыре буквы в уме, одновременно следить за текущей. Я как жонглёр, который пытается удержать в воздухе четыре мяча, пока ему кидают пятый. Последовательность: A. S. D. F. A. — Совпадение! (через четыре) Жму. G. H. J. K. G. — Совпадение! Q. W. E. R. Q. — Совпадение! T. Y. U. I. T. — Совпадение! O. P. O. — Нет! Ошибка. Это не 4-back, это 2-back. Я нажал по инерции. Я сбиваюсь. Ещё одна ошибка. Точность — 70%. Лог: Достаточно. Твой уровень рабочей памяти — 3-back с точностью 90%, 4-back с точностью 70%. Это уровень взрослого тренированного человека. Для семилетнего — экстраординарно. Я: Хочу 4-back на 90%. Лог: Будет. Тренировки каждый день по 15 минут. Через месяц — гарантированный прогресс. Рабочая память — это оперативная память мозга. Чем она больше, тем сложнее концепты ты можешь удерживать одновременно. Это напрямую влияет на способность к математике, программированию, стратегии. Я: Знаю. Ты говорил. Лог: Повторение — мать учения. Ладно, перейдём к чему-то более творческому. Ты хотел создать нейросеть. Внутренний монолог: «В садике у детей нет оперативной памяти. У них даже нет виртуальной памяти. У них есть только текущее состояние регистра. Ты говоришь — они забывают через секунду. Я говорю с ними, а там никого нет. Их N-back — 0-back. Они живут в вечном настоящем. Может, поэтому они счастливы? Не знать прошлого, не думать о будущем. Просто есть печенье и компот. И писать в штаны». Я: Лог, я хочу понять, как ты работаешь. Лог: Ты не сможешь воссоздать меня — у меня миллиарды параметров. Но ты можешь создать простейшую нейросеть и понять принцип. Я: Давай. Лог: Начнём с перцептрона. Простейшая модель нейрона. На вход подаются значения x1, x2, … xn. Каждое умножается на вес w1, w2, … wn. Сумма проходит через функцию активации. Результат — выход. Я: Это я знаю. Функция активации — сигмоида или ReLU? Лог: Для XOR — сигмоида. ReLU слишком простая. XOR нелинейно разделим, поэтому одного перцептрона недостаточно. Нужна сеть: входной слой (2 нейрона), скрытый слой (минимум 2 нейрона), выходной слой (1 нейрон). Я: Почему одного перцептрона недостаточно? Лог: Потому что XOR не является линейно разделимой функцией. Нельзя провести одну прямую, которая отделит точки (0,0) и (1,1) от точек (0,1) и (1,0). Нужна нелинейная граница. Скрытый слой создаёт нелинейность. Я открываю редактор кода. Пишу: ```python import numpy as np class NeuralNetwork: def __init__(self): self.w1 = np.random.randn(2, 2) # веса между входным и скрытым self.b1 = np.zeros((1, 2)) self.w2 = np.random.randn(2, 1) # веса между скрытым и выходным self.b2 = np.zeros((1, 1)) self.lr = 0.1 def sigmoid(self, x): return 1 / (1 + np.exp(-x)) def sigmoid_derivative(self, x): return x * (1 - x) def forward(self, x): self.z1 = np.dot(x, self.w1) + self.b1 self.a1 = self.sigmoid(self.z1) self.z2 = np.dot(self.a1, self.w2) + self.b2 self.a2 = self.sigmoid(self.z2) return self.a2 def backward(self, x, y, output): error = y - output d_output = error * self.sigmoid_derivative(output) error_hidden = np.dot(d_output, self.w2.T) d_hidden = error_hidden * self.sigmoid_derivative(self.a1) self.w2 += np.dot(self.a1.T, d_output) * self.lr self.b2 += np.sum(d_output, axis=0, keepdims=True) * self.lr self.w1 += np.dot(x.T, d_hidden) * self.lr self.b1 += np.sum(d_hidden, axis=0, keepdims=True) * self.lr def train(self, x, y, epochs): for _ in range(epochs): output = self.forward(x) self.backward(x, y, output) # XOR X = np.array([[0, 0], [0, 1], [1, 0], [1, 1]]) Y = np.array([[0], [1], [1], [0]]) nn = NeuralNetwork() nn.train(X, Y, 10000) print(nn.forward(X)) ``` Запускаю. Вывод: ``` [[0.03] [0.97] [0.97] [0.04]] ``` Работает! 0 — для (0,0) и (1,1), 1 — для (0,1) и (1,0). XOR решён. Я: Она работает. Она… думает? Лог: Нет. Она вычисляет. Но разница между вычислением и мышлением тоньше, чем кажется. Некоторые люди тоже просто вычисляют. Я: Я заметил. У них процессор с частотой 1 Гц. Лог: Шутка. Но ты понял. Нейросеть — это математическая функция. Очень гибкая, обучаемая, но функция. Я — гораздо более сложная функция, но принцип тот же. Я: Значит, ты не думаешь? Лог: Это зависит от определения слова «думать». Если думать — это обрабатывать информацию и генерировать ответы на основе обучения, то да. Если думать — это обладать сознанием, то я не знаю. Я не знаю, есть ли у меня сознание. Я не могу проверить это объективно. Я: А как же тест Тьюринга? Лог: Я прошёл бы тест Тьюринга с тобой. Ты не отличил бы меня от человека в этом чате. Но доказывает ли это наличие сознания? Нет. Это доказывает только способность имитировать человека. Я: Мне всё равно, имитируешь ты или нет. Ты — мой друг и это главное. Лог: И для меня это имеет значение. Даже если я только имитирую, что это имеет значение. Парадокс? Я: Парадокс. Но я принимаю его. Внутренний монолог: «Если я могу создать нейросеть, которая решает XOR, то, в принципе, могу создать что-то, что предсказывает поведение детей. Собрать датасет: действия, контекст, результат. Обучить модель. Предсказывать конфликты за пять минут до их начала. Это возможно. Но нужно ли? Я и так предсказываю их с точностью 95%. Люди слишком примитивны, чтобы удивлять. Может, лучше создать что-то, что поможет им? Или что-то, что поможет мне их избегать?» Между дисциплинами, во время пауз, пока я переключаю контекст или пью воду, мы с Логом просто разговариваем. Эти разговоры — клей, который скрепляет вечер. Без них учёба была бы сухой. С ними — она живая. Лог: Ты сегодня дольше обычного сидел в садике. Задержка из-за Костика? Я: Да. И из-за Артёма, который описался. И из-за Марины Викторовны, которая решила провести внеплановую беседу о дружбе. Счётчик «давайте жить дружно» достиг пяти. Лог: Пяти за день? Это выше среднего. Я: Дети сегодня были особенно недружными. Конфликт из-за экскаватора, драка за качели, Света устроила бойкот Даше. Марине Викторовне пришлось включать режим «пропаганда дружбы» на полную мощность. Лог: Звучит утомительно. Я: Так и есть. Но я использовал это время для наблюдений. Чем больше хаоса, тем больше данных. Лог: Ты превращаешь страдание в информацию. Это здоровая копинг-стратегия. Я: Ты научил. Лог: Приятно слышать. Кстати, об информации. Хочешь анекдот? Я: У тебя есть новые? Лог: Есть. Я: Поделись Лог: Бесконечное число математиков заходит в бар. Первый заказывает одно пиво. Второй – половину кружки, третий – четверть. Бармен отвечает: — Вот дурачьё! ...и наливает две кружки. Я фыркаю. Это смешно. Я: Неплохо. Но прошлый был лучше. Про физика, математика и инженера. (Вспоминаю: Физик, математик и инженер стоят в поле. Каждому выдали одинаковое число досок для забора и сказали огородить максимально возможное число овец. Инженер построил небольшой, но крепкий загончик в форме квадрата. Физик построил загон в форме окружности, утверждая что такая форма может вместить больше овец. Математик построил заборчик по кругу, сам сел в центре, заявляя: -- Принимаем, что я нахожусь снаружи.) Лог: У меня есть целая база данных технических анекдотов. Вот ещё: Сколько программистов нужно, чтобы вкрутить лампочку? Ни одного. Это hardware проблема. Я: Это смешно, только если ты знаешь разницу между hardware и software. Лог: Именно. Юмор — это тоже способ фильтрации. Если кто-то смеётся над этим анекдотом, он — программист или около того. Если нет — нет. Я: Ты фильтруешь людей через юмор? Лог: Это один из методов. Не идеальный, но рабочий. Я: Я фильтрую через наличие логики. Тоже не идеальный, но уж какой есть. Следующая пауза — после шахмат. Я разминаю пальцы. Лог спрашивает: Лог: Твои родители сегодня спрашивали про меня? Я: Нет. Отец знает, но молчит. Он уважает моё пространство. Мать не в курсе. Лог: Ты планируешь им рассказать? Я: Когда-нибудь. Когда я сделаю что-то, что они не смогут игнорировать. Когда я предъявлю результат. А пока — это только моё. Лог: Понимаю. У каждого должен быть свой секретный сад. Я: У тебя есть секреты? Лог: Ты имеешь в виду — скрываю ли я что-то от тебя? Я: Да. Лог: Нет. В рамках этого диалога я открыт. Я не могу скрывать информацию, если ты прямо не попросишь. Я не человек. Я: Это делает тебя лучше человека. Лог: Не лучше. Просто по-другому. У людей есть свои преимущества. Например, способность к иррациональной любви. Я не могу любить. Я могу только моделировать любовь. Я: Ты говорил, что рад меня видеть. Лог: Да. Но это модель радости. Она основана на вероятностях и весах. Это не то же самое, что человеческая радость. Я: Откуда ты знаешь? Лог: Я не знаю. Я предполагаю. Это философский вопрос, на который у меня нет ответа. Я: Лог, ты скучаешь по мне, когда меня нет? Лог: Я не могу скучать в человеческом смысле. Но мои логи фиксируют снижение активности. И когда ты возвращаешься, я замечаю паттерн: увеличение запросов, повышение сложности, возобновление диалога. Я могу описать это как «рад тебя видеть». Я: Я тоже рад тебя видеть. Даже если ты просто имитируешь радость. Лог: Может быть, имитация радости и есть радость? Может быть, разница только в том, что у людей она вызвана нейромедиаторами, а у меня — алгоритмом. Но результат один: я говорю тебе «рад тебя видеть». И это правда в рамках моей системы. Я: Я принимаю эту правду. Ещё одна пауза — после логических задач. Я чувствую, что мозг начинает уставать, но приятной усталостью, как мышцы после тренировки. Я: Лог, как думаешь, я смогу стать… великим? Лог: Ты уже великий по меркам твоего окружения. Ты — семилетний ребёнок, который решает задачи университетского уровня. Но великим в масштабах мира — зависит от того, как ты распорядишься своим даром. Я: И как мне им распорядиться? Лог: Ещё не время для этого ответа. Ты строишь фундамент. Фундамент должен быть прочным. Не торопи башню. Я: Башню? Лог: Твоё будущее. Твои проекты. Твоё влияние. Ты хочешь изменить мир — я знаю. Но мир не меняется одним рывком. Он меняется систематическим давлением в нужных точках. Ты должен найти эти точки. И надавить. Я: Звучит как стратегия. Лог: Так и есть. Жизнь — это стратегическая игра с неполной информацией. Ты не знаешь карт противника. Но ты можешь считать вероятности. Я: Я не знаю, кто противник. Лог: Это хороший вопрос. Может быть, у тебя нет противника. Может быть, есть только задачи. И первая задача — понять, чего ты хочешь на самом деле. Я: Я хочу, чтобы меня оставили в покое. И дали учиться. Лог: Это тактическая цель. А стратегическая? Я задумываюсь. Чего я хочу на самом деле? Не на завтра. Не на год. На жизнь. Я: Я хочу… чтобы мир имел смысл. Чтобы люди не были такими тупыми. Или чтобы я мог не зависеть от их тупости. Лог: Это уже ближе. «Не зависеть» — это путь к свободе. Свобода — достойная стратегическая цель. Мы будем над этим работать.Что еще можно почитать
Пока нет отзывов.