Шестиугольная Самоорганизующаяся карта в Python

Я ищу шестиугольную самоорганизующуюся карту на Python.

hexagonal tiling

  1. готовый модуль. Если Вы существуете.
  2. способ вывести шестиугольную ячейку на печать
  3. алгоритмы еще для работы с шестиугольными ячейками как массив или что-то

О нас: Самоорганизующаяся карта (SOM) или самоорганизующаяся карта функции (SOFM) являются типом искусственной нейронной сети, которая обучена с помощью обучения без учителя для создания (обычно двумерного) низко-размерного

7
задан Community 8 February 2017 в 14:21
поделиться

1 ответ

У меня нет ответа на пункт 1, но есть некоторые подсказки для пунктов 2 и 3. В вашем контексте вы моделируете не физическое 2D-пространство, а концептуальное пространство. с плитками, у которых есть 6 соседей. Это можно смоделировать с помощью квадратных плиток, расположенных в столбцы, причем нечетные столбцы смещены по вертикали на половину размера квадрата. Я попробую диаграмму ASCII:

 ___     ___     ___     
|   |___|   |___|   |___
|___|   |___|   |___|   |
|   |___|   |___|   |___|
|___|   |___|   |___|   |
|   |___|   |___|   |___|
|___|   |___|   |___|   |
    |___|   |___|   |___|

Вы можете легко увидеть, что у каждого квадрата есть 6 соседей (кроме, конечно, тех, что по краям). Это легко моделируется как двумерный массив квадратов, и правила вычисления координат квадрата в позиции (i, j), где i - строка, а j - столбец, довольно просты:

если j четное:

(i+1, j), (i-1, j), (i, j-1), (i, j+1), (i-1, j-1), (i+1, j-1)

если j нечетное:

(i+1, j), (i-1, j), (i, j-1), (i, j+1), (i+1, j-1), (i+1, j+1)

(4 первых члена идентичны)

6
ответ дан 6 December 2019 в 19:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: