Коллеги, я решил попробовать использовать искусственный интеллект в работе. Время сейчас неспокойное, новый навык не помешает. Изучение нового опять же снижает риск альцгеймера и улучшает работу мозга. В общем, сплошные плюсы. Да и тема модная, в резюме красиво будет смотреться.
Вот думаю автоматизировать анализ работы погружного скважинного оборудования, эцны и прочие шгны.
план такой: 1. Скачать данные за год по скважине 2. Выделить интервалы нормальной работы и проблемной 3. Для проблемных интервалов дать объяснение в чем проблема (газ, мех поимеси, дыра в нкт и т.д.) 4. Научить нейронную сеть 5. Использовать нейронную сеть для автоматизированного анализа
хотелось бы узнать у знающих, упустил ли я что-то важное
ну и второй вопрос, в чем тут интеллект? Это механический анализ данных получается
А зачем вам нейросеть? Случайный лес (Random Forest) должен справиться с подобной задачей
Ну я пока новичок (!) в этой теме. Я не знаю чем одно отличается от другого. Если есть возможность, объясните в чем суть этих методов?
Возьми динамограммы ШГН если есть и вот с них начни обучать может.
А так тот интеллект - это "метод наименьших квадратов" в разных более усложненных вариациях.
Динамограммы это следующий этап. Пока хочу упростить процесс по максимуму. Начать с малого.
например, научить модель распознавать 3-5 состояний оборудования.
я так понял что интеллект заключается в том, что модель сможет работать с любыми комбинациями данных со скважины в будущем и выдавать вероятностную оценку того, что происходит с насосом.
Zorg, отличная тема и вот эти начинания в привлечении новых для нефтянки инструментов анализа именно опытными инженерами-нефтяниками заслуживает всяческую похвалу! При достаточно плотном общении с китайскими ребятами-инженерами (Циньхуа, Шанхайский универ) поразился тому - насколько глубоко они рубят не только в своей профессиональной области, но ещё и в математике, физике, программировании (C++ и python - это как аз и бука). Так что нам тоже не надо отставать от своих восточных коллег.
Но тут зарыта вот какая штука.... будучи однажды в одном уважаемом НТЦ услышал доклад в привлечении алгоритмов ML в интерпретации геологических данных - было конечно интересно узнать какими алгоритмами пользуются, какие красивые картинки при этом получаются, но в попытке понять как выбирать тот или иной алгоритм, какими критериями руководствоваться - внятного ответа получено не было. И для меня пока совершенно непонятно, как все эти модные алгоритмы из data science сопрягать с физикой анализируемого процесса.
Если бы большинство задач сводились к вариационному минимаксу - щастье было б полные штаны, но увы - уже на этапе формулировки начальных данных возникают неопределённости как рукотворного характера, так и совершенно неконтролируемые геологические. Как корректно формулировать мат.модели на этих данных - уже хорошая задачка, возникает какая-то стохастика, которая должна содержать в себе ещё и адекватную физику процесса. Слышали наверное про перколяционные подходы в моделировании? Но что-то я не видел их широкого распространения, видимо даже с ними уже не всё так просто...
Если метод предусматривает обучение, то обычно так.
А так наверное полные штаны были бы если бы мы сами понимали какие именно библиотеки PyTorch следует использовать в том же случае диагностики шгн и может могли бы показать хотя бы фрагмент кода (в Jupyter или еще где-то). Обычно говорят что мы используем крутые технологии ИИ и все.
Это задача классификации с обучением. есть много методов, которые решают такую задачу. SVM, GBM, random forest, bayessian network, нейронные сети те же. Наиболее быстрые это GBM и рэндом форест, по личному опыту. В питоне можно заюзать библиотеки keras и sklearn, в R библиотеки так и называются randomForest, neuralnet.
Рекомендую пройти бесплатный курс от MIT по аналитике данных. Пока лучшее из всего, что видел и без заумной математики, человек с высшим техническим справится https://ocw.mit.edu/courses/sloan-school-of-management/15-071-the-analytics-edge-spring-2017/
Там R юзают, насколько я понял идёт потихоньку миграция от R к Python, или пофиг?
Главное принцип поймете, а синтаксис довольно быстро можно подтянуть, если понадобится
Несколько лет назад была презентация из НГУ по разработке алгоритмов по идентификации поведению человека/объекта (например, автомашины) в системах видео-наблюдения. Кажется, был выход на коммерческую разработку. В Китае эти системы уже функционируют 2-3 года. Для контроля за скважиной в любом фонде настройка этих алгоритмов было бы идеальным случаем. Дополнительно, если сделать классификацию выявленных «отклонений» и прикрутить к ним различные аналитические выкладки или расчеты, то можно смело продавать в нефтянке. Т.е. система слежения уже есть, необходима система реагирования. В моем представлении это смесь из ИИ + алгоритмы по идентификации + узловой анализ + расчет нефтесбора.
На Youtube можно найти Mukesh Rao из UT - у него немало лекций. Как раз в основном тем кто начинает.
Лучше всего анализировать данные по актам ПДК. Здесь искуственный интеллект должен дать четкий и беспристрастный ответ - почему у одних и тех же скважин, с одним и тем же оборудованием разные причины отказа. У специалистов слишком разные мнения, программа же беспристрастна и даст, в итоге, четкий ответ на данные вопросы. Все, что сегодня называют "искусственным интеллектом", сводится на языке программистов к понятиям "if... then". Конечно, это очень упрощенно и здесь есть, где приложить знания специалистам. Но нейросеть строить не стоит. Да, модно, но пока к базам данных нефтяных компаний неприменимо. Им (базам) еще расти до такого понятия нужно.
В плане ШГН всё давно уже придумано.
Тот же Lufkin уже 20 лет снимает устьевую динамограмму, пересчитывает ее в плунжерную и рассчитывает порядка 20-30 параметров(можно и больше). Итоговым параметром является значение заполняемости насоса, по которому и ведется оптимизация работы насоса, с управлением по ЧРП. Но ценник у Lufkin не гуманный.
Собственно наша контора делает то же самое, но стоит это куда дешевле. Рекламы конторы не будет ))
В идеале, для полного контроля ШГН строится система нелинейных уравнений, описывающих работу пласта, жидкости в скважине, НКТ и ШГН в целом. Решение системы таких уравнений позволяет оптимизировать работу ШГН. Но это сложно назвать ИИ. Все можно решить на базе математических уравнений. Открываем Драготеску, а там вся кинематика ШГНУ расписана.
Конечно же никаких ПЛК тут не хватит. Используется одноплатный компьютер на базе Linux.
А там уже считайте что хотите!
Поиск неисправности по динамограмме это другая головная боль. Когда неисправностей много - все методы работают криво.
У ШГН всегда одна и та же проблема - со снижением подачи начинается подклинивание полунжера, потом клин, потом обрыв штанг. В свое время Электон создал СУ ШГН "Электон-06", в ней были предусмотрены все необходимые защиты от перегруза.
Вы уверены что у вас достаточно данных для обучения ИИ? Первым делом надо убедиться что у вас не 10-20 сетов данных а больше 100. Кроме того надо проверять качество данных (треш ин треш аут). Если эти условия не соблюдены то ИИ будет работать так себе.
Недавно вышла статья про использование ИИ для прогноза добычи
https://pubs.spe.org/en/jpt/jpt-article-detail/?art=7658
Думаю количество данных может в некоторых случаях невилировать в какой-то степени качество данных.
Может и давно придумано. Но как сам же и сообщил - Луфкин ценник не гуманный. Если у вас есть те же самые чёткие решения то это хорошо.
Довольно примитивный подход. обычный кластеринг, датасет небольшой всего 270 на 20 месяцев. Для шейлов видимо нормально. Интересно, а прогноз они рисовали на сколько лет при базе 20 месяцев?
Очень часто такое было в шейлах, сейчас конечно статистика уже накопилась, есть скважины с 10+ годами истории добычи. И скважин огромное количество, есть с чем работать.
Ну а в этом примере, провинция в Канаде, с гораздо более скудным набором данных. Попытались, что-то сделали, отчитались об успехе в журнале, всё :)
Вот другой свежий пример
https://pubs.spe.org/en/jpt/jpt-article-detail/?art=7524
Скоро говорят ИИ в инструментах (IoT) буде оценивать работу инженера. И в конце мы все останемся без работ заменят нас на ИИ. От людей слишком много проблем.
Не вопрос, пусть ИИ оценивает итоги года, определяет размер премии, ежемесячные надбавки..
В своей работе и так всегда выполняю множество вариантов расчетов (инверсии, прогнозы по инверсиям, скоростные модели) с целью анализ взаимосвязей между результатом и параметрами "модели".
И тоже совсем недавно заинтересовался темой дата саенса. Использую Dataiku - у них есть халявная лицензия без ограничения на объем данных. Многие вещи можно творить без программирования, включая обучение кучи вариантов деревьев/лесов/бустов/нейтронных сетей. В этой штуке создается граф обработки данных и обучения моделей - очень удобно, так как большую часть вещей можно сделать без программирования. А если чего не хватает, то в граф обработки можно добавить свои скрипты на питоне/R.
Пока меня смущают следующие вопросы:
1. В моем случае данных обычно мало, а все эти форесты, бусты, нейтронные сети - это модели с тьмой параметров (имею ввиду не настройки алгоритма, а обученную модель ) . Данных мало - параметров много, корректность данных тоже под вопросом - как это скажется на качестве модели? не уверен, что в лучшую сторону. Конечно, если данных много, то этот вопрос отпадает. Например, для прогноза эффективных толщин по инверсии я сообразил простую модель, которая зависит от 3-5 параметров при использовании двух кубов из инверсии. Тут у меня такой подход - использую модель с бОльшим количеством параметров, только если это ведет к существенному улучшению прогноза. Модель очень стабильна - при малом изменении параметров карта тоже менятся слабо, а не шиворот навыворот как с нейтронными сетями. Вот интересно попробовать машинное обучение.
2. Есть подозрения, что как и везде в датасаенсе есть куча подводных камней, про которые можно познать только на практике, особенно если в радиусе досягаемости нет более опытных коллег. Поэтому в свободное время начал практиковаться на Kaggle - куча задач разной сложности и активное сообщество. мое первое соревнование - https://www.kaggle.com/c/predict-volcanic-eruptions-ingv-oe/leaderboard. Пока на 10 месте))
пока обратил внимание:
1. На исходных данных далеко не уедешь - для существенного улучшения результата нужно отбирать и генерировать качественные фичи (дополнительные параметры, которые имеют лучшую связь с результатом).
2. Даже в рамках одной задачи эффективными могут оказаться разные модели, в зависимости от формализации задачи и используемых фич. Не стоит зацикливаться только на одной из них
2. Если данные для обучения статистически существенно отличаются от данных в тестовой выборке, то результат может быть не предсказуем))
Но в итоге, судя по докладам на SEG2020, скоро мы все там будем))
По идее, достаточно присылать в диспетчерский центр один график динамограммы раз в неделю/месяц и вручную или автоматически диагностировать подклинивание плунжера. После чего посылать бригаду на ремонт.
Но у нас в Татарии, (не буду называть компании), операторы говорили мне, что ШГНУ должна работать пока не упадет. Никаких остановов из-за "проблемных" динамограмм. И это при том, что дебиты тут у нас смешные. ШГН может давать 0.5м3 в день. И уже этому рады.
Хотя в той же Албании больше половины фонда ШГН работает с периодом качания - 1 цикл за 2-3 мин.
Недавно вышла новость, что Убер ИИ уволил работников
https://www.bbc.com/news/business-54698858
Кажется новое крепостное право на горизонте маячит.
В США ИИ использование выявило что оно может быть очень субективно. Кажется ИИ ловила только негров.
https://www.technologyreview.com/2019/02/04/137602/this-is-how-ai-bias-really-happensand-why-its-so-hard-to-fix/
Для информации: как AI отслеживает мировые запасы нефтепродуктов практически real-time https://orbitalinsight.com/use-cases/oil-inventories
Если коротко, то мониторят 26 тыс. резервуаров по миру и по положению плавающей крыши определяют запасы.
Новостной дайджест что ли теперь тема.
500 кг в день в Уфимском районе добывть в 90-ых было вполне нормой. Так что нормальные цифры наверное. Если не останавливают, то наверное должны оптимизировать параметры работы. Может статистику смотрят более "кривых" скважин и "менее" кривых скважин.
Спасибо за советы. Буду изучать вопрос и учить мат часть.
с лафкиным для винтовых насосов знаком, хорошая станция управления, согласен. На первом этапе своего проекта я хочу автоматически распознавать статус насоса: работает, не работает, статус неизвестен. Это намного проще чем тот же лафкин. Плюс в том что расчёт и анализ проводится на сервере и может быть запущен для сотен и тысяч скважин.
следующий этап будет диагностика почему не работает и если работает, то есть ли проблемы. Плюс подхода в том что алгоритм один на все скважины.
третий этап это управление работой насоса. То есть замена лафкина и подобных. Плюс это экономия средств на закупку лафкиных. Или повышение возможностей существующих лафкиных.
Сергей, спасибо за ссылку на ресурс!
А там есть дата-сеты из нефтянки, чтоб поиграться в песочнице, понять что к чему?
https://www.kaggle.com/datasets?search=oil
По диагоняли глянул, хрень какая-то на выдаче - в основном биржевые данные, маркетинг. По upsream что-то не видать инженерного
Так ведь коммерческая тайна:) СБ не дремлет.
попалась пара соревнований
https://www.kaggle.com/c/tgs-salt-identification-challenge/overview
https://www.kaggle.com/c/statoil-iceberg-classifier-challenge/data
но это все про картинки. Думаю не стоит ограничиваться нефтянкой, чтобы понять что к чему. Если тему проработать, то потом можно и в нефтянке приложить.