Поддержка принятия решений участников размещения государственных заказов средствами информационной системы аналитического мониторинга и многокритериального поиска

УДК 004.422.81

И.Г. Горюнов, М.В. Корецкий, Д.А. Сытник

ПОДДЕРЖКА ПРИНЯТИЯ РЕШЕНИЙ УЧАСТНИКОВ РАЗМЕЩЕНИЯ ГОСУДАРСТВЕННЫХ ЗАКАЗОВ СРЕДСТВАМИ ИНФОРМАЦИОННОЙ СИСТЕМЫ АНАЛИТИЧЕСКОГО МОНИТОРИНГА И МНОГОКРИТЕРИАЛЬНОГО ПОИСКА

Описаны предлагаемые принцип и программные средства поддержки принятия решений по участию в размещении государственных заказов с возможностями аналитического мониторинга, обеспечивающие решение задач многокритериального поиска и персонификации результатов, обеспечения мобильности и удаленной доступности разрабатываемых сервисов информационного взаимодействия с первичным источником данных государственных контрактов (FTP-сервер ресурса zakupki.gov.ru), реализация поиска требуемых данных о размещении государственных заказов с использованием системы полнотекстового поиска «Sphinx» и функций их аналитической обработки.

Государственный заказ, мониторинг, облачные вычисления, мобильная платформа, полнотекстовый поиск

I.G. Goryunov, M.A. Koretskiy, D.A. Sytnik

SUPPORT OF DECISION-MAKING IN PARTICIPATION OF STATE ORDERS PLACEMENT USING INFORMATION SYSTEM TECHNOLOGIES FOR ANALYTICAL MONITORING AND MULTICRITERIA SEARCH

The article describes the principle and software tools for supporting decisions related to state orders placement and using analytical monitoring tools to make practical solutions related to the problems of multicriteria search and personification of results which ensure mobility and remote availability of the developed services for information exchange with the primary data source of state contracts (zakupki.gov.ru resource FTP server). Additionally the provided principles and software tools can be applied to realization of the required data search referring the state orders placement using the «Sphinx» system and functions of their analytical processing.

State orders, monitoring, cloud computing, mobile platform, full-text search

Работа выполняется в рамках НИР «Разработка методов и алгоритмов анализа результатов размещения государственного заказа и создание на их основе экспериментального образца информационной системы поддержки принятия решений о перспективности участия в размещении государственного заказа, анализе потребностей и рынков сбыта» (государственный контракт

№ 07.514.11.4143), проводимой в ходе реализации ФЦП «Исследования и разработки по приоритетным направлениям развития научно-технологического комплекса России на 2007-2013 годы»).

Основной целью НИР является определение принципов установления структурных и логических связей между накопленными и оперативно появляющимися данными государственных заказов (доступными с официального открытого источника - интернет-портала http://www.zakupki.gov.ru/), реализация данных принципов в алгоритмическом и программном обеспечении разрабатываемом экспериментальном образце информационной системы поддержки принятия решений о перспективности участия в размещении государственного заказа, анализе потребностей и рынков сбыта (далее по тексту - ИС).

В результате анализа существующих продуктов и сервисов, осуществляющих функции обработки данных государственных заказов (в частности сервисов www.zakupki.org.ru,www.alltenders.ru, www.findtenders.ru,www.i-tenders.ru,www.Goszakaz.ru,www.Gostorgi.ru,http://www.trade.su и др.), было выявлено следующее:

- отсутствуют инструменты, позволяющие пользователю проводить самостоятельные автоматизированные аналитические исследования данных о размещении и проведении государственных и коммерческих заказов (в части поиска связанных и схожих заказов, а также выявления потенциальных конкурентов);

- отсутствуют инструменты для работы с данными сервисами с мобильных устройств пользователей, в некоторых случаях отсутствует базовый вариант рассылки результатов поиска через электронную почту.

В результате анализа наиболее часто встречающихся практических задач участников размещения заказов [1] были детализированы требования, разработаны и реализованы в программном обеспечении (ПО) ИС следующие алгоритмы:

- алгоритм выявления связанных и схожих конкурсов на заключение контрактов;

- алгоритм выявления потенциальных конкурентов для выбранного лота;

- алгоритмы многокритериального, гибко настраиваемого пользователем поиска лотов, организаций, контрактов;

- алгоритмы регламентируемой электронной рассылки результатов мониторинга и анализа государственных заказов (на основе подписки) на электронную почту, а также посредством доступа через web-интерфейс или мобильный клиент пользователя;

- псевдокод алгоритма (в общем виде) выявления связанных конкурсов (заказов) для выбранного пользователем лота (заказа):

При просмотре сведений о заинтересовавшем пользователе заказе для данного лота (заказа) определяются все имеющиеся контракты (если статус заказа «размещение завершено»), т.е. получаем лот и соответствующие ему контракты.

Для заинтересовавшегося пользователя лота в БД осуществляется поиск всех лотов, у которых:

1) совпадают организации-заказчики (по идентификатору или индивидуальному налоговому номеру (далее - ИНН)), совпадают общероссийские классификаторы видов экономической деятельности, продукции и услуг (далее - ОКДП), совпадают полное или краткое наименование заказа, т.е. получаем «Список №1» связанных лотов;

2) совпадают организации (по идентификатору или ИНН), совпадают ОКДП, частично совпадают полное или краткое наименование заказа, т.е. получаем «Список №2» предположений о связанных лотах.

