Hashlife: в какой новый ад я попадаю?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Hashlife: в какой новый ад я попадаю?

Сообщение Anonymous »

Как следует из названия, я пытаюсь заняться Hashlife.
Я прыгаю вслепую? Нет, ну, не совсем.
Во-первых, я изучил эту статью о GoL:
https://medium.com/@d.dadiani343/how-to ... f9196d9844
И код Java, найденный в репозитории Git, связанном со статьей:
https://github.com/TomC333/Conway-Life- ... ----------
Благодаря этому я получил базовое представление о том, как работает GoL.
Как и естественно, я попытался расширить сетку — больше ячеек, больше удовольствия! Верно?
Конечно! Но я также обнаружил, что эта базовая реализация значительно замедляется, поскольку каждая ячейка связана с работающим потоком.
Хорошо, тогда «как ускорить GoL», я погуглил. Находки: Hashlife во всей красе.
Как работает Hashlife? Я наткнулся еще на несколько статей, в частности:
https://en.wikipedia.org/wiki/Hashlife
https://www.dev-mind.blog/hashlife/
https://jacobfilipp.com/DrDobbs/article ... b.html#rl1
https://www.thelowlyprogrammer.com/2011 ... hlife.html
Теперь, «почему» я здесь, пишу этот пост: я вроде как понял на концептуальном уровне, как работает алгоритм Уильяма Госпера с использованием квадродерева, подразделением сетки на все более мелкие квадратные подсетки (узлы), вычислением и канонизацией центров узлов и т. д.
В чем же тогда дело? Ах! Видите ли... Я загружаю Eclipse (да, я практикую Java), создаю новый проект и... Ничего! Абсолютное, чистое, неподдельное пустое сознание.
Я изо всех сил пытаюсь понять, как преобразовать алгоритм в реальные классы и функции. Должен ли я все еще использовать потоки? Как разделить узел на более мелкие узлы? Как в этом новом сценарии рассчитывается состояние клетки на основе трех основных правил Жизни? Как вычислить состояние ячеек только в центральной области узла? Как канонизировать базовые шаблоны? Как мне их хэшировать? И так далее, и так далее (это всего лишь несколько вопросов, которые крутятся у меня в голове).
Тогда вопрос (на самом деле, n-й на данный момент): знает ли кто-нибудь из вас какое-либо пошаговое руководство по кодификации Hashlife? Что-то, что может подсказать, помочь при возникновении затруднений.

Подробнее здесь: https://stackoverflow.com/questions/798 ... tting-into
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»