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

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

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 05.02.2021
Размер файла 360,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

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

Коровин Яков Сергеевич, кандидат технических наук, директор; Хисамутдинов Максим Владимирович, кандидат технических наук,старший научный сотрудник; Каляев Анатолий Игоревич, кандидат технических наук, старший научный сотрудник; Иванов Донат Яковлевич, кандидат технических наук, старший научный сотрудник, Научно-исследовательский институт многопроцессорных вычислительных систем им. академика А.В. Каляева Южный федеральный университет

Аннотация

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

Ключевые слова: GRID, мониторинг состояния, мультиагентная система, нефтяное месторождение.

Введение

Основная идея рассматриваемой в данной статье системы заключается в разработке нового гибридного подхода [1, 2] рекомендации оптимальных методов увеличения нефтеотдачи (МУН) [3-6] на основе текущего состояния на нефтепромысле и в результате анализа ретроспективной информации (данных БД) об успешно проведенных мероприятиях или рекомендации по превентивному мероприятию, предотвращающего отказ оборудования по данным онлайн обработки ситуации на нефтепромысле [7].

Методы нейросетевой обработки информации [7-9] позволяют эффективно классифицировать огромные массивы накопленных нечетких данных (какими являются данные нефтепромысла) и находить похожие ситуации в ходе анализа новых данных (текущей ситуации). В итоге программное обеспечение будет выдавать пользователю рекомендации (с объяснением) по мероприятиям, учитывая накопленный опыт нефтяной компании.

Значительная номенклатура параметров функционирования нефтепромыслового оборудования [8], а также параметров окружающей среды, геофизических данных, информации по технологическим замерам приводит к необходимости онлайн обработки именно огромных массивов данных. Например, оперативная информация только по парку установок электроцентробежных насосов одного цеха добычи нефти и газа (примерно 300 единиц рабочего оборудования) может составлять до 1 Тб в сутки (если производить анализ 250 параметров, влияющих на режим функционирования ЭЦН).

Для онлайн обработки таких объемов информации, конечно, можно использовать современные суперкомпьютеры или мощные вычислительные кластеры. Однако такой подход сопряжен со значительными финансовыми затратами. В то же время корпоративные вычислительные ресурсы крупных предприятий, в том числе и нефтяных компаний, используются недостаточно эффективно. Максимальная загрузка редко достигает 30%. Следовательно, имеется существенный резерв, который может быть использован для решения указанных выше задач.

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

Скважинный агент

Скважинный агент - это программный модуль с элементами искусственного интеллекта (нейронных сетей), ориентированный на решение задач вмененной ему скважины.

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

В информационном графе G(Q,X) задачи каждой вершине qiеQ ставится в соответствие исполняемый модуль Ий подзадачи, а так же значение Yi, определяющее ее трудоемкость (вычислительную сложность), которая определяется как максимальное количество элементарных операций, осуществляемых при решении данной подзадачи, а каждой дуге х,q) еХ приписывается объем данных Wij, передаваемый между подзадачами qi и qj, а так же соответствующий передаче этих данных файл.

На рис. 1 приведен пример информационного графа задачи (0,Q):

Рис. 1. Информационный граф задачи G(Q,X)

Из иллюстрации видно, что задача состоит из девяти вершин (подзадач) qi (і=1,9), отмеченных на графе окружностями, данные подзадачи определенным образом связаны дугами х(ад), соответствующими передаваемым между подзадачами qi и qj данным. При этом входные данные для задачи поступают на подзадачу q1, а выходные данные формируются в результате решения подзадачи q9.

Для упрощения процедуры распараллеливания задачи информационный граф удобно представлять в ярусно-параллельной форме (ЯПФ). Для этого вершины информационного графа необходимо разделить на подмножества V такие, что, если дуга qшqп) идет от вершины qm яруса ) к вершине qn яруса к, то обязательно q<к. Для приведенного выше графа яруснопараллельная форма будет выглядеть, как представлено на рисунке 2.

Рис. 2. Ярусно-параллельная форма информационного графа задачи

Как видно из рис. 2, информационный граф задачи разбивается на 5 ярусов. При этом заметим, что все данные, необходимые для решения подзадачи, расположенной на і-м ярусе графа, будут получены в результате решения подзадач нижележащих ярусов.

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

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

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

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

