Для Q-learning нужен набор возможных действий, ведь так?
Сетке нужно определить направление и силу движения. У меня направление и сила движения в dobule, 64bit или 18446744073709551615 состояний для каждого параметра. Это 18446744073709551615 в квадрате = 340,282,366,920,938,463,426,481,119,284,349,108,225 состояний. Это 340 ундециллионов. Я же все верно рассчитал?
Нецензурная статья про то, что менеджеры - жопы - это не грубо. А вот ни к кому не обращенное восклицание пиздец - это уже грубо) Ну простите, что задел ваши нежные чувства таким ужасным словом.
Но когда в комментах человек не знакомый с темой спрашивает - что плохого в целом грамотно написанной статье - а ему за это минусы в карму кидают и минусуют - это пиздец. Это лично моё мнение. Ибо когда общество стигматизирует любопытство - это иначе как пиздец не назвать. Разве что - мракобесие. Если мракобесы дадут понять, что мне с ними не по пути - это будет отличной экономией моего времени.
Если хабр и впрямь больше не место для общения - а рекламная площадка - то пиздую ка я отсюда. Еще 25 минусов нужно.
По законам логики, "и, но" - это умножить. "- это, значит", т.е. определение - следствие.
(просто) но (не понял) значит - (нет). И (да) - это (не просто) и (не понял). Ведь если (да) - это (просто) и (понял). 1*0=0. 1=0*0. 1=1*1. Это просто понять? Т.е. 1 - это (да), а ноль - это (нет), да со знаком минус. А "ноль как пустота и математический ноль" - это знак "равно". (1*=)=(=)(один умножить на равно будет равно). (Это) и (не просто) - это (неизвестно).
Итого, базовая логика через 4 символа "1", "0", "=", "*".
Осталось только выразить сложение через логику, логически изобрести математику. А вот этому уже в школе не учат. Подсказка: если не получится - вы либо не понимаете логику, либо - сложение. А вот насколько "либо", если результат либо ноль либо единица?)
Спасибо! Питон к сожалению не знаю - по "идеологическим" причинам) Я так понял - оценка должна быть каждый такт?
Просто для сетки не всегда известно, было ли действие в такте стратегически выгодным. Может быть так, что выгодное действие сейчас - приведет к поражению, и наоборот. Например, турецкий гамбит в шахматах, отдать ферзя ради победы. Это решается через алгоритм minmax, но минмакс требует расчета вообще всех возможных состояний игрового поля.
"Мы сходили на концерт. После концерта произошли невероятные события. После этих событий мое отношение к миру кардинально изменилось. Посещение концертов мне понравилось. Сходите на концерт."
Видел мельком, но подробно не изучал. С вашей подачи немного ознакомился) Как раз мой случай описан, про "аниматы", но с лучами-сенсорами. Делал до этого похожее на Q-learning - у сетки был выход на каждое возможное действие, выход с максимальным значением определял выбранное действие (может это и есть Q-learning? Хз, делал интуитивно). Результат мне не очень понравился, хоть он и удивил. А так - биологию люблю.
Если бот только 1 - то должен двигаться аналогично "тупому" боту. Но есть нюанс - углы и стены. Если двигаться на упреждение - то можно не выпустить из угла. А значит первому нужно избегать краев поля.
Но тогда в идеале еще инерцию добавить: dx+=cos(a)*force; x=x+dx; dx*=0.98;
Тоже привык, что метриками называют маркетинговые показатели. Размеры, расстояния, масштабы, меры, измерения, размерности, метраж - куча слов на выбор. А вообще:
Метри́ческий те́нзор, или ме́трика, — симметричное тензорное поле ранга (0,2) на гладком многообразии, посредством которого задаётся скалярное произведение векторов в касательном пространстве. Иначе говоря, метрический тензор задаёт билинейную форму на касательном пространстве к этой точке, обладающую свойствами скалярного произведения и гладко зависящую от точки.
Кароче, куча значений куда более фундаментальных, чем "шаблоны размерностей для игры". Ибо есть еще world units - единица измерения в игре, и не обязательно она будет 1м. Какая ширина у кубика в тетрисе, хотите сказать в метрах измеряют?
И FOV в игре является приблизительной комфортной величиной.
Скорее дело в том, что экран занимает лишь часть нашего обзора, как раз где-то 60-120. Поэтом мы видим игру как бы через "окно". Есть так же и гигантские гнутые мониторы на все 220 FOV. Или VR очки - там дважды 220 на каждый глаз, если не больше.
Для игроков метрики не важны, им важен результат их соответствия.
А вот тут секундочку, это откуда вдруг с чего? Шо в дотах есть дистанции в 100 условных единиц, которые описывают радиус или растояние абилок. Шо в разных пошаговых клеточных - хоть тех же героях 3 - шестигранник - это тоже своего рода - "метрика".
Тут тогда статья не про игры, а только про шутеры или типа того. Кароч вся эта женерик попса для приставок, хз как их назвать.
И код - абстрактный, чистая математика. Детали реализации графического UI - не существенны. Хоть юнити, хоть анрил энжин. Разве что синтаксис поменять на <язык>.
Тогда на коммерческий успех расчитывать тоже наивно. Делать для себя - значит для себя.
Про прогу - нужно разделять логику и интерфейс. Можно игровую логику написать вообще без графики, в консоли или на юнит тестах. А графическую часть - отдельно. Кароч - гуглим MVC или DDD. Хотя, это для профи уже.
Я шарп мейню, но игрушки на жс пишу - особо не требовательные к производительности. Хотя ща пришлось шарп расчехлить (думал даж плюсы или раст). Нейросетку учить надо, скорость нужна, хочу нпц на нейронке сделать.
Я делал уже карточную игру. Механика как в Orions: Legend of the Wizards, но вместо насилия - любоф. Ссылку, ессно, не дам (Ибо там затрагивается тема, которая, одному Богу известно - почему-то является запретной, в отличии от убийств и членовредительства). Но делал на ванильном JS, запилил где-то за неделю. На ней же и вывел код стайл, который хорошо ложится на сетевое взаимодействие: через "state" и "controller". А действия - через "history". Т.е. state - содержит лишь информацию (состояние игрового поля), controller - действия с полем. Все действия записываются в history. GUI читает новые события из history и отображает их. Еще и немного механику AI проработал - minmax.
Я считаю, что реклама — это устаревший маркетинговый инструмент для продажи игр.
Тут - любо бешено соглашаюсь. Идеальный маркетинг - превентивный. Изучаем потребности ЦА - проектируем потребность - реализуем продукт. Но в вашем случае - все равно: "сначала я сделаль, потом заставиль это кушац". Т.е. желание разраба превалирует над желаниями потребителей. Это уже чисто творчество, но не бизнес. Ибо результат работы в первую очередь удовлетворяет создателя, но не публику.
Я обожаю тратить деньги на бустеры для Мотыги, но понимаю, что это нечестно.
Если это в правилах игры - то честно. Честно то, что не обман. Читерить - бесчестно. Харстон тоже "донатная помойка" - но это лучшая многопользовательская ККИ.
Для Q-learning нужен набор возможных действий, ведь так?
Сетке нужно определить направление и силу движения. У меня направление и сила движения в dobule, 64bit или 18446744073709551615 состояний для каждого параметра. Это 18446744073709551615 в квадрате = 340,282,366,920,938,463,426,481,119,284,349,108,225 состояний. Это 340 ундециллионов. Я же все верно рассчитал?
Нецензурная статья про то, что менеджеры - жопы - это не грубо. А вот ни к кому не обращенное восклицание пиздец - это уже грубо) Ну простите, что задел ваши нежные чувства таким ужасным словом.
Но когда в комментах человек не знакомый с темой спрашивает - что плохого в целом грамотно написанной статье - а ему за это минусы в карму кидают и минусуют - это пиздец. Это лично моё мнение. Ибо когда общество стигматизирует любопытство - это иначе как пиздец не назвать. Разве что - мракобесие. Если мракобесы дадут понять, что мне с ними не по пути - это будет отличной экономией моего времени.
Если хабр и впрямь больше не место для общения - а рекламная площадка - то пиздую ка я отсюда. Еще 25 минусов нужно.
Пиздец еще и в карму минусанули)
Неистово соглашаюсь с логикой этого комментатора) Не осилил) Для меня - "не" "достаточно просто", т.е. (достаточно просто) со знаком минус.
По законам логики, "и, но" - это умножить. "- это, значит", т.е. определение - следствие.
(просто) но (не понял) значит - (нет). И (да) - это (не просто) и (не понял). Ведь если (да) - это (просто) и (понял). 1*0=0. 1=0*0. 1=1*1. Это просто понять? Т.е. 1 - это (да), а ноль - это (нет), да со знаком минус. А "ноль как пустота и математический ноль" - это знак "равно". (1*=)=(=)(один умножить на равно будет равно). (Это) и (не просто) - это (неизвестно).
Итого, базовая логика через 4 символа "1", "0", "=", "*".
Осталось только выразить сложение через логику, логически изобрести математику. А вот этому уже в школе не учат. Подсказка: если не получится - вы либо не понимаете логику, либо - сложение. А вот насколько "либо", если результат либо ноль либо единица?)
Кэп, за что минусы?
Спасибо! Питон к сожалению не знаю - по "идеологическим" причинам) Я так понял - оценка должна быть каждый такт?
Просто для сетки не всегда известно, было ли действие в такте стратегически выгодным. Может быть так, что выгодное действие сейчас - приведет к поражению, и наоборот. Например, турецкий гамбит в шахматах, отдать ферзя ради победы. Это решается через алгоритм minmax, но минмакс требует расчета вообще всех возможных состояний игрового поля.
Разве что порядок типов проводимых занятий информативен.
Очень много "воды" и мало "фактов". Вот история:
"Мы сходили на концерт. После концерта произошли невероятные события. После этих событий мое отношение к миру кардинально изменилось. Посещение концертов мне понравилось. Сходите на концерт."
Видел мельком, но подробно не изучал. С вашей подачи немного ознакомился) Как раз мой случай описан, про "аниматы", но с лучами-сенсорами. Делал до этого похожее на Q-learning - у сетки был выход на каждое возможное действие, выход с максимальным значением определял выбранное действие (может это и есть Q-learning? Хз, делал интуитивно). Результат мне не очень понравился, хоть он и удивил. А так - биологию люблю.
Если бот только 1 - то должен двигаться аналогично "тупому" боту. Но есть нюанс - углы и стены. Если двигаться на упреждение - то можно не выпустить из угла. А значит первому нужно избегать краев поля.
Но тогда в идеале еще инерцию добавить: dx+=cos(a)*force; x=x+dx; dx*=0.98;
Ага, я статью даж видал) https://habr.com/ru/articles/336612/
У меня кста сигимоида чот не работала.
Коллаж стремный такой)
Тоже привык, что метриками называют маркетинговые показатели. Размеры, расстояния, масштабы, меры, измерения, размерности, метраж - куча слов на выбор. А вообще:
Кароче, куча значений куда более фундаментальных, чем "шаблоны размерностей для игры". Ибо есть еще world units - единица измерения в игре, и не обязательно она будет 1м. Какая ширина у кубика в тетрисе, хотите сказать в метрах измеряют?
Скорее дело в том, что экран занимает лишь часть нашего обзора, как раз где-то 60-120. Поэтом мы видим игру как бы через "окно". Есть так же и гигантские гнутые мониторы на все 220 FOV. Или VR очки - там дважды 220 на каждый глаз, если не больше.
А вот тут секундочку, это откуда вдруг с чего? Шо в дотах есть дистанции в 100 условных единиц, которые описывают радиус или растояние абилок. Шо в разных пошаговых клеточных - хоть тех же героях 3 - шестигранник - это тоже своего рода - "метрика".
Тут тогда статья не про игры, а только про шутеры или типа того. Кароч вся эта женерик попса для приставок, хз как их назвать.
Вт кста, вот за пару дней (36 часов) для GMTK делал карточную игру.
https://ildar-in.itch.io/unsurvived
Вот код для плавного перемещения карты в нужную позицию: c.position.x - где должно быть, c.container.position.x - где есть сейчас.
И позиция: aRad - "угол карты", чтобы было "веером". Тут не оптимизированно т.к. dx и rdx можно сохранять, но я ж говорю - на оптимизацию забил)
Про то, как на жс по быстрому написать игру - Что такое игра? Как ее написать?
И код - абстрактный, чистая математика. Детали реализации графического UI - не существенны. Хоть юнити, хоть анрил энжин. Разве что синтаксис поменять на <язык>.
Тогда на коммерческий успех расчитывать тоже наивно. Делать для себя - значит для себя.
Про прогу - нужно разделять логику и интерфейс. Можно игровую логику написать вообще без графики, в консоли или на юнит тестах. А графическую часть - отдельно. Кароч - гуглим MVC или DDD. Хотя, это для профи уже.
Я шарп мейню, но игрушки на жс пишу - особо не требовательные к производительности. Хотя ща пришлось шарп расчехлить (думал даж плюсы или раст). Нейросетку учить надо, скорость нужна, хочу нпц на нейронке сделать.
Я делал уже карточную игру. Механика как в Orions: Legend of the Wizards, но вместо насилия - любоф. Ссылку, ессно, не дам (Ибо там затрагивается тема, которая, одному Богу известно - почему-то является запретной, в отличии от убийств и членовредительства). Но делал на ванильном JS, запилил где-то за неделю. На ней же и вывел код стайл, который хорошо ложится на сетевое взаимодействие: через "state" и "controller". А действия - через "history". Т.е. state - содержит лишь информацию (состояние игрового поля), controller - действия с полем. Все действия записываются в history. GUI читает новые события из history и отображает их. Еще и немного механику AI проработал - minmax.
Тут - любо бешено соглашаюсь. Идеальный маркетинг - превентивный. Изучаем потребности ЦА - проектируем потребность - реализуем продукт. Но в вашем случае - все равно: "сначала я сделаль, потом заставиль это кушац". Т.е. желание разраба превалирует над желаниями потребителей. Это уже чисто творчество, но не бизнес. Ибо результат работы в первую очередь удовлетворяет создателя, но не публику.
Если это в правилах игры - то честно. Честно то, что не обман. Читерить - бесчестно. Харстон тоже "донатная помойка" - но это лучшая многопользовательская ККИ.
Мыши плакали, кололись - но продолжали жрать кактус.
Объяснить - когда сам понимаешь. Научить - когда оба.
Нет. Даже можно местами поменять.
"Если вы чему-то не можете научить 6-летнего ребёнка, вы сами этого не понимаете."
Все еще не понятно :)