Компьютерная игра Need For Speed 3 1998 г. выпуска фирмы Electronic Arts [1] на взгляд автора представляет собой один из инженерных и творческих шедевров. Ситуации, которые возникают в игре и требуют точного управления автомобилем, можно сравнить с шахматной партией, которую разыгрывают на головокружительной скорости в 200 км/час. Реализация разработчиками игры тактики поведения виртуальных соперников в гонке просто восхищает. Уровень трудности состязания очень точно подбирается под уровень освоения техники вождения игроком, так, что игрок по мере совершенствования навыков вождения с одной стороны играет все с большим напряжением, а с другой стороны, игра дает игроку возможность время от времени побеждать, получая тем самым мотивацию к дальнейшему самосовершенствованию.
Всестороннее изучение названной игры может потребовать сотен часов игрового времени и сложных алгоритмов исследований. В данной работе приводятся только результаты исследования некоторых характеристик спортивного виртуального автомобиля Ламборгини, рассматриваемого как динамический объект управления.
Виртуальный гоночный автомобиль может рассматриваться как динамический объект управления, существующий объективно и, следовательно, его динамические характеристики можно исследовать, а сам автомобиль подвергнуть идентификации с целью построения его модели.
Для исследования разгонных характеристик был выбран достаточно протяженный, прямолинейный, близкий к горизонтальному участок трассы Hometown, длина которого (примерно 300 м) позволяла разгонять по прямой автомобиль до четвертой скорости включительно:
Рис. 1. Участок трассы Hometown, на которой проводилось исследование разгонных характеристик спортивного автомобиля Lamborghini Diablo SV
Для регистрации переменных движения проводилась видеосъемка, значения переменных движения измерялись штатными приборами автомобиля. Значения скорости движения и величины оборотов двигателя снимались по кадрам и обрабатывались в программе MathCAD [1], где применялась кубическая сплайн - интерполяция. Ускорение и пройденный путь определялись дифференцированием и интегрированием скорости:
Рис. 2. Таблица экспериментальных данных и операторы для построения кинематических характеристик Lamborghini Diablo SV в среде MathCAD
Рис.3. Кинематические характеристики в первые десять секунд разгона автомобиля Lamborghini Diablo SV с автоматической коробкой переключения передач
Как видно на рис.3, в момент старта машина начинает энергично разгоняться, двигатель развивает обороты, а с ними, как известно, до некоторых пор увеличивается и вращающий момент, поэтому ускорение машины плавно нарастает. На скорости 90 км/час (25 м/сек) автоматическая коробка переключения передач включает вторую передачу и далее, по мере разгона, включает следующие. При этом обороты двигателя поддерживаются в оптимальном диапазоне от 4.9 до 6.3 тыс. об/сек, в котором вращающий момент двигателя близок к максимальному 443 lb·ft = 5900 Н·м, достигаемому при 5500 об/мин.
Применение операции дифференцирования при обработке экспериментальных данных не самый лучший вариант, эта операция усиливает влияние ошибок измерений. Тем не менее, кубическая сплайн – интерполяция, как видно на рис. 3, позволяет в существенной степени снизить негативное влияние дифференцирования. Вероятно, в некоторых случаях для сглаживания экспериментальных данных целесообразнее применять среднеквадратический критерий.
В некоторых местах ряда трасс гонок машина, при движении с достаточно высокой скоростью отрывается от дороги и пролетает некоторое расстояние. Этим обстоятельством можно воспользоваться для определения коэффициента аэродинамического сопротивления автомобиля.
Рис. 4. Lamborghini Diablo SV в полете на трассе Country Woods
Характеристики полета, полученные экспериментально и вычисленные, приведены на диаграмме рис. 5:
Рис.5. Характеристики полета машины при выезде из тоннеля на трассе Country Woods (направление Backward). Торможение, вызванное сопротивлением воздуха, заметно меняется на протяжении полета, что не в полной мере соответствует действительности. На самом деле ускорение должно плавно убывать с уменьшением скорости. Среднее значение ускорения, вызванного сопротивлением воздуха, составляет примерно -5 м/сек2, что значительно больше, чем в реальности (см. ниже)
где F - сила сопротивления,
S — площадь фронтальной проекции (мидель),
р — плотность воздуха, примерно равная 1 кг/м3,
v — скорость набегающего воздушного потока,
Сх — коэффициент сопротивления.
Площадь фронтальной проекции Lamborghini Diablo SV определим по фотографии и габаритам машины:
Рис. 6. Мидель Lamborghini Diablo SV. Его площадь примерно равна 2.1 м2
Из рис.5 можно определить среднее значение ускорения автомобиля, вызванное сопротивлением воздуха в полете. Это значение на скорости 50 м/сек примерно равно – 5 м/сек2. Массу m заправленного Lamborghini Diablo SV с водителем примем равной 1800 кг (масса пустого 1612 кг). Тогда сила торможения составит
Такое значение представляется существенно завышенным. Действительно, в соответствии с техническими характеристиками, реальная Lamborghini Diablo SV при мощности в 529 л.с. (400 кВт, 7100 об/сек) развивает максимальную скорость в 335 км/час (93 м/сек). Очевидно, что сила торможения, которую преодолевает двигатель, составляет:
Большая часть (3) относится к преодолению сопротивления воздуха. Из сравнения (2) и (3) видно, что в игре NFS 3 сопротивление воздуха на скорости вдвое меньшей, чем максимальная, когда сопротивление воздуха должно было бы быть вчетверо меньшим, чем в (3), принято на порядок более высоким по сравнению с тем значением, которое должно быть в реальности.
Результаты определения скорости полета штатным спидометром виртуального автомобиля могут показаться не корректными, поскольку у реальных машин спидометр соединен с колесами, а не действует по принципу самолетных измерителей скорости, основанных на измерении давления набегающего потока воздуха. Тем не менее, принимая в первом приближении движение в полете равнозамедленным и зная изменение скорости между точками отрыва и касания, когда спидометр дает верные показания, можно оценить ускорение делением изменения скорости на время полета. Такая оценка дает результаты, близкие к приведенным на рис. 5. Так, для этого полета получается, что а = 4.3 м/сек2. Полет при выезде из «амбара» на трассе Country Woods дает замедление 7.8 м/сек2, а полет в том же месте на трассе Hometown проходит со средним замедлением в 10.8 м/сек2!
что совершенно не согласуется с реальным коэффициентом, который, даже на глаз, учитывая аэродинамическое совершенство кузова Lamborghini Diablo SV, должен быть на порядок меньше полученного значения, например 0.2 - 0.3.
Возможно, разработчики завысили сопротивление воздуха с целью повышения эффекта присутствия.
Торможение важный режим движения автомобиля, определяющий безопасность и допустимую скорость езды. Изучение характеристик торможения проводилось на том же участке трассы Hometown рис.1, где изучался разгон. Машина разгонялась на предшествующей дистанции до скорости в 200 – 230 км/час и затем газ отпускался и включался тормоз вплоть до остановки машины. Результаты приведены на рис. 7.
Рис. 7. Характеристики торможения Lamborghini Diablo SV на прямолинейном участке трассы. Замедление (отрицательное ускорение) практически постоянно, примерно равно -10 м/сек2 и не зависит от скорости движения. Поэтому скорость линейно уменьшается с течением времени. Автоматическая коробка передач не отключает двигатель на участке торможения и поскольку газ отпущен, то некоторый вклад в торможение вероятно вносит и двигатель
Рис.7 позволяет оценить силу торможения. Для среднего значения ускорения – 10 м/сек2
Как видно из (5) сила торможения равна весу автомобиля, что казалось бы, не возможно, поскольку коэффициент трения резиновых покрышек по асфальту не превышает 0.5 - 0.8. Но ввиду специальной аэродинамики корпуса Lamborghini Diablo SV под днищем создается разряжение воздуха, которое «присасывает» машину к дороге. Это позволяет получать на значительных скоростях силу торможения большую, чем вес автомобиля. Но на относительно малых скоростях сила торможения должна быть меньше.
Экспериментальная зависимость длины тормозного пути и времени торможения от скорости движения, построенная в MathCAD приведена на рис.8.
Рис.8. Зависимость времени торможения и тормозного пути от скорости для виртуального Lamborghini Diablo SV. Время торможения практически линейно зависит от скорости. Коэффициент пропорциональности равен 3 сек/100 км/час. Тормозной путь пропорционален квадрату скорости. Эти свойства определяются тем, что разработчиками NFS 3 задана постоянная, не зависящая от скорости, сила торможения
Таким образом, торможение автомобиля реализовано в NFS 3 с помощью упрощенного алгоритма. На сравнительно малых скоростях сила торможения должна быть существенно, на несколько десятков процентов меньше
Начнем с самой простой модели. Обратим внимание, что при старте с места на первой передаче среднее ускорение автомобиля примерно равно 7 м/сек2 (см. рис3). Газ включается нажатием клавиши «Стрелка вверх». Примем, что при этом на модель поступает единичный сигнал. Скорость это интеграл от ускорения, пройденный путь – интеграл от скорости. Поэтому простейшая модель примет вид:
Рис. 9. Простейшая приближенная динамическая модель спортивного виртуального автомобиля Lamborghini Diablo SV в режимах разгона на первой скорости и торможения
Как видно на рис. 7, ускорение машины при торможении составляет – 10 м/сек2. Это примерно равно значению 7 м/сек2, принятому в рассматриваемой модели, поэтому простейшая модель отражает свойства моделируемого автомобиля не только при разгоне на первой передаче, но и при торможении. Действительно, и на рис.7 и на рис. 9 торможение от скорости 25 м/сек до остановки длится примерно 3 сек, хотя модель при этом покрывает больший путь.
Основное достоинство построенной модели это ее простота. Она отображает главное в динамике разгона и торможения автомобиля: скорость и пройденный путь определяются накоплением действия педалей газа или тормоза, осуществляемым интеграторами. Эта модель может служить исходным эскизом для построения все более детальных моделей, которые потребуют применения дополнительных блоков, в том числе нелинейных.
Сделаем еще один шаг для уточнения модели. Учтем (рис.3), что на участке разгона с места на первой передаче ускорение вначале прыгает скачком до примерно 5 м/сек2, а затем растет по закону, близкому к линейному до 9 м/сек2, примерно за 3 сек, т.е. со скоростью 1.3 м/сек3. Это позволяет построить модель, в которой действие педали газа не просто приводит к пропорциональному значению ускорения, но и к накоплению этого действия со временем. Как и ранее, используем для этого интегратор. Студент - автоматчик сразу узнает в полученном блоке так называемый ПИ – регулятор. В результате, уточненная схема модели примет вид:
Рис. 10. Уточненная приближенная динамическая модель спортивного виртуального автомобиля Lamborghini Diablo SV в режиме разгона на первой передаче
Как видно на рис. 10, возрастание ускорения по мере разгона автомобиля позволяет более точно воспроизвести характер и значения переменных, характеризующих его движение. Ускорение возрастает со временем от начального значения в 5 м/сек2 со скоростью 1.3 м/сек3. Поэтому линия скорости уже не прямая, она приобрела изгиб вверх. На участке разгона скорость в модели возрастает быстрее, чем по линейному закону, что ближе к свойствам виртуального автомобиля.
Дальнейшее уточнение модели, в которой могут присутствовать модели двигателя, муфты сцепления, автоматической коробки переключения передач, модели учитывающей нелинейную зависимость силы сопротивления движению автомобиля от его скорости и другие факторы, а также содержащую обратные связи, можно предложить выполнить дотошным читателям.
Методика анализа виртуального динамического объекта с помощью видеозаписей фрагментов его поведения в различных режимах позволяет выявить кинематические свойства объекта и на основе получаемых результатов построить его количественную динамическую модель.
Динамика реального автомобиля Lamborghini Diablo SV воспроизведена в компьютерной игре с высокой степенью правдоподобности. Однако замедление скорости движения в полете задано на порядок более высоким, чем в реальности. Кроме того, завышена и сила торможения при относительно малых скоростях движения.
NFS 3 не только чисто технически реализует виртуальный аналог реальной гоночной автомашины. В некотором смысле это и произведение искусства. При таком взгляде на игру замеченные отклонения от действительности могут считаться допустимыми и оправданными. Но при тренировках гонщиков – профессионалов эти особенности должны учитываться.
NFS 3 позволяет провести еще много исследований, в частности, определить насколько точно осуществлено пространственное масштабирование и как оно соотносится с показаниями спидометра.
Интересно также установить, решает ли NFS 3 дифференциальные уравнения, описывающие объекты или алгоритм описания реализуется более простыми способами? Проведенное рассмотрение не дает в полной мере ответа на этот вопрос. Хотя описание торможения, по всей видимости, осуществляется упрощенным алгоритмом.
Виртуальные аналоги реальных систем и объектов могут и должны исследоваться на предмет глубины соответствия не только на уровне качественных экспертных оценок, но и количественно. Для этого потребуется разрабатывать соответствующие методики измерений и вырабатывать критерии соответствия. Таким образом, речь идет об инженерной работе в виртуальном мире.
Проведенное рассмотрение показывает, что, играя в компьютерные игры можно не только получать удовольствие собственно от игры, но и находить возможность для проведения исследований. Это полезно и школьнику, и студенту в отношении изобретения и освоения техники проведения исследований. А кто знает, может быть, такие исследования приведут не к игрушечным, а к полезным на практике выводам и даже открытиям?
Идентификация и моделирование виртуальных динамических объектов вполне может стать предметом курсовых или дипломных работ для студентов соответствующих специальностей.
Представляется небезынтересным создание, не нарушая авторских прав разработчиков игр, автопилотов для управления извне виртуальными динамическими объектами.
Отметим еще одну особенность NFS 3, выходящую за рамки проведенного рассмотрения: результат игрока в гонке существенно зависит от его физического и психического состояния. В утомленном состоянии практически невозможно победить. Поэтому, с одной стороны эта игра, вероятно, может быть для психологов инструментом изучения состояния игрока. С другой стороны, она показывает, что и при управлении настоящей автомашиной водитель делает это лучше или хуже в зависимости от своего состояния, вариации которого для него могут быть и не заметны.
Данную статью следует рассматривать не как коммерческую рекламу уже неоднократно обновленной игры, а как признание заслуг ее разработчиков: Сэма Дэйзи (Sam Deasy) и всей команды NFS 3, и благодарность автора за удовольствие, полученное им при освоении и изучении игры.
По вопросам исследования состоятельности виртуальных лабораторных стендов и проведения виртуальных измерений см. также