Программирование Викиданных/Космические корабли и станции

Программирование Викиданных/Космические корабли и станции

Статья посвящена исследованию космических кораблей и станций на основе Викиданных. С помощью SPARQL-скриптов построен список отечественных кораблей и станций, нарисованы временные графики запуска кораблей в нашей стране и в мире за период с 1960 по 2021 год. Выполнена оценка полноты Викиданных, показавшая, что многие объекты имеют неправильное значение свойства "частный случай понятия (P31)". В ходе работы было обнаружено, что текущие показатели росийской космонавтики по количеству запусков космических кораблей за последние годы соответствуют показателям в СССР пятьдесят лет назад.

Содержание

Список космических кораблей и станций [ править ]

Построим запрос для вывода списка всех космических кораблей и станций. Нам потребуются объекты космические станции (Q25956), космические корабли (Q40218) и отношение экземпляр (P31).

SPARQL-запрос, Найдено 145 объектов в 2021 году.

Глубина проработки объектов [ править ]

По состоянию на 2021 год на Викиданных наиболее полным и проработанным является космический корабль Аполлон-8, имеющий 30 свойств. При этом всего всего по одному свойству имеют такие корабли, как: Europa Astrobiology Lander, Project Orbiter, LRK, EarthForce One, Союз ГВК, CubeSat for Solar Particles. Для поиска этой информации был использован запрос, построенный с помощью сервиса ProWD. Этот же сервис показал, что заполнение космических объектов неравномерное, большая часть заполнены менее, чем на 30%.

Отметим непростую судьбу объекта EarthForce One. Этот объект был создан в Викиданных ботом автоматически в 2013 году, поскольку существовала статья в Английской Википедии. Как написано на странице EarthForce One в Английской Википедии, статья была удалена из-за отсутствия надёжных источников, доказывающих значимость объекта. А в Викиданных объект остался как неприкаянный. Подумайте над запросом, который вывел бы список аналогичных объектов Викиданных, не соответствующих ни одной статье Википедии.

Список отечественных кораблей и станций [ править ]

Найдём корабли и станции, сконструированные в СССР или России, с помощью запроса:

SPARQL-запрос, 3 отечественных корабля найдено в 2017 и 21 в 2021

Анализ полноты Викиданных [ править ]

Проанализируем степень заполнения Викиданных в области отечественных космических кораблей и станций. Если по запросу из раздела "Список космических кораблей и станций" было получено 145 результатов, то по запросу из раздела "Список отечественных кораблей и станций" - всего 25.

На сайте Буран.Ру в разделе кораблей СССР и России по состоянию на 2021 год содержится информация о 36 кораблях. То есть в Викиданных представлено не более 70% от всех отечественных кораблей, однако ситуация в 2021 стала значительно лучше по сравнению с 2017 годом, когда по запросу из раздела "Список отечественных кораблей и станций" выдавалось менее 10% от всех кораблей. В советской энциклопедии <<Космонавтика>> от 1985 года упоминаются 94 космических корабля и орбитальных станции СССР и США, запущенных с 1961 по 1983 годы, из них 51 кораблей принадлежат СССР. Это означает, что в Викиданных представлено менее половины советских космических кораблей. В Американской книге "The Facts On File Space and Astronomy Handbook" приведены всего 10 советских и российских запусков космических станций, 126 запусков шатла у НАСА в период с 1981 по 2008 год , и 31 международный запуск.

Временные графики освоения космоса в нашей стране и мире [ править ]

Временной (с 1960-х годов) график запуска космических аппаратов в нашей стране (рис. 15.4) построен с помощью запроса:

Ранее в запросах для получения каких-либо списков мы использовали свойство "экземпляр (P31)". В запросе выше мы обошлись без этого свойства за счёт использования отношения "дата запуска космического корабля (619)" в строке 10 для обхода и подсчёта таких объектов, которые были запущены в космос. Логический оператор UNION в строках 5-8 позволяет объединить советские и российские запуски космолётов. Если бы в запросе вместо переменной ?lapse оставалась - ?year (строки 3 и 12), то на графике мы бы получили число запусков за каждый год. Благодаря функции округления FLOOR() и группировке, объекты ?item, имеющие запуски, группируются за пятилетний период, и в переменную ?quantity записывается число этих объектов, подсчитанное с помощью функции COUNT(). Группировка выполняется в строке 15 запроса командой GROUP BY ?lapse. То, что группировка идёт именно по пятилеткам, а не, например, шестилеткам, определяется в строке 12, где переменная ?year делится на 5, округляется и умножается на 5. Для представления результатов в виде столбчатой диаграммы используется стиль отображения BarChart.

Горизонтальной оси на графике отвечает переменная ?lapse_str. Если не преобразовывать число ?lapse в текстовую переменную ?lapse_str (Преобразование числа в текст в третьей строке запроса STR(?lapse) AS ?lapse_str)), то ось X имеет диапазон от 0 до 2200, вместо требуемого диапазона от 1960 до 2025 года, а результаты обозначаются точками с координатами (пятилетка, число запусков), и график становится нечитаемым.

График количества запущенных космических аппаратов по пятилеткам, начиная с 1960-х гг. представлен на столбчатой диаграмме ниже:

Из графика можно увидеть, что самый активный период развития космонавтике в нашей стране был в 1970-1995 годах.

Скрипт построения графика запусков космический кораблей в мире по годам и странам представлен ниже:

График количества запусков космический кораблей в мире по годам и странам представлен на столбчатой диаграмме ниже:

Из графика видно, что больше всего космических аппаратов запускали Индия и США (только у них зафиксировано более 10 ежегодных запусков) в 2017-2018 годах. Пик запусков в мире был в 2018 году (59 запусков). По Викиданным российская космонавтика занимает средние позиции по количеству запусков, её численные показатели за 2016-2019 годы схожи с показателями СССР в 1970-е и 1980-е годы и составляют 3-5 запусков в год.

Космонавты в международных полётах [ править ]

Запрос строит граф c вершинами типа "ракеты" и "космонавты" с раскраской по странам.

SPARQL-запрос, найдено 68 результатов в 2022 году.

Для работы скрипта необходимо указать начальную точку - космонавта, который принимал участие в международных космических полётах. Начальная точка задаётся в строке 11 скрипта и записывается в переменную ?naut_seed. Далее, в строке 12, выполняется поиск астронавтов, летавших совместно с тем, кого мы указали ранее. В строках 15-17 подгружаются данные о космических аппаратах, полётах и астонавтах. Булевая переменная ?toggle имеет значение ?true, если найденный объект является космическим аппаратом или ?false, если найденный объект является космонавтом. В переменную ?item в строке 19 записывается выбранный объект (космический аппарат или космонавт). В строке 20 в переменную ?itemLabel записывается название объекта, в строке 21 в переменную ?rgb_source записываются данные для раскраски кораблей.

Если выбран корабль, то в строке 22 в переменную ?link ничего не записывается, если выбран космонавт, то в переменную ?link записываем его корабль. На графе этой переменной будет соответствовать дуга от космонавта к кораблю.

В строке 23 подгружаются данные о гражданстве космонавта, а в строках 26-34 вершинам космонавтов на графе присваивается цвет в зависимости от их гражданства.

📎📎📎📎📎📎📎📎📎📎