LiSiCin
01.04.2003, 22:19
Прочитав слова Валерия Блажнова, которые он произнес, вернее, написал здесь (http://www.simhq.com/simhq3/sims/boards/bbs/ultimatebb.php?ubb=get_topic;f=37;t=000823) по поводу отмены Динамической Кампании [ДК] в ЛОКОНе, я вспомнил о своем давнишнем желании – увидеть в каком-нибудь симуляторе сильно измененную, усложненную и улучшенную ДК, которая, благодаря качественным изменениям, избавилась бы от большинства типичных проблем и стала настоящим стандартом для Генератора Миссий в симуляторах. И вот решил я написать кое-что про возможный путь решения главной проблемы современных ДК – т.н. Suicide Missions, т.е попросту миссий, которые ДК дает, исходя исключительно из критерия полезности, но никак не из критерия выполнимости.
Для начала оговорюсь, что в качестве базы для усовершенствований я вижу ДК от Falcon 4.0.
Главная идея – то, что во всех ДК большинство миссий – типовые. Т.е. ДК сама строит их по некоему Шаблону. Мы лишь можем поменять условия каждой конкретной миссии, но никогда – сам Шаблон. Для того, чтобы существенно улучшить возможности ДК, мы должны иметь возможность настраивать Шаблоны в самых широких пределах.
Предположим, что у нас есть некий набор Шаблонов Маршрутов для разных целей. Шаблоны сгруппированы по критериям:
1. Тип миссии
2. Цель
3. Носитель АСП
4. Само АСП
5. Уровень противодействия со стороны ПВО
Эти Шаблоны показывают компьютеру, как проложить маршрут миссии, в зависимости от обстановки.
Теперь - пример генерации ударной миссии [ударная интересна тем, что параллельно генерируются обеспечивающие]:
Пришла информация, что по направлению к городу N, находящемуся на территории, которую мы обозначили как территорию с высокой активностью [ на карте PAK красный] выдвинулась колонна. Генератор миссий начинает формировать задание на ее уничтожение. Для начала он отбирает силы, способные выполнить эту миссию – руководствуясь изначальными настройками или измененными нами. Предположим, он отобрал ИБА ВВС и ВМФ, ИА ВВС и ВМФ, БА ВВС. После этого, он смотрит на приоритеты видов войск и отсеивает ИА ВВС и ВМФ и БА ВВС, т.к. первых мы бросили, например, на завоевание превосходства в воздухе, а вторых – на уничтожение командных бункеров и прочих стационарных целей. Далее он выбирает ИБА ВВС, т.к. все самолеты ИБА ВМФ заняты уничтожением других целей. После этого, он выбирает эскадрилью из состава ИБА ВВС, которая может выполнить это задание, учитывая максимальный радиус действия самолетов. Предположим, он выбрал эскадрилью F-16CG. [Вот примерно до этого момента ДК Falcon 4.0 справляется со своими задачами ]
После определения эскадрильи, компьютер выбирает АСП, руководствуясь тем, что ему доступно на складе этой авиабазы, а также задачей минимизации наряда сил, необходимого для выполнения задачи. [А вот здесь – уже нет. Кстати, набор АСП для типовых целей – сам по себе может быть Шаблоном, и мы должны иметь возможность изменять и его ]
Предположим, компьютер остановился на AGM-65D. Соответсвенно, рассчитывая, например, что 90% Мэйвериков попадут в цель [в его базе по АСП обязательно должен быть примерный расчетный % поражения целей, для расчета необходимого наряда сил. При этом было бы неплохо, если бы мы могли корректировать эту таблицу, соотносясь со своими собственными представлениями и статистикой Кампании – сколько боеприпаса израсходовано, сколько было попаданий, сколько целей поражено – это все вообще по всем войскам, а также по отдельными видам, например, только по бомбардировщикам. Соответсвенно, такая статистика должна быть ], он набирает необходимое количество носителей. Если в данной эскадрилье не хватает самолетов для поражения достаточного % целей, компьютер смотрит, может ли он привлечь для выполнения этой задачи силы других эскадрилий [руководствуясь ограничениями по Боевому радиусу, доступным для применения АСП]. Если этих сил достаточно, он продолжает формировать задание. Если нет – либо соглашается на уничтожение части целей, либо отменяет миссию. [кстати, то, согласится он, или нет – тоже неплохо было бы регулировать.. А то он вообще летать не будет, опасаясь что наряд сил недостаточен]
Выбрав АСП и набрав необходимый наряд сил, компьютер начинает рассчитывать уровень угрозы со стороны ПВО. Для этого Генератор рассчитывает количество и качество ЗРК и МЗА, которые находятся в радиусе K километров от цели. Далее, он выбирает из памяти все Шаблоны ударных наземных миссий, из них – Шаблоны миссий атаки бронетехники, из них – Шаблоны для самолетов ИБА, из них – Шаблоны ударов с помощью Мэйвериков [естественно, что все эти Шаблоны маршрутов записаны в память, но могут быть изменены нами в любое время. В этом случае, компьютер будет руководствоваться уже новыми, нашими Шаблонами] и строит примерный маршрут. При построении маршрута он руководствуется Шаблоном миссии с соответвующим уровенем угрозы ПВО [по этому шаблону он выбирает профиль полета ]. Далее он старается расставить точки маршрута так, чтобы как можно бОльшая часть полета проходила вне зон поражения ЗРК и МЗА [естественно, рассчитывая эти зоны соотносясь с высотой полета на соответствующем отрезке маршрута], а там, где придется входить в зоны поражения, компьютер старается прокладывать маршрут через зоны ПВО с как можно меньшей степенью опасности [исходя из своей базы по ЗРК и МЗА, например, он предпочтет войти в зону поражения С-75, чтобы избежать вхождения в зону поражения С-300. Но это – по сути, тоже Шаблон уклонения от ПВО. И он тоже мог бы нами регулироваться]. Далее, компьютер считывает, сколько всего батарей ПВО и МЗА могут обстрелять ударную группу на маршруте до цели и обратно, а исходя из этого – рассчтывает необходимый наряд сил на подавление ПВО [то, как он его рассчитывает – тоже шаблон. И тоже должен настраиваться]. Если этот наряд сил может быть набран [с этой авиабазы или откуда-то еще, учтя боевой радиус и подлетное время], компьютер продолжает формирование миссии. Если нет – он либо ждет, когда силы будут свободны [«замораживая» ударную группировку], либо полностью отменяет миссию [Этот шаблон тоже можно было бы настраивать. Хочешь уничтожить колонну во что бы то ни стало – отправляешь Ударную Группу с меньшим, чем необходимо прикрытием. Моежешь себе позволить не торопиться – ждешь. Если колонна не так уж и важна – наешь возможность компьютеру отправить самолеты на другие задания].
Далее компьютер оценивает уровень угрозы со стороны авиации, рассчитывая, какого качества и сколько самолетов находятся на базах, с которых они могут вылететь на перехват Ударной Группы, начиная с момента ее обнаружения [здесь используется ранее отобранная информация о радарах ЗРК и раннего обнаружения, работающих в районе цели] и заканчивая моментом выхода из атаки и возвращения на базу. На этом этапе компьютеру необходимо знать, с какой периодичностью могут взлетать перехватчики. Эта информация может быть рассчитана исходя из боеготовности авиабаз. Далее к этому количеству добавляются самолеты, находящиеся на боевом дежурстве в районе цели и могущие пойти на перехват. Исходя из этой информации, а также сообразуясь с заданными изначально или нами коэффициентами, компьютер выбирает потребный наряд истребителей прикрытия, которые набираются в том же порядке, что и остальные самолеты Ударной группы. [Технология оценки боеготовности авиабаз, дальности до перехватчиков в воздухе и на земле, которые могут считаться потенциальной угрозой, а также коэффициент, который используется при оценки потребного набора сил для прикрытия – тоже должны настраиваться соответсвующим шаблоном]
Далее, к Ударной группе приписывается самолет ДРЛОУ и, если нужно – постановщик помех и заправщик.
И ТОЛЬКО теперь, в случае наличия всех потребных сил, компьютер формирует окончательную миссию на уничтожение колонны. Вместе с этим он раздает задания всем остальным самолетам Ударной группы, строя их маршруты, сообразуясь с шаблонами для соответсвующих миссий – Эскорта, Подавления ПВО и т.д.
Таким образом решается самая главная пролема всех ДК – т.н. Suicide Missions. В этом случае миссий [особенно ударных, особенно в начале войны] будет существенно меньше, они будут существенно более массовыми, но, надо полагать, существенно более результативными.
Жду комментариев тех, кого это заинтересовало. Возможно, кто-то из разработчиков симуляторов почерпнет что-то отсюда…
ПС. За неточные термины и кучу упрощений прошу не пинать. Главное – надеюсь, идея понятна.
Для начала оговорюсь, что в качестве базы для усовершенствований я вижу ДК от Falcon 4.0.
Главная идея – то, что во всех ДК большинство миссий – типовые. Т.е. ДК сама строит их по некоему Шаблону. Мы лишь можем поменять условия каждой конкретной миссии, но никогда – сам Шаблон. Для того, чтобы существенно улучшить возможности ДК, мы должны иметь возможность настраивать Шаблоны в самых широких пределах.
Предположим, что у нас есть некий набор Шаблонов Маршрутов для разных целей. Шаблоны сгруппированы по критериям:
1. Тип миссии
2. Цель
3. Носитель АСП
4. Само АСП
5. Уровень противодействия со стороны ПВО
Эти Шаблоны показывают компьютеру, как проложить маршрут миссии, в зависимости от обстановки.
Теперь - пример генерации ударной миссии [ударная интересна тем, что параллельно генерируются обеспечивающие]:
Пришла информация, что по направлению к городу N, находящемуся на территории, которую мы обозначили как территорию с высокой активностью [ на карте PAK красный] выдвинулась колонна. Генератор миссий начинает формировать задание на ее уничтожение. Для начала он отбирает силы, способные выполнить эту миссию – руководствуясь изначальными настройками или измененными нами. Предположим, он отобрал ИБА ВВС и ВМФ, ИА ВВС и ВМФ, БА ВВС. После этого, он смотрит на приоритеты видов войск и отсеивает ИА ВВС и ВМФ и БА ВВС, т.к. первых мы бросили, например, на завоевание превосходства в воздухе, а вторых – на уничтожение командных бункеров и прочих стационарных целей. Далее он выбирает ИБА ВВС, т.к. все самолеты ИБА ВМФ заняты уничтожением других целей. После этого, он выбирает эскадрилью из состава ИБА ВВС, которая может выполнить это задание, учитывая максимальный радиус действия самолетов. Предположим, он выбрал эскадрилью F-16CG. [Вот примерно до этого момента ДК Falcon 4.0 справляется со своими задачами ]
После определения эскадрильи, компьютер выбирает АСП, руководствуясь тем, что ему доступно на складе этой авиабазы, а также задачей минимизации наряда сил, необходимого для выполнения задачи. [А вот здесь – уже нет. Кстати, набор АСП для типовых целей – сам по себе может быть Шаблоном, и мы должны иметь возможность изменять и его ]
Предположим, компьютер остановился на AGM-65D. Соответсвенно, рассчитывая, например, что 90% Мэйвериков попадут в цель [в его базе по АСП обязательно должен быть примерный расчетный % поражения целей, для расчета необходимого наряда сил. При этом было бы неплохо, если бы мы могли корректировать эту таблицу, соотносясь со своими собственными представлениями и статистикой Кампании – сколько боеприпаса израсходовано, сколько было попаданий, сколько целей поражено – это все вообще по всем войскам, а также по отдельными видам, например, только по бомбардировщикам. Соответсвенно, такая статистика должна быть ], он набирает необходимое количество носителей. Если в данной эскадрилье не хватает самолетов для поражения достаточного % целей, компьютер смотрит, может ли он привлечь для выполнения этой задачи силы других эскадрилий [руководствуясь ограничениями по Боевому радиусу, доступным для применения АСП]. Если этих сил достаточно, он продолжает формировать задание. Если нет – либо соглашается на уничтожение части целей, либо отменяет миссию. [кстати, то, согласится он, или нет – тоже неплохо было бы регулировать.. А то он вообще летать не будет, опасаясь что наряд сил недостаточен]
Выбрав АСП и набрав необходимый наряд сил, компьютер начинает рассчитывать уровень угрозы со стороны ПВО. Для этого Генератор рассчитывает количество и качество ЗРК и МЗА, которые находятся в радиусе K километров от цели. Далее, он выбирает из памяти все Шаблоны ударных наземных миссий, из них – Шаблоны миссий атаки бронетехники, из них – Шаблоны для самолетов ИБА, из них – Шаблоны ударов с помощью Мэйвериков [естественно, что все эти Шаблоны маршрутов записаны в память, но могут быть изменены нами в любое время. В этом случае, компьютер будет руководствоваться уже новыми, нашими Шаблонами] и строит примерный маршрут. При построении маршрута он руководствуется Шаблоном миссии с соответвующим уровенем угрозы ПВО [по этому шаблону он выбирает профиль полета ]. Далее он старается расставить точки маршрута так, чтобы как можно бОльшая часть полета проходила вне зон поражения ЗРК и МЗА [естественно, рассчитывая эти зоны соотносясь с высотой полета на соответствующем отрезке маршрута], а там, где придется входить в зоны поражения, компьютер старается прокладывать маршрут через зоны ПВО с как можно меньшей степенью опасности [исходя из своей базы по ЗРК и МЗА, например, он предпочтет войти в зону поражения С-75, чтобы избежать вхождения в зону поражения С-300. Но это – по сути, тоже Шаблон уклонения от ПВО. И он тоже мог бы нами регулироваться]. Далее, компьютер считывает, сколько всего батарей ПВО и МЗА могут обстрелять ударную группу на маршруте до цели и обратно, а исходя из этого – рассчтывает необходимый наряд сил на подавление ПВО [то, как он его рассчитывает – тоже шаблон. И тоже должен настраиваться]. Если этот наряд сил может быть набран [с этой авиабазы или откуда-то еще, учтя боевой радиус и подлетное время], компьютер продолжает формирование миссии. Если нет – он либо ждет, когда силы будут свободны [«замораживая» ударную группировку], либо полностью отменяет миссию [Этот шаблон тоже можно было бы настраивать. Хочешь уничтожить колонну во что бы то ни стало – отправляешь Ударную Группу с меньшим, чем необходимо прикрытием. Моежешь себе позволить не торопиться – ждешь. Если колонна не так уж и важна – наешь возможность компьютеру отправить самолеты на другие задания].
Далее компьютер оценивает уровень угрозы со стороны авиации, рассчитывая, какого качества и сколько самолетов находятся на базах, с которых они могут вылететь на перехват Ударной Группы, начиная с момента ее обнаружения [здесь используется ранее отобранная информация о радарах ЗРК и раннего обнаружения, работающих в районе цели] и заканчивая моментом выхода из атаки и возвращения на базу. На этом этапе компьютеру необходимо знать, с какой периодичностью могут взлетать перехватчики. Эта информация может быть рассчитана исходя из боеготовности авиабаз. Далее к этому количеству добавляются самолеты, находящиеся на боевом дежурстве в районе цели и могущие пойти на перехват. Исходя из этой информации, а также сообразуясь с заданными изначально или нами коэффициентами, компьютер выбирает потребный наряд истребителей прикрытия, которые набираются в том же порядке, что и остальные самолеты Ударной группы. [Технология оценки боеготовности авиабаз, дальности до перехватчиков в воздухе и на земле, которые могут считаться потенциальной угрозой, а также коэффициент, который используется при оценки потребного набора сил для прикрытия – тоже должны настраиваться соответсвующим шаблоном]
Далее, к Ударной группе приписывается самолет ДРЛОУ и, если нужно – постановщик помех и заправщик.
И ТОЛЬКО теперь, в случае наличия всех потребных сил, компьютер формирует окончательную миссию на уничтожение колонны. Вместе с этим он раздает задания всем остальным самолетам Ударной группы, строя их маршруты, сообразуясь с шаблонами для соответсвующих миссий – Эскорта, Подавления ПВО и т.д.
Таким образом решается самая главная пролема всех ДК – т.н. Suicide Missions. В этом случае миссий [особенно ударных, особенно в начале войны] будет существенно меньше, они будут существенно более массовыми, но, надо полагать, существенно более результативными.
Жду комментариев тех, кого это заинтересовало. Возможно, кто-то из разработчиков симуляторов почерпнет что-то отсюда…
ПС. За неточные термины и кучу упрощений прошу не пинать. Главное – надеюсь, идея понятна.