Математическое и программное обеспечение сложных информационно-вычислительных системНИР

Matematical methods and software of complex information system

Источник финансирования НИР

госбюджет, раздел 0110 (для тем по госзаданию)

Этапы НИР

# Сроки Название
1 1 января 2016 г.-31 декабря 2016 г. Математическое и программное обеспечение сложных информационно-вычислительных систем
Результаты этапа: Разработан препроцессор для расширений языков C/C++, распознающий в коде программ прототипы и определения функций для SIMD-ускорителя (спецпроцессора для векторных вычислений). Разработана и прошла тестовые испытания программа для автоматического синтеза псевдослучайных тестирующих программ для проверки корректности работы специализированного SIMD-ускорителя.Разработано и апробировано на практике средство описания на языке C++ ресурсоемких, иерархически факторизуемых задач, обеспечивающее динамическое распределение и балансировку вычислительной нагрузки для гибридных супервычислительных систем. Разработано средство профилирования (сбора информации об использованном программами вычислительном времени) для эмулятора гибридных однокристальных суперЭВМ. Решена задача тематической классификации объектов при наличии частичной информации о тематической принадлежности связанных объектов. Разработана реляционная модель логического разграничения доступа (ЛРД), которая может применяться для разграничения доступа к объектам в сложно организованных информационно-вычислительных системах.
2 1 января 2017 г.-31 декабря 2017 г. Математическое и программное обеспечение сложных информационно-вычислительных систем
Результаты этапа: По направлению «Математическое и программное обеспечение сложно организованных высокопроизводительных вычислительных систем» получены следующие основные результаты. Разработаны сценарии для нагрузочного тестирования информационно-аналитических систем с большими, сложно организованными данными с постепенным увеличением нагрузки для определения показателей максимальной пропускной способности (число запросов к системе в секунду) для заданной конфигурации системы. Проведены эксперименты на программной реализации модели ИАС «ИСТИНА» с усовершенствованными механизмами статического кэширования. Результаты свидетельствуют о значительном уменьшении времени обращения к страницам работников и об увеличении максимальной пропускной способности системы. В рамках совместного участия в проводимых на физическом факультете МГУ работ по одному из проектов Фонда Перспективных Исследований, направленному на создание перспективной вычислительной системы на основе многомерной архитектуры, разработаны специализированные языковые средства для поддержки механизмов прозрачного внутрикристального взаимодействия CPU MicroBlaze со специализированным векторным процессором в асинхронном режиме для обеспечения эффективного распараллеливания программ, реализующих алгоритмы переборного типа. Разработан генератор параллельных программ, который по заданной формуле строит прямое и, когда возможно, обратное преобразование в виде программ на языке Ассемблер для специализированного векторного вычислительного ускорителя, а также разработан код программы сопряжения для управляющего процессора с традиционной архитектурой. На языке Haskell с использованием встроенного генератора псевдослучайных экземпляров специального алгебраического типа данных (Algebraic Data Type) разработан настраиваемый генератор тестовых параллельных программ, содержащих код как для CPU, так и для специализированного аппаратного ускорителя. Разработанный генератор тестов позволяет оперативно порождать сотни тысяч псевдослучайных тестовых программ для проверки разрабатываемых компиляторов и среды исполнения. Разработаны средства трассировки программ на уровне машинных команд, текстовый интерфейс с отладчиком GDB, а также средства графического мониторинга загруженности эмулируемых внутрикристальных устройств перспективной системы класса Many-Core, разрабатываемой на физическом факультете МГУ. По направлению «Методы и средства сбора и хранения, информационного поиска и тематического анализа слабоструктурированных данных в коллекциях с большим числом взаимосвязанных объектов» получены следующие основные результаты. Разработан прототип редактора онтологий, позволяющий вводить и редактировать элементы онтологии (концепты и связи между ними). Разработан механизм хранения вводимых элементов онтологии в реляционной базе данных, с возможностью контроля версий. Для редактирования элементов онтологии реализован механизм разбивки онтологии на страницы, доступ к редактированию которых имеют конкретные пользователи редактора. Разработан механизм импорта внешних файлов с данными в форматах RDF/XML и Turtle.. Разработаны и реализованы новые интерфейсы модуля верификации. Реализованы функциональные возможности информирования ответственных за сопровождение информации в ИАС «ИСТИНА» о появлении новых результатов научной деятельности для своевременной проверки информации о таких результатах. Реализованы функциональные возможности для ответственных за сопровождение информации в ИАС «ИСТИНА» для более эффективной работы с ранее подтвержденными или отклоненными результатами научной деятельности, в частности, просмотр истории и отмена своих действий. Реализована интеграция новых механизмов, поддерживающих функции верификации информации о результатах научной деятельности с функциями создания и сдачи годового отчета НИР сотрудника. Разработан модуль поиска результатов научной деятельности в информационных системах, основанного на их тематической классификации, а также - поиска авторов результатов с использованием механизмов их ранжирования на основе специально заданных формул вычисления весовых коэффициентов. Разработаны алгоритмы автоматического определения авторов результатов научной деятельности, которые учитывают историю ранее выполненных работ. Критериями для принятия решения о совпадении автора результата деятельности и существующей записи в базе данных являются как текстовые характеристики, включая расстояние редактирования между оригинальным именем автора и транслитерации имени, связанным с записью в базе данных, так и данные о ранее выполненных работах и тематической принадлежности издания, к которому относится результат деятельности. Весовые коэффициенты и пороговые значения получены в процессе автоматического обучения на тестовой коллекции данных. Разработаны методы кластеризации вершин и выявления аномальных отношений в графе соавторства научных публикаций. Проведено автоматическое определение научных взаимосвязей структурных подразделений университета с использованием различных информационных массивов. В результате применения автоматической процедуры определения взаимосвязей между структурными подразделениями, на доступном тестовом массиве данных было выделено 5712 отношений. При этом не учитывались зависимости между подразделениями, входящими в одну цепочку административной структуры. Автоматические методы анализа позволяют: количественно оценить степень взаимодействия подразделений; предоставить перечень документально подтверждённых фактов совместной научной деятельности сотрудников этих подразделений. Разработаны методы и алгоритмы тематической кластеризации информационных профилей научных работников и преподавателей. Профили научных работников включают данные о выполненных ими научных работах. Тематическая кластеризация профилей предполагает выделение группы авторов, выполняющих работы по близким направлениям исследований. Разработаны алгоритмы выделения тематических сообществ в графе соавторства результатов научной деятельности, которые позволяют выделять творческие коллективы. Реализованы алгоритмы вычисления меры близости между наборами ключевых слов, построенных на основании данных, включенных в профиль пользователя. В сочетании с использованием алгоритмов спектральной кластеризации ориентированных помеченных графов такой подход позволяет обеспечить тематическую кластеризацию профилей пользователей. По направлению «Математическое и программное обеспечение безопасности ресурсов и вопросов верификации больших, сложно организованных информационно-вычислительных систем» получены следующие основные результаты. Разработана модель для формального описания программных компонентов, реализующих объектно-реляционное отображение в информационно-аналитических системах, которые построены на основе реляционных систем управления базами данных. Модель описана в терминах языка Agda с зависимыми типами и поддерживает статический контроль ограничений модели данных вида “первичный ключ” и “уникальность значения атрибута”. Разработан метод описания подтипов для разновидности языка Рефал в терминах промежуточного представления. Для реализации метода модифицирован разработанный ранее интерпретатор языка Рефал. Получено свидетельство о регистрации прав на программное обеспечение № 2017619963 от 12.09.2017. Поставлена задача по исследованию применимости такой системы типов в задачах формальной верификации функциональных свойств программ, а именно: показать представимость схемы проверки типов для лямбда-исчисления с простыми типами в системе подтипов для разновидности языка Рефал. Введены механизмы, ускоряющие проверку прав доступа пользователя к целевому объекту при загрузке страницы с информацией об объекте. Эффект достигается за счет использования кэша, содержащего список разрешенных видов доступа пользователя к объекту, описание которого содержится на странице, в процессе ее генерации. Реализован и готовы к включению в ИАС “ИСТИНА” программный модуль, заполняющий список разрешенных видов доступа пользователя к объекту на основе реляционной модели логического разграничения доступа. Реализовано программное средство, генерирующее модуль управления правами доступа к объектам ИАС “ИСТИНА” на основе файла в специально разработанном формате, а также создан соответствующий файл для структуры данных ИАС “ИСТИНА”.
3 1 января 2018 г.-31 декабря 2018 г. Математическое и программное обеспечение сложных информационно-вычислительных систем
Результаты этапа: По направлению «Математическое и программное обеспечение сложно организованных высокопроизводительных вычислительных систем» получены следующие основные результаты. Разработаны сценарии для нагрузочного тестирования ИАС "ИСТИНА" с учётом полученной статистики по использованию ИАС "ИСТИНА" в производственном режиме реальными пользователями, которая содержит следующую информацию: количество одновременных соединений; наиболее популярные страницы; время обработки запросов. Проведён анализ существующих программных средств для проведения нагрузочного тестирования веб-приложений, среди которых можно выделить следующие: Apache JMeter; Wrk; WebPageTest; Locust; Tsung. Эти программные средства отличаются по функциональным возможностям, формату описания сценариев моделирования, производительности. Для перспективной модели отечественного многоядерного векторного спецвычислителя реализовано подмножество стандарта OpenCL, на котором успешно опробовано несколько высокопроизводительных приложений. Реализована поддержка сопряжения CL-ядра и кода универсального управляющего процессора. Методика распознавания и преобразования в параллельную программу циклов с известным на этапе компиляции количеством независимых по данным итераций адаптирована к используемому для отечественных гибридных вычислительных систем на кристалле компилятору. На аппаратной модели перспективного отечественного процессора опробовано разработанное средство трассировки вызовов процедур, которое печатает адреса вызывающей и вызываемой процедуры. Разработано и протестировано на эмуляторе векторного спецвычислителя средство трассировки динамически модифицируемого во время исполнения машинного кода, а также средство трассировки последовательности вызовов OpenCL API. Разработана и реализована визуализация работы многопоточной программы на уровне исходного кода, при активации которой на консоли отображаются выполняемые в данный момент времени строки исходного текста параллельной программы с указанием вычислительных ядер, на которых они исполняются. Разработано и реализовано средство визуализации загруженности многоядерной гибридной системы на кристалле, которая графически отображает загрузку как универсальных, так и векторных ядер. По направлению «Методы и средства сбора и хранения, информационного поиска и тематического анализа слабоструктурированных данных в коллекциях с большим числом взаимосвязанных объектов» получены следующие основные результаты. Разработан механизм извлечения ключевых слов из аннотации для возможности реализации контекстного поиска, в том числе - для научных результатов, для которых автором не предоставлены ключевые слова, но предоставлена аннотация на русском языке, был разработан механизм извлечения ключевых слов из аннотации. Для решения этой задачи сначала производится токенизация текста: удаляются знаки препинания, числа и прочая информация, не являющаяся словами; удаляются предлоги, частицы, союзы и другие неинформативные слова, затем к полученной последовательности слов применяется алгоритм Word2Vec. Наиболее близкие по результатам работы алгоритма отдельные слова, встречающиеся вместе, образуют ключевые слова. Реализованы алгоритмы для поиска результатов деятельности в информационной системе по их ключевым словам. Если в поисковом запросе встречается ключевое слово, то в расчёт также принимаются его словоформы и слова со схожим значением, взятые из заранее рассчитанной базы семантически близких ключевых слов. Предусмотрена также возможность поиска по предложениям, в таком случае выполняется поиск результатов, содержащих несколько слов либо словосочетаний из предложения в качестве ключевых слов. Алгоритм протестирован на данных ИАС «ИСТИНА» для проектов, поскольку для них имеются наиболее полные данные о ключевых словах и аннотациях. В дальнейшем планируется расширение алгоритмов для других типов результатов деятельности и затем внедрение данных алгоритмов в практическую эксплуатацию. На основе метода латентного размещения Дирихле (LDA) разработан алгоритм тематического моделирования для текстов. Тестирование разработанного алгоритма проводилось на коллекции данных, полученной из Microsoft Academic Graph и насчитывающий более 100 млн документов. На основе стандартных метрик качества, и метрик, использующие дополнительную информацию, представленную в научных статьях были проведено сравнительное тестирование тематические моделей, не опираясь на их внутреннее устройство. Реализованы алгоритмы поиска и сбора первичных данных о предстоящих научных мероприятиях. Влиятельность источника информации определяется на основании сопоставления количества адресов ресурсов, представленных в данном источнике и в других источниках. Редактор онтологий, разработанный специально для ИАС «ИСТИНА», предоставляет каждому пользователю системы возможность формировать свои графы связей терминов. Данные графы могут быть использованы для построения таблицы семантически близких ключевых слов и для расчёта коэффициентов схожести этих слов. Такая таблица, в свою очередь, может быть использована для информационного поиска, а также для привязки объектов системы к рубрикам различных классификаторов на основе данных о частотах встречаемости заданных либо схожих с заданными ключевых слов в этих рубриках. Такая возможность опробована на данных о проектах и диссертационных советах в ИАС «ИСТИНА». По направлению «Математическое и программное обеспечение безопасности ресурсов и вопросов верификации больших, сложно организованных информационно-вычислительных систем» получены следующие основные результаты. Разработан метод проверки типов для разновидности языка Рефал. Проверка типов реализована в виде частного случая суперкомпиляции при двух условиях, а именно: тип является завершимой функцией, а проверяемая функция завершима на входных данных заданного типа. В настоящее время реализация метода проверки типов не поддерживает вложенные вызовы функций. Разработан метод формального описания программных компонентов на основе их трансляции в промежуточное представление, использованного для реализации используемой разновидности языка Рефал. В некоторых (в настоящее время — относительно простых) случаях возможно использование разработанного метода проверки типов для проверки соответствия программы спецификации. Разработана программная библиотека на языке Python, предназначенная для управления разграничением доступа к объектам систем, разработанным с использованием фреймворка Django на основе реляционной модели ЛРД. В число функциональных возможностей библиотеки входит построение описания реляционной модели ЛРД в формате, подаваемом на вход компилятора реляционной модели ЛРД, на основе более компактного описания на языке Python. Возможность записи правил разграничения доступа к объектам системы в более компактной формы достигнута за счет извлечения информации о структуре данных системы из определения ее моделей данных вместо ее описания в файле политики безопасности. Программная библиотека, описанная в предыдущем пункте, позволяет строить полное описание модели ЛРД к объектам системы на основе ее сокращенного описания, содержащего только непосредственно правила доступа к объектам системы. При этом вся необходимая информация о структуре данных системы автоматически извлекается разработанной программной библиотекой из Django-моделей системы. Это позволяет значительно сократить объем описания модели ЛРД к объектам системы по сравнению с используемым ранее XML-подобным форматом. Кроме того, описание модели ЛРД к объектам системы на Python дает возможность определять сокращенную запись для ряда часто используемых видов правил управления доступом к объектам системы. В случае ИАС “ИСТИНА” такими часто используемыми видами правил являются правила, включающие распространения разрешений, выданных пользователям для подразделений, на их дочерние подразделения, а также ограничение действия некоторых разрешений по времени. В настоящее время в ИАС “ИСТИНА” определена удобная компактная форма записи для правил такого вида. Компиляция описания политики безопасности системы из файла в специально разработанном формате в файл на языке Python позволяет статически проверять некоторые из свойств используемой модели ЛРД, таких как, например, наличие циклически зависимых правил разграничения доступа. Проверка наличия таких правил в общем случае невозможна при описании механизмов разграничения доступа к объектам системы непосредственно на языке Python. В настоящее время механизмы реляционной модели ЛРД используются при проверке прав доступа пользователей к наиболее важным объектам ИАС “ИСТИНА”, включая открытые профили сотрудников, результаты научно-исследовательской деятельности, организации, подразделения и диссертационные советы. Программная библиотека, описанная в предыдущих пунктах, используется для построения описания модели разграничения доступа к объектам системы в формате, подаваемом на вход компилятора реляционной модели ЛРД. При этом необходимая информация о структуре базы данных системы автоматически извлекается из Django-моделей системы, что исключает необходимость ее ручного описания в файле политики безопасности. В противном случае это описание в значительной степени дублировало бы описание самих моделей данных системы.

Прикрепленные к НИР результаты

Для прикрепления результата сначала выберете тип результата (статьи, книги, ...). После чего введите несколько символов в поле поиска прикрепляемого результата, затем выберете один из предложенных и нажмите кнопку "Добавить".