Если предположить, что на рисунке 2 трудоемкость подзадач qi (1=1,9) соотносится следующим образом: Y3>Y2, Y4>Y6>Y5, Y7> Y8, то нумерация подзадач будет как представлено на рисунке 3.

Как видно, при такой нумерации подзадач исходные данные для i-й (i=2,9) подзадачи всегда будут готовы по завершению решения всех предыдущих по номеру подзадач.

Учитывая приведенные выше соображения, алгоритм формирования задачи, предназначенной для решения в GRID, будет выглядеть следующим образом:

1. логически разделить задачу на информационно связанные логические части (подзадачи);

Рис. 3. Последовательность решения подзадач в информационном графе

2. построить информационный граф задачи G(Q,X), поставив в соответствие каждой подзадаче вершину графа qiGQ, а информационной связи между подзадачами дугу x(qi,qj)GX. Каждой вершине графа qi приписать трудоемкость (вычислительную сложность) Yi соответствующей подзадачи, определяемую как максимальное количество элементарных операций, осуществляемых при решении данной подзадачи, а каждой дуге x(qi,qj) объем Wij передаваемых данных между соответствующими подзадачами;

3. представить граф задачи ярусно-параллельной форме;

4. определить и задать степень распараллеливаемости М задачи, как максимальную ширину яруса;

5. определить нумерацию подзадач;

Процесс решения задачи в облачной вычислительной среде продолжается до тех пор, пока не окажется, что список агентов-участников сообщества по ее решению пуст, а также пуст граф задачи, хранимый в дескрипторе задачи. Это означает, что все нити задачи успешно выполнены. После этого задача снимается с ДО, а пользователю отправляется сообщение об успешном завершении процесса решения его задачи, после чего пользователь переводит оплату (премиальные баллы) всем агентам, принявших участие в решении данной задачи в зависимости от объема выполненной ими работы (суммарной трудоемкости решенных подзадач).

Описанному выше процессу отвечает следующий укрупненный алгоритм функционирования агента, представляющего ресурс в ОВС.

Алгоритм работы агента мультиагентного диспетчера

1 Агент опрашивает ДО;

2 при обнаружении на ДО задачи агент считывает ее дескриптор и анализирует граф задачи. Если граф задачи пуст, то переход к п. 1, иначе

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

4 в графе задачи выделяется подграф, вершинам которого приписаны подзадачи, выполняемые ресурсом агента;

5 если выделенный подграф пуст, то перейти к п. 1, иначе

6 текущий граф = выделенный подграф;