Для каждого лота Списка №1 осуществляется поиск всех имеющихся контрактов. Строится упорядоченная по датам размещения заказа цепочка: [Л1; К1]->[Л2; К22, К34, К35]-> [Л3 (заинтересовавший пользователя); К6]->[Л4]. Полученная цепочка - это цепочка связанных лотов и контрактов, где Л1 - >й лот , К - _)-й лот.

Для каждого лота Списка №2 осуществляется поиск всех имеющихся контрактов. Строится упорядоченная по датам размещения заказа цепочка предположений о связанности лотов и контрактов: [Л1; К1]->[Л3 (заинтересовавший пользователя); К6, К7, К8]->[Л3]. Полученная цепочка - это цепочка предположений о связанности лотов и контрактов.

Результаты алгоритма выявления схожих заказов (алгоритм выполняется при просмотре пользователем сведений об интересующем заказе) доступны следующим образом:

Общий список схожих заказов с отдельно выделенными подсписками (в список должны попадать только заказы, находящиеся на этапе «Подача заявок»):

3) схожих заказов того же заказчика (должны быть размещены в начале списка, это уже так называемые «связанные» заказы);

4) схожих заказов того же населенного пункта (информация из сведений о местоположении и почтовом адресе организации-заказчике);

5) схожих заказов той же области/республики (информация из сведений о местоположении и почтовом адресе организации-заказчике).

Ссылка «Найти схожие заказы из архива». Поиск и отображение списка найденных заказов из архива должны осуществляться аналогично поиску и отображению актуальных заказов. Список найденных заказов должен отображаться на той же странице (с признаком нахождения в архиве). При выборе из списка схожего архивного заказа должны отображаться сведения о заказе, включающие ссылку на сведения о соответствующем контракте. При поиске в БД заказ является схожим при выполнении следующих условий:

6) совпадение ОКДП;

7) точное или частичное совпадение полного или краткого наименования заказа.

Псевдокод алгоритма (в общем виде) выявления потенциальных конкурентов для выбранного

пользователем лота (заказа):

Средствами интерфейса ИС пользователь выбирает заинтересовавший лот (заказ) и может указать период времени размещения заказов, за который будет анализироваться БД на предмет выявления потенциальных конкурентов (по умолчанию - за весь период времени).

ИС осуществляет поиск всех имеющихся лотов данного Заказчика с совпадающим ОКПД:

С учётом полного совпадения наименования лота (полного или сокращённого).

С учётом частичного совпадения наименования лота (полного или сокращенного).

Без учета совпадения наименования лота.

ИС определяет контракты, соответствующие найденным лотам. Список найденных лотов -СЛ1. Найденные контракты - СК1.

ИС осуществляет поиск всех имеющихся в БД лотов (любого Заказчика) с совпадающим ОКПД для следующих случаев: лот того же населенного пункта (что и исходного лота); той же области/республики; без учёта географической принадлежности:

