квантовая психология
79 subscribers
1.04K photos
401 videos
3 files
103 links
неформальный взгляд на формальные вещи

by. @murilaa

весь этот канал — субъективная оценка, не претендующая на истину

ai, codex, openclaw, openai, opencode
Download Telegram
Forwarded from алёна
день 1 допса 1 на мкн
Forwarded from алёна
день 2 допса 2 на мкн
Forwarded from алёна
день 3 допса 3 на мкн
мне очень мало надо для существования

и я не люблю нагружать родителей

работа позже, пока уроки
так выглядит матч между двумя особями одого вида
GeneticPlayer


за крестик [ Х ] играет:
GeneticPlayer p1(best);

лучшая особь, отобранная на метрике высшего акураси при обучении

а за нолик [ О ] играет:
GeneticPlayer p2(Genome::random());

особь относящаяся к виду GeneticPlayer, но со случайным геномом


в моем случае геном представляет из себя шестимерный вектор, каждая координата которого — число с плавающей точкой, нужное для обработки ситуации на поле и принятия решений исходя из "веса" числа
Draw!

если столкнуть лучшую особь против самой себя:
GeneticPlayer p1(best);
GeneticPlayer p2(best);


они просто перестают мешать друг другу и оба побеждают
боты ходят так, чтобы не проиграть. выиграть друг у друга очень сложно, потому что оба знают оптимальные ходы
( с точки зрения своей модели )
Forwarded from лексус но не машина
боже это что
про отбор в игре крестики нолики с генетическим алгоритмом

Gen 0: создается 100 особей со случайным геномом GeneticPlayer p1
геном = стратегия игры бота

struct Genome {
float w_my_2; // 2 мои фишки
float w_my_3; // 3 мои фишки
float w_my_4; // 4 мои фишки
float w_enemy_2; // 2 фишки врага
float w_enemy_3; // 3 фишки врага
float w_enemy_4;} // 4 фишки врага

по сути геном это вектор принятия решений


все 100 особей по очереди играют с стандартным игроком класса MyPlayer p2

все 100 матчей в Gen 0, оцениваются фитнес-функцией. строится таблица "лидеров"
половина таблица отрезается, остается только топ 50 лучших особей

именно они станут родителями для новой сотни особей в Gen 1