7 агент выделяет в текущем графе наиболее длинную нить, конечной вершине которой приписано требуемое время исполнения (в момент размещения задания на ДО это требуемое время соответствует требуемому времени решения задачи и приписано только конечной вершине текущего графа. Если таковой нити в графе задачи нет, то перейти к п. 1, иначе

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

9 если допустимый момент времени, когда необходимо начать выполнение нити больше либо равен текущему моменту времени, то переход к п. 13, иначе

10 нить исключается из графа задачи;

11 если граф задачи пуст, то перейти к п. 1, иначе

12 перейти к п. 7;

13 агент принимает на себя исполнение нити для чего:

- считывает с ДО последовательность подзадач, приписанных вершинам нити, требуемое время ее исполнения и идентификатор ресурса, которому необходимо передать результаты ее решения;

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

14 агент переходит к исполнению последовательности подзадач, приписанных вершинам нити;

15 если требуемое время начала выполнения d-той подзадачи, приписанной вершине нити меньше текущего, то перейти к п.17, иначе

16 агент проверяет наличие исходных данных, необходимых для выполнения d-той подзадачи. Если исходные еще не поступили, то перейти к п. 15, иначе перейти к п. 18;

17 агент отправляет результаты решения подзадачи, приписанной вершине нити, на ДО и осуществляет модификацию дескриптора задачи: исключает свой идентификатор из списка сообщества; добавляет неисполненные вершины нити в граф задачи; приписывает крайней вершине этой нити момент времени, к которому она должна быть исполнена, а также идентификатор ресурса, которому необходимо передать результаты ее решения. Переход к п. 1;

18 агент выполняет d-тую операцию, приписанную вершине нити с помощью «своего» ресурса;

19 если агенту поступило сообщение о прекращении выполнения задачи, то переход п. 1, иначе

20 агент сообщает на ДО об успешном завершении решения нити задачи. При этом результаты решения передаются ресурсу, идентификатор которого приписан конечной вершине данной нити, идентификатор агента исключается из списка членов сообщества по решению данной задачи, а ему начисляются премиальные баллы. Переход к п. 1.

22 задача не может быть решена к установленному пользователем моменту времени. Дескриптор задачи удаляется с ДО, пользователю направляется сообщение о невозможности решения его задачи к требуемому моменту времени, а всем агентам, идентификаторы которых записаны в списке участников сообщества по выполнению задачи, передается сообщение о прекращении ее исполнения. Переход к п. 1.

алгоритм скважинный мультиагентный диспетчер

Выводы

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

Список литературы

1. Коровин Я.С., Капустян С.Г., Иванов Д.Я. Система поддержки принятия решений оператора объектов ответственного применения на основе гибридных методов интеллектуальной обработки данных // Искусственный интеллект: проблемы и пути решения (сборник докладов), 2018. C. 109-114.

2. Korovin I. et al. Application of hybrid data mining methods to increase profitability of heavy oil production // Informatics, Electronics and Vision (ICIEV), 2016 5th International Conference on, 2016. P. 1149-1152.

3. Shah D.O. Improved oil recovery by surfactant and polymer flooding. Elsevier, 2012. 578 p.

4. Morrow N., Buckley J., others. Improved oil recovery by low-salinity waterflooding // J. Pet. Technol. Society of Petroleum Engineers, 2011. Vol. 63. № 05. P. 106-112.

5. Sheng J.J. Enhanced oil recovery in shale reservoirs by gas injection // J. Nat. Gas Sci. Eng. Elsevier, 2015. Vol. 22. P. 252-259.

6. Lake L.W. et al. Fundamentals of enhanced oil recovery. Society of Petroleum Engineers Richardson, TX, 2014.

7. Korovin I.S., Khisamutdinov M.V. Neuronetwork decision support system for oilfield equipment condition online monitoring // Adv. Mater. Res. Trans Tech Publications, 2014. Vol. 902. P. 409.

8. Korovin I.S. et al. Application of neural networks for modelling centrifugal pumping units of booster pump stations for a two-phase gas-liquid mixture // Informatics, Electronics and Vision & 2017 7th International Symposium in Computational Medical and Health Technology (ICIEV- ISCMHT), 2017 6th International Conference on. 2017. P. 1-6.

9. Korovin I.S. Use of Recurrent and Convolutional Neural Networks for the Problem of Long Term Condition Prediction for Equipment of an Oil-and-gas Production Enterprise // DEStech Trans. Eng. Technol. Res., 2017. P. 97-100.

Размещено на Allbest.ru

...

Подобные документы

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

    дипломная работа [1,7 M], добавлен 07.02.2013

  • Анализ и виды интеллектуальных агентов в системе дистанционного обучения и их характеристики. Построение интеллектуального агента глоссария на платформе Jadex с помощью XML формата. Среда разработки и описание интеллектуального агента с помощью BDI.

    курсовая работа [113,6 K], добавлен 10.02.2011

  • Основные понятия и определения теории графов: теоремы и способы задания графа, сильная связность графов. Построение блок-схем алгоритма, тестирование разработанного программного обеспечения, подбор тестовых данных, анализ и исправление ошибок программы.

    курсовая работа [525,6 K], добавлен 14.07.2012

  • Технология программных агентов. Форматы метаданных, использующиеся для описания электронных ресурсов. Разработка интеллектуальных агентов. Среда разработки Jadex для построения интеллектуальных агентов. BDI модель интеллектуального агента ресурсов.

    курсовая работа [279,8 K], добавлен 20.02.2011

  • Сущность интеллектуальных систем. Запись математического выражения в виде ориентированного графа. Особенности разработки генетического алгоритма для решения задачи аппроксимации логического вывода экспертной системы на основе метода сетевого оператора.

    дипломная работа [1,0 M], добавлен 17.09.2013

  • Изучение понятия и свойств алгоритма. Определение сущности технологии Robson. Исполнитель, а также блок-схема алгоритма или его графическое представление, в котором он изображается в виде последовательности связанных между собой функциональных блоков.

    реферат [155,9 K], добавлен 19.10.2013

  • Оптимизация решения задачи с помощью алгоритма отжига. Анализ теории оптимизации как целевой функции. Метод градиентного спуска. Переменные и описание алгоритма отжига. Представление задачи коммивояжера через граф. Сведение задачи к переменным и решение.

    курсовая работа [784,0 K], добавлен 21.05.2015

  • Программа формирования матрицы смежности по заданному списку окрестностей вершин ориентированного графа. Формирование динамического списка дуг ориентированного графа по заданному списку окрестностей. Анализ временной и емкостной сложности алгоритма.

    курсовая работа [8,1 M], добавлен 07.09.2012

  • Составление алгоритма сортировки линейной вставкой. Понятие однонаправленного циклического списка символов, реализация процедуры подсчета суммы элементов и составление алгоритма. Прямое представление дерева, алгоритм работы с ним на абстрактном уровне.

    контрольная работа [32,8 K], добавлен 20.01.2012

  • Создание базы данных, построение на ее основе информационной системы в виде веб-сайта. Обоснование и выбор системы управления базой данных. Датологическое проектирование, разработка алгоритма решения задачи, создание форм. Результаты обработки данных.

    отчет по практике [904,1 K], добавлен 13.04.2015

  • Области применения теории графов. Алгоритм решения задачи поиска инвариантного и полного графа. Реализация программы с графическим интерфейсом пользователя на основе алгоритма. Реализация редактора графа и вывод полученных результатов в понятной форме.

    курсовая работа [493,3 K], добавлен 27.12.2008

  • Методы решения систем линейных уравнений трехдигонального вида: прогонки, встречных прогонок, циклической редукции. Параллельные алгоритмы решения. Метод декомпозиции области. Основные возможности и особенности технологии CUDA. Анализ ускорения алгоритма.

    дипломная работа [1,4 M], добавлен 21.06.2013

  • Описание решения задачи, ее постановка, общий подход к решению. Представление исходных данных, условий задачи и целей ее решения. Составление алгоритма решения поставленной задачи. Написание программного обеспечения и тестирование конечного продукта.

    курсовая работа [1,1 M], добавлен 03.07.2011

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

    курсовая работа [1,1 M], добавлен 11.01.2015

  • Общее понятие графа, его виды и сущность вершинного покрытия. Написание точного алгоритма решения задачи о надежности сети, нахождение минимального покрытия. Реализация данного алгоритма на языке TurboC++. Код программы, решающий поставленную задачу.

    курсовая работа [1,3 M], добавлен 27.06.2014

  • Транспортная задача как одна из самых распространенных специальных задач линейного программирования: понятие, основное назначение. Формальное описание метода минимального элемента. Характеристика этапов разработки алгоритма решения поставленной задачи.

    курсовая работа [713,3 K], добавлен 19.10.2012

  • Симметричные криптосистемы; алгоритмы шифрования и дешифрования данных, их применение в компьютерной технике в системах защиты конфиденциальной и коммерческой информации. Основные режимы работы алгоритма DES, разработка программной реализации ключа.

    курсовая работа [129,6 K], добавлен 17.02.2011

  • Основные этапы создания алгоритмов, представление в виде программы. Рассмотрение методов решения задач. Метод поэтапных уточнений. Различие между численными и логическими алгоритмами. Реализация цикла со счетчиком. Процесс разработки сложного алгоритма.

    презентация [1,3 M], добавлен 22.10.2013

  • Описание алгоритма решения транспортной задачи по планированию перевозки зерна. Ход решения задачи вручную, в программе TORA методом наименьшего элемента, с помощью MS Excel. Разработка программы для решения задачи в общем виде средствами Delphi.

    курсовая работа [2,5 M], добавлен 22.11.2012

  • Описание принципа работы генетического алгоритма, проверка его работы на функции согласно варианту на основе готовой программы. Основные параметры генетического алгоритма, его структура и содержание. Способы реализации алгоритма и его компонентов.

    лабораторная работа [20,2 K], добавлен 03.12.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.