8) с учётом полного совпадения наименования лота (полного или сокращённого);

9) с учётом частичного совпадения наименования лота (полного или сокращенного).

10) без учета совпадения наименования лота.

ИС определяет контракты, соответствующие найденным лотам. Найденные лоты - группа СЛ2. Найденные контракты - группа СК2.

Из сведений о контрактах СК1 и СК2 извлекается информация о победителях конкурсов СПК1 и СПК2, соответственно.

Из протоколов вскрытия конвертов лотов СЛ1 и СЛ2 извлекается информация о всех участниках конкурсов (СУ1 и СУ2, соответственно).

Пользователю предоставляется содержимое СПК1, СПК2, СУ1, СУ 2 в следующей последовательности приоритетных групп потенциальных конкурентов:

11) СПК1 и СУ 1 с полным совпадением наименований лота;

12) СПК1 и СУ 1 с частичным совпадением наименования лота;

13) СПК2 и СУ2 того же населенного пункта, с полным совпадением наименования лота;

14) СПК2 и СУ2 того же населенного пункта, с частичным совпадением наименования лота;

15) СПК2 и СУ2 той же области, с полным совпадением наименования лота;

16) СПК2 и СУ2 той же области, с частичным совпадением наименования лота;

17) СПК1 и СУ1 с не совпадающим наименованием лота;

18) СПК2 и СУ2 по все стране, с полным совпадением наименования лота;

19) СПК2 и СУ2 по всей стране с частичным совпадением наименования лота.

Помимо аналитических функций, алгоритмы, реализации которых приведены выше, ИС обладает следующими функциональными возможностями:

Построение цепочек связанных и сходных конкурсов, а также результатов проведения этих конкурсов по различным критериям.

- создание набора фильтров на основе выбранных параметров поиска (типовых запросов пользователя);

- добавление интересных пользователю заказов в список «избранных» (статус данных заказов отслеживается ИС автоматически);

- реализация Сервиса на основе «облачной» («cloud computing») модели предоставления сетевого доступа к вычислительному сервису [2] напрямую с мобильных устройств (под управлением ОС Google Android или Apple iOS), а также через Web-браузеры с любого настольного ПК, имеющего доступ в сеть Internet, обеспечивает оперативность мониторинга и принятии решений потенциальных и действующих участников размещения заказов.

В общем виде архитектура разработанной ИС включает серверную и мобильную части. Серверная часть ИС выполняет следующие основные функции:

взаимодействие с первичным источником данных о государственных заказах (FTP-сервер ресурса zakupki.gov.ru):

один раз в сутки копирует XML-файлы с новыми данными о размещенных заказах; осуществляет «парсинг» XML-файлов и размещение результатов в БД.

Ведение БД под управлением СУБД MySQL и предоставление данных о государственных заказах (далее по тексу - ГЗ) по поисковым запросам пользователей с использованием системы Sphinx (назначение системы и роль в ИС описаны ниже).

ввод исходных пользовательских данных (в частности, пользовательских настроек фильтров поиска), передача данных о ГЗ и результатов выполнения пользовательских запросов мобильной клиентской части приложения (в соответствии с протоколом RESTlike API интерфейсов). Блок реализован на базе веб-фреймворка Yii, имеет в своём составе драйвера, реализованные как PHP модули (на языке C), предоставляющие доступ к API Sphinx и СУБД MySQL.

Назначение и основные причины использования системы Sphinx:

полнотекстовое индексирование текстовых данных ГЗ в реальном времени с использованием принципа инкрементируемого «on-the-fly» дельта индекса;

высокая производительность индексирования (до 10-15 MБайт текстовых данных в секунду); масштабируемость (наибольший из известных на сегодняшний день кластеров, проиндексированных Sphinx, включает около 5 биллионов документов объёмом более 6 Тбайт);

поддержка прямого доступа к MySQL, PostgreSQL, Oracle, Microsoft SQL Server, SQLite, Drizzle базам данных;

