1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6

# конспект · шаг 6 из 6

Конспект: сборка сервера

выжимка - её можно унести в заметки

Понятия

Инвариант мира - условие на всё состояние игры, верное после каждого хода; проверка называет ход, на котором мир сломался.

Детерминированное правило конфликтов - исход зависит от заявок, но не от порядка их прихода; без него повтор партии из журнала расходится.

Разбор до устойчивости - правило применяют, пока никто новый не остановился; кругов не больше, чем отрядов, плюс завершающий.

Ошибка упаковки - два числа в одном, координаты в номере, поле фиксированной длины: за границей данные молча портятся.

Профиль - работа каждого модуля за ход. Тест удвоения - p = log₂(работа при 2n / работа при n).

Что унести

ИНВАРИАНТЫ И КОНФЛИКТЫ
инвариант: в клетке не больше одного отряда - проверка после хода
спор: меньший номер шагает, проигравший стоит и блокирует клетку
цепочка 1, 2 -> 13; 3 -> клетка 2: одно правило - два в клетке 14,
          до устойчивости - порядок за 3 круга
круг отрядов «каждый в клетку следующего» - сдвигается целиком
СТРЕСС-ТЕСТ СБОРКИ
ключ ход · 1000 + номер: номера до 20 - 300 чистых попыток
номера до 1100 - расхождение с первой попытки
уменьшение: 6 событий -> [[1, 1000]], номер 1000 распакован как 0
генератор: маленькие значения + значения у каждой границы
ПРОФИЛЬ И УДВОЕНИЕ
40 × 40, 140 отрядов: обзор перебором 9730 (60% хода), сеткой 2762
ускорение модуля с долей d в k раз: ход = 1 - d + d / k
перебор p = 2,0; сетка на карте 64 - p ≈ 2 (плотность растёт);
сетка на растущей карте - p ≈ 1,1
задача: поле на цель один раз за игру - 125 218 -> 7894 шагов

Ловушки джокера

Модули верны - значит, всё верно. Два отряда в клетке, а падает модуль боя через десять ходов.

«Кто первый заявил». Повтор турнира из журнала даёт другой результат.

Правило в один проход. Цепочки блокировок ломают инвариант раз в несколько партий.

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

Оптимизация по ощущению. Ускоряли обход карты, а тормозили пары в обзоре.

Сетка «решила проблему». Через полгода отрядов на той же карте вчетверо больше - и ход опять не влезает.

Комментарии

Пока нет комментариев. Будь первым!

Оставить комментарий

Комментарий появится после проверки. Email не публикуется. Войти, чтобы не вводить имя каждый раз.