Цитата: Krechet
Нужным направление может быть только при наличии правил в игре. Если просто отбить мяч, то это большой вопрос что на самом деле есть нужное направление (перед собой далеко/близко/через сетку/в угол площадки/в какой-то объект/в какой-то именно из этих объектов/в определенное место именно этого объекта и т.д. типа в сторону/вверх со всеми вариациями...). Т.е. даже все возможные варианты этой простейшей задачи формализовать нельзя, если считаете возможным напишите скольугодно длинный список, всё равно его дополнят. Более того, формализовывать и алгоритмировать будет человек, который может что-то не знать/забыть/ошибиться/сделать нарочно неправильно и т.д.
Понимаете ли, вы мне начинаете напоминать ненавидимых мною людей - перфекционистов. Вы хотите сказать, что если нельзя сразу сделать идеально, то и делать не надо. хрЕна!
Давайте я напишу простейший алгоритм для игры в теннис.
Правила тенниса известны (не мне)) Утрированно, надо отбить мяч, чтобы он перелетел через сетку, и упал на землю внутри очерченной площадки. И сделать это так, чтобы противоположный игрок не достал до него своей ракеткой.
При подлете мяча надо выяснить, где находится соперник, найти такую область на площадке, куда он успевает с минимальной вероятностью.
В момент подлета мяча определить его скорость и вектор движения, высчитать необходимые углы отклонения ракетки, чтобы его траектория после отбития в наибольшей вероятностью приводила его в вычисленную на предыдущем этапе зону.
Что здесь гениального?
После того, как мы реализуем такой алгоритм, запустим, то мы сразу увидим, что в нем есть какие-то недостатки. Он не учитывает, например, манеру предыдущего отбития мяча противником - мяч может лететь со вращением или без.
Корректируем алгоритм, чтобы он начинал анализировать соотношение векторов движения ракетки и мяча в момент отбития мяча. При каких-то их соотношениях будет большее или меньшее вращение, что можно опять-таки вводить в компенсирующие отклонения своей ракетки.
Это сложно?
Чем больше тонкостей мы будем учитывать в этом алгоритме, тем с большей вероятностью будет побеждать этот автомат.
Нет, он не победит Агасси, но его победят три автомата.
Так же и с БПЛА. Сначала его будут сбивать быстро, но по мере корректировки и уточнения алгоритма, он сможет держаться все дольше. Вы хотите доказать, что ас воздушного боя завалит и пять БПЛА, а я считаю, что обычного пилота завалят трое. И если мы можем сделать 10 станков, которые непрерывно штампуют эти БПЛА, то летчики у противника быстро кончатся. А если у них будут такие асы, которые будут отбиваться и от 10 БПЛА, то и у нас асы на таких асов должны быть. А с простыми летчиками противника пусть станки занимаются.