предоставление набора API, поддерживающих языки программирования Java, PHP, Python, C. Основные функции клиентской (мобильной) части разрабатываемой системы включает следующие основные программные компоненты (реализуемой под мобильные операционные системы Apple iOS и Google Android):

Временное хранение данных и настроек пользователя на мобильном устройстве. Операционные системы, выбранные в качестве платформы для реализации мобильного клиента Сервиса (Google Android и Apple iOS), имеют встроенный инструмент для работы с базами данных - библиотеку SQLite. SQLite -легковесная встраиваемая реляционная база данных. Исходный код библиотеки является открытым, в операционных системах Android и iOS уже есть готовые классы для работы с SQLite.

Функции поиска, формирования набора фильтров поиска, списка «избранных» заказов (лотов). Данные функции клиентской части реализованы на языках Objective-C и Java (для версий под ОС Apple iOS и Google Android, соответственно), для взаимодействия с БД (на стороне клиента) используются библиотеки SQLite.dylib и Android.database.sqlite [3] (для версий под ОС Apple iOS и Google Android, соответственно).

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

20) «фреймворк» Cocoa Touch [4] для мобильного клиента на базе Apple iOS, реализованный в соответствии с концепцией Model-View-Controller. Инструменты для разработки приложений с использованием Cocoa Touch включены в iOS SDK [https://developer.apple.com/technologies/ios/cocoa-touch.html];

21) Android UI для мобильного клиента на базе Google Android [http://developer.android.com/guide/topics/ui/index.html];

Взаимодействие с серверной частью по протоколу в RESTlike API, формат передачи данных от сервера - JSON API интерфейс, реализующий следующие методы:

22) авторизация пользователя;

23) деавторизация пользователя;

24) запрос списка фильтров клиента;

25) обработка ошибок и успешного завершения операции;

26) запрос фильтра по идентификатору фильтра;

27) запрос списка лотов (заказов) по фильтру c идентификатором фильтра;

28) отправка на сервер отредактированного фильтра;

29) отправка на сервер статуса лота (заказа).

Примеры общей экранной формы поиска лотов (заказов) и результатов поиска, а также формы расширенных настроек поиска серверной части ИС приведены на рис. 1,2.

Фильтр7 Фильтрб Фильтрб Фильтр4 ФильтрЗ Фильтр2 Фильтр1

°о

°о

«о

0О

0О

°о

Оо

* указывайте ключевые слова и словосочетания для поиска через знак "запятая". 17 ОК 17 ОА 17 ЗК 17 ОАЭФ

Диапозон цены заказа Заказчик

в рублях | в рублях

Введите ИНН или часть названия...

Показать расширенные параметры

Результаты поиска

Запрос котировок На 0325300087813000006

на поставку мяса птицы охлажденной во Н-Ш квартале 201 Зг

Дата размещения: 05/03/2013 23:53:12 Дата окончания: не задано

Начальная цена: 110000.00 р

Сведения о заказе Є Извещение

^ Запрос котировок № 0359300005713000022

Поставка лекарственных препаратов группы антибиотиков разных для ГБУ РО «Городская больница № 5.

Дата размещения: 05/03/2013 23:52:17 Дата окончания: не задано

Начальная цена: 279652.70 р

Сведения о заказе С Извещение

Рис. 1. Общая экранная форма поиска лотов

Рис. 2. Экранная форма расширенных настроек поиска

Пример экранных форм пользовательских интерфейсов клиентской (мобильной) части разрабатываемой системы под операционную систему Арріе Ю8 приведён на рис. 3-5, отображающих

151

примеры экранов настройки параметров пользовательских фильтров, сводной «ленты» новых заказов (лотов), списка «избранных заказов», а также экрана детализированной информации о выбранном пользователем заказе (лоте).

назад Параметры фильтра

Название фильтра

По ОК

Ключевые слова

Ключевые слова не заданы

Способ размещения заказа

Открытый конкурс

Заказчик

Заказчик не задан

а  % о. о0  * * о. е,

Лента Избранное Фильтры Поиск Настройки Лента Избранное Фильтры Поиск Нэстро

Рис. 3. Экранные формы настройки параметров пользовательского фильтра

Лоты

