|
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 75
|
|
псевдо AI гонки17.10.2013, 22:17. Показов 3774. Ответов 20
Метки нет (Все метки)
Ребята, подкиньте идею как сделать псевдо-ии для бота в гонках?
Из данных есть только массив точек (х,у) для лвого края трассы и тоже самое для правого (см рисунок)
0
|
|
| 17.10.2013, 22:17 | |
|
Ответы с готовыми решениями:
20
Гонки в 2Д Гонки Гонки |
|
835 / 643 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
|
|
| 18.10.2013, 12:45 | |
|
Массив из 7 показанных точек или из большого количества?
В первом случае непонятно, откуда вообще взялась трасса. Может сплайн какой?
0
|
|
|
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 75
|
|
| 18.10.2013, 13:44 [ТС] | |
|
Трасса это 3D модель (которую я 100% не буду обрабатывать для ИИ), а точек можно и больше сделать при желании.
0
|
|
|
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 75
|
|
| 18.10.2013, 14:53 [ТС] | |
|
Ну от точки к точке это просто "скрипт" (и это у меня уже есть), хотелось бы чуток посложнее это в ту сторону где "движение можно задавать с отклонением"
0
|
|
| 18.10.2013, 15:14 | |
|
Как-то с терминами неважно. AI = Adobe Illustrator? А что такое "песвдо-ии" - теряюсь в догадках.
Если вопрос как из точек сделать кривую - сплайн конечно, напр кубический или Безье, тут широкий выбор
0
|
|
|
835 / 643 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
|
||
| 18.10.2013, 15:58 | ||
|
Добавлено через 7 минут В большинстве случаев надо стараться ехать как можно более прямо и минимально использовать торможение.
0
|
||
|
835 / 643 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
|
||
| 18.10.2013, 16:49 | ||
|
0
|
||
| 18.10.2013, 17:09 | |||
Добавлено через 15 минут Можно задачу разбить на подзадачи, что конкретно требуется? -- К примеру есть координатная сетка 100 на 100 ячеек, некторые ячейки мертвые, некоторые - активные. Нужно зная первую старт-ячейку и конечную найти кратчайший маршрут к ней? вот как на блюдичке ru.wikipedia.org/wiki/Алгоритм_Дейкстры.
Добавлено через 1 минуту гуглить никто нехочет
0
|
|||
|
|
|
| 18.10.2013, 17:13 | |
|
Можно сделать фиксированные маршруты.
1. Самый оптимальный = бот с высоким ИИ. 2. Средней оптимальности = средний уровень 3. Бот на маршруте средней оптимальности едет с меньшей скоростью (тут вообще можно проценты забахать и плавно изменять уровень бота). Т.е. если нет машин, то бот будет ехать по одной и той же траектории с заданной скоростью и изменять ее на поворотах, как записано в программе. К этому добавить элементы ИИ: обработку ситуаций, когда рядом есть машины (торможение, когда подрезают, обгон впереди идущего и возврат на траекторию и т.д).
1
|
|
| 18.10.2013, 17:23 | |
|
Там не может быть псевдоинтелекта, есть программа движения тачки по трассе и констранта которой равна скорость этой тачки. У игрока мощность двигателя максимальная, и если он играя не тупит то обходит математику благодаря которой противники так классно вписываются в повороты и обходят встречный трафик.
Это просто программа будет, нет там, имхо, никакого эврейского алгоритма.
0
|
|
|
835 / 643 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
|
||||
| 18.10.2013, 17:55 | ||||
|
К задаче на графах сводить явно плохой способ... Добавлено через 50 секунд ![]() Добавлено через 2 минуты
1
|
||||
| 18.10.2013, 17:59 | |||
0
|
|||
|
835 / 643 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
|
|||
| 18.10.2013, 18:28 | |||
|
Трасса задана множеством точек, ограничивающих её с двух сторон, т. е. ненулевой ширины. Сказано, что точек можно сделать много, следовательно можно рассматривать случай, когда точки идут достаточно часто для того, чтобы считать кусок трассы заключённый между точками отрезком (условно, на самом деле трапецией, т. е. с параллельными отрезками по бокам). Ну а остальное как в стандартных гонках - машина может разгоняться, тормозить, имеет некоторые ограничения на ускорение и разгон. Максимальная скорость ограничена за счёт силы трения. При повороте скорость снижается в связи с увеличением трения. Присутствует занос. Надо получить некоторый алгоритм для бота. При этом параметром алгоритма является его "разумность", т. е. оптимальность действий. 0 означает совсем неоптимальные, 1 - идеальное прохождение трассы в условиях отсутствия других игроков. Желательно так же добавить обработку действий других игроков, с аналогичным параметром. Anatoliy Coder, подтверди моё понимание. PS: В предложенном мной алгоритме данным параметром может являться намеренный выбор более близкой точки, расстояние до перерассчёта или частота перерассчёта точки и дополнительное торможение на поворотах. Что-то мне подсказывает, что ни в одной игре логика ботов не зашита в виде траектории для каждой трассы...
0
|
|||
| 18.10.2013, 18:54 | ||
Угол поворота колес, обороты двигателя будут определять физику движения модели авто по трассе, в которой есть четыре точки сцепления с дорогой, коеф. сцепления с дорогой, боковой ветер, аэродинамика корпуса, модели соударений автомобиля с препятствиями, авто-соперниками. Последнее очень сложно будет программировать. Добавлено через 2 минуты Градации интеллекта ИИ для Ботов можно реализовать паузами работы моуля ИИ. Самая умная машина думает 5 раз в секунду, самая глупая 1 раз в секунду.
1
|
||
|
835 / 643 / 101
Регистрация: 20.08.2013
Сообщений: 2,524
|
||
| 18.10.2013, 19:41 | ||
|
0
|
||
| 18.10.2013, 20:19 | ||
|
Я так и не понял чего хочет ТС
0
|
||
|
0 / 0 / 0
Регистрация: 04.10.2012
Сообщений: 75
|
||
| 19.10.2013, 00:40 [ТС] | ||
|
0
|
||
| 19.10.2013, 00:40 | |
|
Помогаю со студенческими работами здесь
20
2D гонки Гонки Гонки Гонки на улитках Исходник гонки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|