ConwayのGameofLifeを組み込みデバイスに実装しようとしています。使用できるRAMは1kbしかなく、合計で512バイトに相当する2048個のセルがあります。一度に次世代の8x8セルを計算するので、一度に2世代をRAMに保存する必要はありません。
しかし、私もやりたいのは、GoLがループ/静的状態でスタックしていることを検出することです。PCでモックアップを作成したときは、最後の100世代と1000世代を保存し、現在の世代と比較しました。1kbのRAMではこれを行うことはできません。私が考えているのは、単に最後のx世代のハッシュを計算し、そのハッシュを現在の世代のハッシュと比較することです。
XTEAまたはSHA1の非常に軽い実装がいくつかありますが、両方の世代の個々のセルが等しいかどうかを判断する必要があるため、ハッシュがこの目的に本当に適しているかどうかはわかりません。あなたは何をお勧めします?
ありがとう、
ジョー
編集:考えてみると、実際に一致の数を数えることができ、それが特定のしきい値に達した場合、それがループ内にあると想定しますが、1000世代ごとに繰り返されるパターンではうまく機能しません。