Открытый конкурс на право заключения договора на проведение авиационных работ с борта атомного ледокола в Карском мора . с применением вертолета типа Ка-32 в 2013 году

Дата: 04.03.2013 Цена: 18 332 300 руб.

Оказание услуг по добровольному медицинскому страхованию сотрудников (№

ОК 008/13}

Дата: 04.03.2013 Цена: 9 ООО 000 руб.

Организация и проведение фестиваля самодеятельного творчества подростковоМолодежных клубов Санкт-Петербурга Дата: 04.03.2013 Цена: 1 810 000 руб.

Оказание услуг по проведению экспертизы целевой направленности и эффективности использования средств субсидий, предоставленных из бюджета города Москвы юридическим лицам, участвующим в > реализации Мероприятий по поддержке и развитию малого и среднего

ИзбраННОЄ (12) Календарь

Поставка средств, влияющих на процессы обмена, препараты гормональные. >

Дата: 04.03.2013 Цена: 498 950 руб. Закупка лекарственных препаратов Дата: 27.02.2013 Цена: 332 296 руб.

выполнение работ по ремонту средств вычислительной техники и копировальномножительного оборудования Государственного учреждения -Оренбургского регионального отделения '

Фонда социального страхования Российской Федерации

Дата: 27.02.2013 Цена: 499 900 руб.

Оказание услуг по эксплуатации средств контроля,учета и регулирования термомеханического оборудования , .

находящегося в эксплуатации ФГБУ «НИИВС им. И.И. Мечникова» РАМН Дата: 27.02.2013 Цена: 250 000 руб.

Оказание услуг по организации и

а  % о, * 'А' % О, 0.1

Лента Избранное Фильтры “ о Поиск Настройки Лента Избранное  “ О I Фильтры Поиск настройки |

Рис. 4. Экранные формы сводной «ленты» новых заказов и списка «избранных заказов

Рис. 5. Экранные формы детализированной информации о выбранном пользователем заказе

Разработанный в ходе НИР экспериментальный образец ИС может быть использован:

— для дальнейшего проведения опытно-конструкторских работ, направленных на расширение аналитических возможностей ИС в области обработки информации о размещении государственного заказа;

152

— российскими и зарубежными организациями, работающими в сфере размещения государственного заказа, для повышения эффективности своей деятельности и снижения производственных издержек;

— организациями, выполняющими функции контроля исполнения государственных контрактов;

— для дальнейших научных исследований и разработки новых программных решений в области поддержки принятия решений.

Можно сделать вывод о том, что уравнение компенсации дает хорошие результаты, но лишь в том случае, когда определен класс функций, среди которых мы восстанавливаем либо саму функцию предпочтения (ценности), либо зависимость между изменениями.

1. Федеральный закон от 21 июля 2005 года №94-ФЗ «О размещении заказов на поставки товаров, выполнение работ, оказание услуг для государственных и муниципальных нужд» // Российская газета. 2005. 28 июля.

2. Риз Дж. Облачные вычисления / Джордж Риз. СПб: Изд-во БХВ-Петербург, 2011.

3. Android developers [Электронный ресурс] // URL: http://developer.android.com/. (Дата обращения: 04.03.2013).

4. Марк Д. Разработка приложений для iPhone, iPad и iPod touch с использованием iOS SDK / Дэйв Марк, Джек Наттинг, Джефф Ламарш. М.: Вильямс, 2011.

Г орюнов Илья Г еоргиевич - Ilya G. Goryunov -

кандидат технических наук, старший научный Ph. D, Senior Researcher

сотрудник ООО «Комплексные системы», LLC Complex Systems, Kursk

ЛИТЕРАТУРА

г. Курск

Корецкий Максим Владимирович -

младший научный сотрудник

ООО «Комплексные системы», г. Курск

Maksim V. Koretskiy -

Junior Researcher

LLC Complex Systems, Kursk

Сытник Дмитрий Александрович -

кандидат технических наук,

генеральный директор

ООО «Комплексные системы», г. Курск

Dmitriy A. Sytnik -

Ph. D., Director General LLC Complex Systems, Kursk

Статья поступила в редакцию 17.08.13, принята к опубликованию 15.09.13