Современные технологии ведения боя. Роботизированные средства в военной сфере. Устройство беспилотных летательных аппаратов, наземных и морских роботов. Разработка программы на языке Prolog для выполнения задачи разминирования военным роботом-сапером.
А владение такими технологиями повышает как показатель военный мощи страны, так и позволяет выполнять полноценные военные задачи с минимальным участием человека, а, следовательно, с минимальными потерями. Используя навыки, полученные на курсе «Представление знаний в ИС», написать программу на языке Prolog для выполнения определенной задачи военным роботом. В современном мире, можно внезапно и быстро уничтожить целую страну или втянуть другие страны в войну используя только дезинформацию. Беспилотные летательные аппараты (БЛА) - одна из технологий использующаяся в введение современных войн, позволяющая сохранить множество жизней. Беспилотные летательные аппараты не только сохраняют жизни пилотов, но также дают огромное преимущество, стране использующих их для разведки поля боя.Исследовав данную тему, можно сделать вывод, что робототехника, стала возможна исключительно благодаря множеству технических решений, связанных с открытие таких средств как инерциальные системы навигации, автопилот, а также не стоит забывать о технологиях микропроцессорной техники которая позволяет действовать роботам даже при отсутствии человека. Серьезное внимание уделяется и перспективным средствам связи и передачи данных, которые, по сути, являются критическими элементами успешного применения беспилотных и роботизированных средств.REDICATES nondeterm freely (a,m) nondeterm disincentive(i,j) nondeterm no_obstacles (i,j) nondeterm element(a,m) nondeterm endpoint(i,j) nondeterm pathfinding(a,m,m,m,i) nondeterm draw_box(i,j) nondeterm draw_minefield(i,j) nondeterm menu nondeterm repeat nondeterm action(char) nondeterm find(m,a) nondeterm number(i,j,z) CLAUSES disincentive(1,1).disincentive(1,2).disincentive(1,3).disincentive(1,4). disincentive(1,5).disincentive(1,6).disincentive(2,1).disincentive(3,1). disincentive(4,1).disincentive(5,1).disincentive(6,1).disincentive(6,2). disincentive(6,3).disincentive(6,4).disincentive(6,6).disincentive(2,6). disincentive(3,6).disincentive(4,6).disincentive(5,6).disincentive(6,5). disincentive(5,3).disincentive(4,3). no_obstacles(2,3).no_obstacles(2,4).no_obstacles(3,3).no_obstacles(3,4). no_obstacles(3,5).no_obstacles(4,4).no_obstacles(4,5).no_obstacles(2,5). no_obstacles(5,2).no_obstacles(2,2).no_obstacles(3,2).no_obstacles (4,2). no_obstacles(5,4).no_obstacles (5,5). endpoint(2,5).endpoint(3,4). menu:-repeat, write("1 Обнаружить мины"), nl, write("0 Выход"), nl, nl, readchar(N), action(N), N="0". action("1"):- X=6, Y1=7, assert(waydb(X,Y1)), number(1,1,0), draw_box(1,1), waydb2(NOWALL), write("Координаты сапера"), nl, write("X="), readint(X2), write("Y="), readint(Y2), nl,pathfinding(a(X2,Y2),P,[a(X2,Y2)],Bomb,NOWALL),!,write("Путь",Р),nl, write("Координаты обезвреженных мин ", Bomb), nl,write("Начальное положение - a(",X2,",",Y2,")"),nl, find(P, End_Position), write("Конечное положение - ", End_Position), nl, nl, draw_minefield(1,1), retract(waydb(X,Y1)), nl, nl, fail. action("0"). L = J 1,C1,C1 = C-1, freely (a(I,L),Was),pathfinding(a(I,L),P,[a(I,L)|Was],B,C1). freely(a(I,J),Was):-no_obstacles (I,J),not(element(a(I,J), Was)). element(I,[I|_]). element(I,[_|P]):-element(I,P). draw_box(N,M):-waydb(C,D), N=C,M=D,write("\10\13"),!. draw_box(N,M):-waydb(_,D),M=D,B=N 1,write("\10\13"), draw_box(B,1). draw_box(N,M):-disincentive(N,M), write(" 1 "),K=M 1, draw_box(N,K). draw_box(N,M):-no_obstacles (N,M), write(" 0 "),K=M 1, draw_box(N,K). draw_minefield(N,M):-waydb(C,D), N=C,M=D,write("\10\13"),!. draw_minefield(N,M):-waydb(_,D),M=D,B=N 1,write("\10\13"), draw_minefield(B,1). draw_minefield(N,M):-disincentive(N,M), write(" 1 "),K=M 1, draw_minefield(N,K). draw_minefield(N,M):-no_obstacles (N,M),not(endpoint(N,M)), write(" 0 "),K=M 1, draw_minefield(N,K). draw_minefield(N,M):-no_obstacles (N,M),endpoint(N,M), write(" X "),K=M 1, draw_minefield(N,K). number(N,M,X):-waydb(C,D), N=C,M=D,X1=X, assert(waydb2(X1)),!. number(N,M,X):-waydb(_,D),M=D,B=N 1,number(B,1,X). number(N,M,X):-no_obstacles (N,M), X1=X 1, K=M 1, number(N,K,X1). number(N,M,X):-disincentive(N,M),K=M 1, number(N,K,X).
Введение
военный робот программа prolog
В настоящие время, в результате развития информационных и телекоммуникационных технологий изменились как средства вооруженной борьбы, так и стратегия, и тактика ведения современных войн, появились концепции, учитывающие факторы информационной уязвимости сторон.
Интеллектуальные системы постоянно развиваются, изобретаются более совершенные роботизированные средства для ведения боевых действий. Существует множество различных роботов способных выполнять различные задачи.
Многие страны мира вкладывают огромные деньги в исследования области интеллектуальных систем. Так как развитие позволяет этих систем дает возможность ускорить исследования в области робототехники. А владение такими технологиями повышает как показатель военный мощи страны, так и позволяет выполнять полноценные военные задачи с минимальным участием человека, а, следовательно, с минимальными потерями.
Цель моей работы узнать о современных способах введения военных действий при помощи новейших технологий.
Для достижения цели были поставлены задачи: 1. Узнать, как современные технологии повлияли на введения боя.
2. Узнать подробнее о роботизированных средствах в военной сфере.
3. Рассмотреть подробнее беспилотные летательные аппараты (БЛА), а также наземных и морских роботов.
4. Используя навыки, полученные на курсе «Представление знаний в ИС», написать программу на языке Prolog для выполнения определенной задачи военным роботом.
1. Информационные технологии в военной сфере
1.1 Сетевые технологии в военной сфере
Холодная война - это время, когда военная техника развивались с неслыханной силой. Именно тогда для сохранности мира странам приходилось вооружаться и придумывать более грозные виды оружия. Большую роль играла разведка, она была на пике своей силы. Стоит отметить одно из самых интересных и страшных событий того времени - создание атомной бомбы.
Теперь в мире правит техника и информация. А 21 век считает веком информационных технологий. И прогресс не стоит на месте, даже за очень короткие сроки все кардинально меняется, то что казалось совсем недавно недостижимым, уже не имеет ценности.
В прогрессе развития технологий можно выделить один из главных минусов - использований изобретений во зло. Самые передовые технологии приспосабливают для военных нужд, по этой причине война стала беспощаднее и безопаснее одновременно.
Можно заметить, что прогресс и война всегда были связанны между собой. В ходе прогресса появлялись изобретения, помогающие людям в ведение войны, как на поле боя, так и в информационной войне.
Эпоха высокотехнологичных войн, вторглась в жизни людей где-то в середине 20 века. До этого война происходила в «классическом сценарии», где требовалась просчитывать каждое действие и проводить тщательную подготовку. В современном мире, можно внезапно и быстро уничтожить целую страну или втянуть другие страны в войну используя только дезинформацию.
В 20 веке американские ученые пытались создать обширную локальную сеть. Тогда этот проект был известен под именем ARPANET. В данное время он известен как интернет - крупнейшее общедоступное средство распространение информации. Кажется, что удивительного в изобретении современных сетевых технологий, особенно если сравнивать их с изобретением интернета.
Примером преимущества сетевых технологий, в введение боевых действий может выступать американская MTS (Movement Tracking System), которая использовалась в ходе «Бури в пустыне». Благодаря этой системе американские военные могли связываться друг с другом, а командование всей операцией происходило в одном командном пункте. Раньше же, организовать операцию было намного тяжелее. После планирования операции происходило распределение приказов для мелких подразделений, где каждый командир знал только часть информации об операции, необходимой для выполнения поставленной задачи. После чего необходимо было согласовать все действия между различными подразделениями, для выполнения операции. Выполнение операции можно сравнивать с огромным механизмом, где подразделения - мелкие детали сложного механизма. Даже малейший сбой в действиях подразделений приводил к провалу операции.
Не стоит забывать о людских потерях. Войны всегда отнимали множество жизней как солдат, так и мирного населения. Для этого изобретаются различны технологии, которые позволят сохранить жизни людей [10].
1.2 Беспилотные летательные аппараты и их применение в войне
Беспилотные летательные аппараты (БЛА) - одна из технологий использующаяся в введение современных войн, позволяющая сохранить множество жизней. Беспилотные летательные аппараты не только сохраняют жизни пилотов, но также дают огромное преимущество, стране использующих их для разведки поля боя.
Изза очень высоких показателей военное руководство большинства стран с каждым разом отдает предпочтение БЛА. Они используют все чаще и чаще, для выполнения боевых задач [9].
Боевые задачи для БЛА подразделяются на три основные группы. В частности, «элементарные» задачи - для выполнения, которых можно обойтись без участия человеческого фактора, т.е. не требующие интеллекта человека. Вторая группа «грязные» задачи - задачи в которых выжить у человека нет шансов. К таким относиться исследования зон химических, ядреных, биологических заражений. Третья группа «опасные» включает в себя задания, в которых участие человека крайне нежелательно, изза очень большой опасности жизни человека.
Беспилотные летательные аппараты использовались для полетов над эпицентрами взрывов ядерного оружия и исследования местности в 20 веке. Этим занимались дистанционно управляемые самолеты В-17 и F-6F.
В нынешнее время в более чем 45 стран мира используются различные типы БЛА. Насчитывается свыше 80-ти различных типов беспилотных летательных аппаратов, причем большинство стран имеет собственное производство. Если страна производит БЛА как для своей страны, так и для продажи другим государствам, то это в значительной степени помогает снизить себестоимость производства. А обмен технологиями с другими странами позволяет получить более совершенное оружие [9].
Сами БЛА подразделяются по различным характеристикам. Как по степени участия человека в управлении беспилотным летательным аппаратом: беспилотные неуправляемые; беспилотные автоматические; беспилотные дистанционно-пилотируемые летательные аппараты. Так и по другим взаимосвязанным параметрам. «Микро» - аппарат с небольшой массой до 10 кг, высота на которое может подняться беспилотные ограничена 1 км, и время полета не может составлять более 1 часа. Далее идет «мини » - уже более тяжелый, масса которого составляет до 50 кг, а время и высота полета 3 часа и 3-5 километра соответственно. За «мини» следует средние («миди») - масса может составлять до 1000 кг, временем 10-12 часов и высотой до 9-10 километров. Ну и самыми крупными являются тяжелые аппараты способные поднять на высоту 20 километров и проводить более 1 дня в полете.
БЛА способные атаковать подводные лодки появились еще в 50х. QH-50 DASH - был принят на вооружение армии США в 70х годах 20 века, имел массу около 1000 кг и оснащался 330 л. с. двигателем. Он являлся беспилотным вертолетом способным уничтожать подводные лодки, по корабельным системам наведения.
MQ-1 Predator и MQ-9 Reaper - это современные беспилотные истребители, которые стоять на вооружение в разных странах мира.
Самое интересное, что программное обеспечение для беспилотных летательных аппаратов пишется обычно на языках высокого уровня, в частности таких как Си, Си , Модула-2. Для того чтобы определить свое местоположение и скорость БЛА использует навигационные системы GPS, а для ориентации и нагрузках используются различные гироскопы и акселерометры.
В свое время, компания «Northrop Grumman» изобрела такой БЛА, как «X-47B». Он уникален в своем роде, помимо того, что он может находить более 100 часов в воздухе, он имеет огромные размеры - около 10-ти метров составляет размах крыльев. В настоящие время производиться его модификация, его планируют оснастить бортовым компьютером, чтобы исключить полностью человеческого фактора [2].
1.3 Сухопутное военные роботизированные средства
Как известно самые большие потери происходят в наземных формированиях, где потери могут достигать несколько тысяч человек. И вновь благодаря роботизированным средствам можно избежать людских потерь.
Во множествах стран мира на вооружениях стоят и наземные роботы. К примеру Соединенные Штаты Америки имеют более 5000 наземных роботизированных средств в зонах конфликта.
Основные работы, которые выполняют наземные роботизированные средства является обнаружение и разминирование различных взрывчатых устройств, а также сопровождение конвоя, и обнаружение войск противника.
Если японцы демонстрируют роботов для использования в мирной жизни, то Америка делает акцент на военные машины [9].
Еще 6 лет назад существовала программа «Боевые системы будущего» (Future Combat System - FCS). Она была рассчитана на то, чтобы перевооружить американскую армию новейшими разработками как военной техники, так и роботизированной техникой. Причем все средства, которые поступили бы на вооружения были б связанны в единую сеть, через которую в реальном времени человек мог бы ими управлять [4].
Но данная программа, которая начала свое существование в 2003 году, была закрыта в 2009, и считается провальной, т.к. ее эффективность была крайне низкой. Но несмотря на провал FCS смогла принести некоторые интересные технические средства нового образца, такие как SUGV. SUGV - легкий робот, которого может переносить человек на себя, для разведки в различных условиях. Сейчас, в основном все боевые роботизированные средства нуждаются в управлении человека, они не способны выполнять операции в автономном режиме. Только немногие роботы имеют способность выполнять поставленные перед ним задачи без привлечения человека - оператора. Во многих страх мира проводятся исследования по созданию боевых роботов. Основные проблемы, с которыми сталкиваются страны разработчики, заставить робота мыслить, то есть внедрить элементы искусственного интеллекта.
Одним из удивительных изобретенных роботов является наземный боевой робот REDOWL. Он имеет основную функцию - определять позиции снайперов всего лишь по первому выстрелу. В данный момент точность его данных составляет 94% [8].
1.4 Военно-морские роботизированные средства
Если про БЛА, и боевые роботы известно каждому человеку, то про морских роботов многие даже и не задумывались. Но использовать военно-морских роботов начали еще в 40х годах 20 века. После проведения испытаний ядерного оружия, на атоле Бикини, который находиться в тихом океане, использовались морские роботы. Их задача состояла в сборе проб воды.
В современных армиях на вооружениях помимо БЛА и наземных роботов есть морские роботизированные средства. Именно они выполняли некоторые задачи в ходе проведения операции «Иракская свобода» в 2003 году [3].
Происходит разработка все более совершенных водных боевых роботов. Военно-морской робот должен выполнять ряд основных задач. Среди которых есть патрулирование и разведка, а также поиск подводных мин.
Одним из таких роботов является универсальный робот Transphibian. Он способен находить и обезвреживать мины, патрулировать и охранять отведенное ему водное пространство. Все его функции нацелены на работу в районе прибрежных зон.
Помимо патрулирования, так же необходимы роботы для проведения спасательных робот. Одни из таких является «Гном». Он способен погружаться на большую глубину и проверять опасные для жизни человека места.
Для нанесения ударов используется подводная робот лодка REMUS. Управление лодкой не автономно, для этого привлекают двух операторов. Робот подводная лодка способна погружаться лишь не на большую глубину около 100м.
Классифицировать морских роботов можно, как и остальных по типу управления: дистанционно-управляемые; полуавтономные; автономные морские надводные аппараты.
Кроме того, необходимо разделять их по характеристикам. Для этого есть 4 класса. Первый который X-Class - это робот, предназначенный для ведения разведки, и имеет небольшие размеры, порядка 3 метров. Второй класс Harbor Class представляет собой более длинный аппарат около 7 метров. Цели этого класса заключаются в ведения разведки и обеспечении безопасности заданной территории, поэтому робот может оснащаться различным оружием. Следующий класс это Snorkeler Class. Так же небольшой аппарат около 7 метров, но предназначенный для погружения. Перед ним ставиться боевые задачи, в частности обезвреживание мин и уничтожения лодок противника. И последним классом является Fleet Class. Размеры составляют 11 метров. Его основные качества в том, что он способен выполнять множество различных задач. Начиная с обычных минных операций и заканчивая, участием в крупны морских операциях. Имеет большой бак, позволяющий ему находиться в режиме автономной роботы до 2 дней [1].
2. Проектирование и разработка программного обеспечения для робота - сапера
2.1 Постановка задачи
Требуется разработать программу производящую поиск решения в пространстве состояния, предназначенную для обнаружения и обезвреживания мин на определенном участке. Язык программирования выбран Prolog (диалект языка и одноименной интегрированной среды разработки Visual Prolog). Prolog - простой язык для изучения и является абсолютно бесплатным.
Программа должна позволять роботу-саперу обходить препятствия на своем пути, и отмечать на карте обезвреженные мины. Так же робот должен пройти по всем клеткам определенного участка. Результат должен быть в виде схематичного изображения участка, на котором производиться действие с отмеченными обезвреженными минами, а также вывести начальное и конечное положение робота и список всех мест в последовательности их посещения.
2.2 Решение задачи в Visual Prolog 5.2
В разработанной на языке Prolog программе используются секции: domains, database, predicates, clauses, goal.
Предположим, что имеется поле размерами 6х6. Объявим i,j,z как числовые параметры integer, a=a(i,j) - как координаты, m=a* - список координат.
Используя предикат disincentive(i,j) задаем координаты препятствий, где i,j- числовые координаты. Аналогичным образом задаются и области по которым робот сможет перемещаться, через предикат no_obstacles (i,j). Мины наносятся только в области по которым возможно движение через предикат endpoint(i,j). После чего строим небольшое меню для запуска программы, для этого объявляем предикат без параметров menu. Меню будет состоять из 2 пунктов, для запуска определенного пункта объявим action(char), внутрь этого предиката будет передаваться символ с номером пункта. Для того чтобы после выбора пункта меню и его выполнения снова запускалось меню, воспользуемся предикатом repeat. Выбрав пункт обнаружения мин в базу waydb (i,j) записываются размеры поля, после чего предикат number(i,j,z), подсчитывает сколько свободных ячеей имеет поле, и это число записывается в базу данных waydb2(i). Затем запускаем рисуем поле с помощью предиката draw_box(i,j). После чего ищем путь для робота используя предикат pathfinding(a,m,m,m,i). В результате поиска пути, возникает ситуация, когда нужно определить возможен ли переход по заданным координатам. Для этого используется предикат freely(a,m), ему передают список координат которые робот посещал, и координаты некие координаты для перехода. Предикат freely вызывает element(a,m) для перебора всех координат - элементов списка которые робот посещал. После выполнения алгоритма поиска используя предикат draw_minefield(i,j) рисуется поле с обезвреженными минами. А для определения координат, в которых оказался робот используется предикат find(m,a), которому передается список всех координат которые посетил робот.
2.3 Пример работы программы
При запуске программы мы видим небольшое меню Рисунок 1, в котором мы можем выбрать либо начать разминирование, либо выход из программы.
Рисунок 1 - Меню после запуска программы
Если нажать цифру «1». То мы увидем построенное поле размерами 6х6 как на Рисунке 2, заданное в коде программы Рисунок 2. И программа попросит ввести координаты, куда поставить робота.
Рисунок 2 - участок 6х6, где «0» свободный участок, а «1» - препятствие
Поставим робота по координатам X=5, Y=1. После этого программа сама расчитает путь робота из начального состояния, обойдя все свободные поля и обевредив мины. Решение задачи выдаст в ввиде схемы изображенной на Рисунке 3 с обезвреженными минами, а так же координаты всего пути, с начальным и конечным положениями и координаты обезвреженных мин.
Рисунок 3 - Пример решения задачи при начальных координатах X=5, Y=1
После всего этого будет выведено меню, как и при запуске программы.
Вывод
Исследовав данную тему, можно сделать вывод, что робототехника, стала возможна исключительно благодаря множеству технических решений, связанных с открытие таких средств как инерциальные системы навигации, автопилот, а также не стоит забывать о технологиях микропроцессорной техники которая позволяет действовать роботам даже при отсутствии человека.
Серьезное внимание уделяется и перспективным средствам связи и передачи данных, которые, по сути, являются критическими элементами успешного применения беспилотных и роботизированных средств. А это, в свою очередь, неотъемлемое условие эффективного реформирования ВС любой страны и осуществления технологической революции в военном деле.
В ходе работы была поставлена практическая задача по созданию программы для робота-сапера. Использовав Visual Prolog, задача была решена.
Подводя итог, можно с уверенностью сказать, что цель работы была полностью достигнута, и все поставленные задачи выполнены.
Список литературы
1. Беспилотные летательные аппараты и боевые роботы - важнейшее направление развития URL: http://vpk-news.ru/articles/3146
2. Беспилотный летательный аппарат URL: https://en.wikipedia.org/wiki/Unmanned_aerial_vehicle
3. Боевой робот URL: https://en.wikipedia.org/wiki/Military_robot
4. Боевые системы будущего URL: http://rusiwiki.ir/wiki/Future_Combat_Systems
5. Братко И. Алгоритмы искусственного интеллекта на языке PROLOG: Пер. с англ. - М.: Издательский дом "Вильямс", 2004.
6. Братко И. Программирование на языке Пролог для искусственного интеллекта: Пер. с англ. -М.: Мир, 1990.- 560 с.
7. Клоксин У., Меллиш К. Программирование на языке Пролог. -М.: Мир, 1987
8. Кондратьев А. Роботы в сухопутных силах США URL: http://old.redstar.ru/2008/12/17_12/4_04.html
9. Кондратьев А. Роботы и «беспилотники» в армиях мира URL: flot2017.com/index.php/posts/new/roboty_i_bespilotniki_v_armijah_mira
10. Левкевич М. Современная война: технологии сеют зло URL: http://zoom.cnews.ru/rnd/article/item/sovremennaya_vojna_tehnologii_seyut_zlo
11. Соболева, И. А. Представление знаний в информационных системах. Практикум; Новосиб. гос. ун-т экономики и управления. - Новосибирск : НГУЭУ, 2015. - 108 с
12. Цуканова Н.И., Дмитриева Т.А. Логическое программирование на языке Visual Prolog. Учебное пособие для вузов.- М.: Горячая линия - Телеком, 2008
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы