Эволюции -тред. Надеюсь ночной достаточно ночной (не нашел - не искал, создал - не проеби, не взлетит - побампаю).Рейт пазязя: https://habrahabr.ru/post/328568/ :3Смотри, если ввести в алгоритм одни углы - получается что-то типа листочков-корешков. С другими углами - что-то похожее на эмбрионы. А если прикрутить туда эволюционный механизм - получится что-то напоминающее скелетик.Дискас.
Пробую по всякому автоматизировать fitness-функцию (вместо абстрактного "больше нравится" решить какую-то более конкретную задачу). В качестве примера - отбирать для скрещивания те фракталы, точки которых находятся ближе всего к центру (считаем для каждой точки расстояние до центральной точки. Сумму расстояний используем в качестве коэффициента приспособленности).На первой пикче первое поколение (начальная популяция) фракталов с рандомными генотипами. В каждом фрактале 8 генов. Размер популяции - 20 фракталов. Вероятность мутации - 20%Вторая пикча - в 15 поколении появляется наиболее приспособленный мутант, который к 21 поколению заполняет половину популяции. К 29 поколению вся популяция заполнена этим фракталов. Следующие 20 популяций все мутанты оказываются менее приспособленными и сразу вымирают.
В динамике (каждый кадр гифки - следующее поколение). На пикче отметил зеленой стрелочкой тот самый центр.
А теперь, допустим, произошел какой-то катаклизм. Изменилась среда обитания. Вместо "ближе к центру" будем скрещивать "дальше к центру".Первое поколение на пикче 1. К 43 поколению получили что хотели. Результат не оптимальный - дальше мутации очень медленно и незначительно улучшают приспособленность поколения. На четвертой пикче стрелочкой отметил центр.
И обратно меняем условия на начальные (все точки ближе к центру).Оптимальный результат найден к 67 поколению.
В двух словах сча. На первой пикче интерфасе. По умолчанию генерируется 3 популяции, в каждой по 20 фракталов (особей). Популяции нумеруются по количеству генов у особей. Например, 14-я популяция содержит особи с 14 генами в генотипах.Предлагается произвести отбор, нажимая кнопочку "Select" тех особей, которые больше всего нравятся пользователю. Чем больше их выбрать - тем лучше. Потом запустить эволюцию, нажав на кнопочку "Start evolution". Сайтик вначале будет генерировать в основном одну муть, но потом (уже начиная со второго-третьего) у фракталов начнут появляться некоторые характерные признаки (эт конечно если не лениться жмякать кнопочку "Select").Сайтик: http://fractal.xcont.com/Если по хардкору, каждый фрактал рисуется с помощью набора углов. Набор углов (генов) запишем в массив (генотип). В популяции находится фиксированное число особей (фракталов) с генотипами сгенерированными случайным образом. Пользователь, поочередно сравнивая два фрактала, выбирает тот, который ему больше нравится, тем самым повышая приспособленность выбранного фрактала. Те фракталы, которые пользователь выбирает чаще, "выживают" и скрещиваются. Оставшиеся фракталы "вымирают". Скрещивание происходит так: берем двух предков, комбинируем их гены (опять же случайным образом) и заполняем ими генотипы двух потомков. Проделываем эту операцию для всех приспособленных фракталов. Предками и потомками заполняем новую популяцию. Некоторый процент особей (фракталов) в новой популяции мутирует - берем случайный ген из генотипа и заменяем его на случайное значение. Тем самым добавляем разнообразия в генофонд фракталов.
В JS-версии свистелок-перделок добавил. Например, можно посмотреть Parents Tree.
tredeeque в наукаче: https://2ch.hk/sci/res/412896.html
Смотри, какие няшки получаются!
Если немношк поменять способ отрисовки
Хороший тред. Очень красиво.
>>153527265Не взлетает че-т. На ночном одни креационисты собрались.
Самый охуенный тред в этом месяце.
>>153526622На третей чужой что ли?
>>153525699 (OP)На последнем пике - зародыш Пушкина?
Реквестрирую классического инопланетянина. И дудку, разумеется.
>>153527570Где ты там Пушкина увидел, это же медведь.
>>153527587Иди ты на хуй, там лошадь.
>>153527595Слон там, с бивнями. Медведослон.
АААААААААААааааааааааааааааа сохронил.
Абу.
>>153527552
>>153527570На последней скелетика в профиль вижу
>>153525699 (OP)Эволюциодаун, плиз. Может ты ещё и аметист?
>>153527719Жирно-зеленою
>>153527719>2017>верить в еврейских эльфов
Запилил черепа с хвостами.
Атомный взрыв через 30 мутаций превратился в ребёнка с заклеенными глазами.
>>153527886Попробуй его перепилить, чтобы вместо много маленьких был один большой
>>153527916
>>153527995Какой-то Чернобыль эпохи Возрождения просто.
Лось.
>>153528343Не вижу. Делай побольше.
На первой итерации обычно убираю тех, что сжаты в линию. Там опция All на сайте есть. Можно select сразу пачкой делать.
>>153528505Да забил уже, 40 минут кнопки дёргал, и чет все стагнировало в итоге.
>>153528971Процент мутаций де-т на 70 ставишь на пару следующий селекций.Особи перестают развиваться, когда популяция попадает в локальный оптимум. На графике в точке А - локальный, в точке B - глобальный. Чтобы проскочить пропасть между ними, дефолтных настроек мутаций не хватает.Вообще, процент мутаций можно смело до 50% вкручивать.
Утренний бамп!
>>153525699 (OP)Коротенько объясни, зачем там эволюция, и какую задачу она решает?
>>153530798Коротенько, если рисовать фракталы из 8 углов (например) и использовать углы 15°, 30°, 45°, 60° и 75° (со знаком + и -), общее число фракталов, которые можно нарисовать - 100 000 000. Если использовать 9 углов - плюс еще нолик к этом числу. 10 углов - два нолика...Некоторые из фракталов выглядят оче годно, другие не оче. Но все эти фракталы просмотреть вручную, чтобы найти самые годные - не реально. Вот такие задачи как раз и решаются генетическими алгоритмами (эвристический алгоритм поиска же). В рандомный перебор всех фракталов генетический алгоритм добавляет смысл.
>>153525699 (OP)И?
>>153531509Что и?
Дневной бамп!
Бумп
>>153525699 (OP)Поздравляю, ты открыл для себя фракталы. А теперь иди нахуй.
>пиарить в /b/ свой говнопроект-курсачТы ебанат? Ты ебанат!
>>153525699 (OP)>Эволюции -тредПричем тут эволюция? Сука поэтому не люблю хабр, напыщеные дауны пишут обычную и по большей части пустую вообщем-то поебень но заворачивают это все в ЧСВ у кучу намеков на интерес и важность.Объясни, дебил, почему эволюция, а не деградация? У тебя вот видно что в динамике твои фракталы вырождаются в говно. Где тут эволюция. Понимаешь, тупой, долбоеб, термин эволюция в контексте программирования четко связан с программами симулирования жизни, вот к ним действительно применим такой термин. А у тебя, дегранант, не эволюция а просто кликбэйт и ЧСВ дауна, который очень хотел придать значимости своему высеру.