НАУЧНЫЕ ВЕДОМОСТИ
Серия Экономика. Информатика. 2015. №13 (210). Выпуск 35/1
93
УДК 004.89
РЕШЕНИЕ ЗАДАЧИ ОПТИМИЗАЦИИ БЛОЧНЫХ МОДЕЛЕЙ ПРИ ПРОЕКТИРОВАНИИ ОТКРЫТЫХ ГОРНЫХ РАБОТ С ИСПОЛЬЗОВАНИЕМ ГИБРИДНЫХ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ
SOLVING PROBLEM OF BLOCK MODEL OPTIMISATION IN THE DESIGN OF OPEN PIT MINING USING HYBRID COMPUTING SYSTEMS
Д.В. Петров, В.М. Михелев
D.V. Petrov, V.M. Mikhelev
Белгородский государственный национальный исследовательский университет, Россия, 308015, Белгород, ул. Победы, 85 Belgorod State National Research University, 85 Pobeda St, Belgorod, 308015, Russia
e-mail: [email protected], [email protected]
Аннотация. В данной статье показана возможность применения высокопроизводительных гибридных вычислительных систем для комплексного анализа формы карьеров открытых горных работ (нахождение оптимальных границ и визуализации полученного результата)
Resume. This article shows the possibility of using high-performance hybrid computing systems for complex analysis of open pit limits (finding the optimal borders and visualization of the result).
Ключевые слова: моделирование карьеров рудных месторождений, алгоритм плавающего конуса, генетические алгоритмы
Keywords: modeling quarries of ore deposits, floating cone algorithm, genetic cryptographic algorithm
Введение
Решение геологических задач при разработке твердых полезных ископаемых является важной и ответственной частью технологии эксплуатации месторождения. Как правило, интерпретация информации о залегании и закономерностях распределения компонентов производится на ограниченном количестве данных геологической разведки. В связи с этим использование современных методов и средств компьютерного моделирования становится необходимым условием обработки исходных данных для принятия экономически и технологически обоснованных решений.
Одним из основных этапов проектирования разработки полезных ископаемых является решение задачи поиска предельных границ карьера. При нахождении границ карьера необходимо учитывать пространственное распределение компонентов полезных ископаемых и принятых устойчивых или технологически допустимых углов откосов бортов. Основой для выполнения расчетов по оптимизации извлечения запасов является цифровая блочная модель месторождения. Вполне закономерно, что чем более масштабной и точной является блочная модель рудного месторождения, тем более вычислительно сложным является процесс расчетов.
Однако, не менее значимым является процесс визуализации полученных решений. Качественная визуализация помогает представить результаты исследований в простой и понятной форме, и, зачастую, служит ключевым фактором для принятия решений о том, как действовать дальше.
Цель данной статьи - показать эффективность применения высокопроизводительных гибридных вычислительных систем для комплексного анализа формы карьеров открытых горных работ (нахождение оптимальных границ и визуализации полученного результата).
Параллельный генетический алгоритм
Генетический алгоритм - один из эволюционных методов решения задач оптимизации и глобального поиска. Мутация и естественный отбор - два движущих фактора эволюции в живой природе успешно моделируются и показывают хорошие результаты в области решения технических задач оптимизации [1,2].
Суть генетического алгоритма заключается в кодировании каждого решения поставленной задачи его генотипом G = {g, g2 ,...gn}, где g, i e [l, и] значение конкретного гена. При этом проводится аналогия между решением и особью, живым организмом. Выбрав исходную популяцию как конечное множество генотипов особей P = {G,G2,...,Gm}, и последовательно применяя к ним генетические
94
НАУЧНЫЕ ВЕДОМОСТИ
Серия Экономика. Информатика. 2015 № 13 (210). Выпуск 35/1
операторы - отбор, мутацию и скрещивание можно добиться улучшения (оптимизации) значения целевой функции [3,4].
Для реализации генетического алгоритма, в первую очередь необходимо разработать формат представления хромосом. В контексте задачи нахождения границ карьера можно предложить следующее решение: форма любого допустимого (с учетом углов наклона) карьера представляется с помощью массива целых чисел. Каждый элемент такого массива показывает глубину карьера в текущем столбце трехмерной модели месторождения.
Пусть имеется трехмерная блочная модель месторождения PI х J х K, каждый элемент которой характеризуется числом (весом), показывающим чистую прибыль, получаемую в ходе его добычи, с учетом процентного содержания полезных элементов, себестоимости его выработки и рыночной стоимости полезных компонентов (1).
Pik ,i е [° l\j е [° j]k е [°K] (!)
Тогда ее можно охарактеризовать вектором X = {x, xn}, где n = I * J, в котором значение глубины столбца с координатами (ij), помещается в позицию xq, где q = i * I + j .
Этот массив является хромосомой, т.к. он полностью характеризует один индивид - одну конкретную форму карьера. Путем итеративного применения генетических операторов к набору таких индивидов (популяции) находится оптимальная форма поверхности карьера.
В качестве целевой функции для оценки качества формы карьера используется функция (2):
I J K
f(X) = ЕЕЕ Prn , k Z Xq, q = i * I + j (2)
i=° j=° k=°
Остановка работы алгоритма происходит, когда его выполнение перестает приводить к улучшению максимального значения функции приспособленности в популяции. Наступление этого момента определяется проверкой условия (3):
| max(f (Xk)) - max(f (X;-1)) |< e , (3)
где N - размер популяции, к - номер итерации алгоритма.
Предложенный алгоритм за конечное число шагов находит предельную форму границ карьера
[5,6].
Рис. 1. Блок-схема параллельного генетического алгоритма Fig. 1. Flowchart of parallel genetic algorithm
Для моделирования месторождения предлагается использовать параллельный генетический алгоритм, который хорошо накладывается на архитектуру больших гетерогенных распределенных
НАУЧНЫЕ ВЕДОМОСТИ
Серия Экономика. Информатика. 2015. №13 (210). Выпуск 35/1
95
вычислительных систем и позволяет равномерно разнести нагрузку по вычислительной системе, максимально эффективно используя многоядерные и гибридные вычислительные узлы.
В рамках популяции применяется однопопуляционная модель параллельного генетического алгоритма типа «Хозяин-подчиненный». Она заключается в том, что в рамках одной популяции функция приспособленности каждого индивидуума вычисляется в отельном потоке, что в итоге приводит к ускорению работы алгоритма [7, 8]. При этом один поток является главным, «хранителем» популяции и отвечает за работу генетических операторов, а ряд потоков-подчиненных только вычисляют функцию приспособленности.
Блок-схема данного алгоритма представлена на рисунке 1. На данной блок-схеме можно увидеть, что оценка хромосом рассчитывается параллельно друг от друга.
Реализация генетического алгоритма для гибридных вычислительных систем
Для реализации предложенного генетического алгоритма использовалась технология NVIDIA CUDA. Данная технология использует большое число отдельных нитей для вычислений, часто каждому вычисляемому элементами соответствует одна нить. Все нити группируются в иерархию -grid/block/thread (Рисунок 2).
Grid
Ыоск(0,0) Ыоск(0,1) Ыоск(0,п-1)
Ыоек(1,0) Ыоек(1,1) Ыоск(1,н-1)
Ыоск(т-1,0) Ыоск(т-1,1) Ыоск(т-1, н-1)
гт \ \
\ \
Block
thread(0,0) thread(0,l-l)
fJtread(k-lj 0) thread(k-1,1-1)
Рис. 2. Иерархия нитей в CUDA Fig. 2. The hierarchy of threads in CUDA
Верхний уровень - grid - соответствует ядру и объединяет все нити выполняющие данное ядро. grid представляет собой одномерный или двухмерный массив блоков (block). Каждый блок (block) представляет из себя одно/двух/трехмерный массив нитей (threads).
Основная вычислительная нагрузка алгоритма, описанного в данной статьи приходится на расчет функции приспособленности (2). Однако, в рамках одной итерации алгоритма операции вычисления данной функции для каждого индивидуума популяции независимы по данным. В связи с этим, применив технологию CUDA, можно вычислять эту функции для всех индивидуумов одновременно (насколько это позволяет максимальное количество потоков, которые способен инициировать графический ускоритель). Несложно определить, номер индивидуума, функцию приспособленности которого будет вычислять текущая нить с индексом threadIdx.x при размерности блока blockDim.x на blockIdx.x:
int actual_index = blockDim.x*blockIdx.x + threadIdx.x
Еще одну проблему составляет объем оперативной памяти графического устройства. Он не всегда позволяет хранить трехмерную модель месторождения полностью. Однако данная проблема
96
НАУЧНЫЕ ВЕДОМОСТИ
Серия Экономика. Информатика. 2015 № 13 (210). Выпуск 35/1
решается простым разбиением исходной модели на кубические блоки с небольшими перекрытиями, которые можно обсчитывать отдельно.
Реализация модуля визуализации
Модуль визуализации призван облегчить процесс анализа результатов, получаемых в ходе работы описанного в статье алгоритма. Он должен обеспечивать следующие функциональные возможности:
1. изменение масштаба модели
2. изменения точки наблюдения (вращения модели)
3. выбора нескольких способов отображения: сетка, сплошная поверхность.
4. загрузка файлов с исходными данным с расширением .txt, .dat
Проект интерфейса модуля представлен на рисунке 3.
Рис. 3. Макет интерфейса модуля визуализации Fig. 3. Layout module interface visualization
В соответствии с предъявляемыми требованиями в модуле визуализации можно выделить несколько функциональных блоков. Общая схема их взаимодействия приведена на рисунке 4.
Рис. 4. Схема взаимодействия функциональных блоков модуля визуализации Fig. 4. The scheme of interaction of the functional blocks visualization module
НАУЧНЫЕ ВЕДОМОСТИ
Серия Экономика. Информатика. 2015. №13 (210). Выпуск 35/1
97
Для разработки использовалась среда Microsoft Visual Studio 2010, в качестве библиотеки графических функций была выбрана OpenGL. Общий вид интерфейса модуля представлен на рисунке 5:
Рис. 5. Модуль визуализации Fig. 5. The visualization module
Тестирование подсистемы
Описанные в статье алгоритмы тестировались на нескольких блочных моделях месторождений с различными типами распределения полезных компонентов. Модель со случайным равномерным распределением генерировалась специально для тестов. Модель с ярко выраженным рудным телом создана на основе результатов моделирования и подсчета запасов Жайремского месторождения в Казахстане, опубликованных в работах [9, 10].
Для каждого алгоритма проводилась серия тестов, при которых фиксировался максимальный объем полученной прибыли, по результатам была построена таблица 1.
Сравнение качества работы алгоритмов на разных исходных данных Compare the quality of the algorithms on different source data
Таблица
Table
Модель Плавающий конус Генетический алгоритм
Модель со случайным распределением 2001251390, 94% 2122436327, 100%
Модель с ярко выраженным рудным телом 795695, 83% 954009, 100%
Из полученных данных можно сделать вывод, что генетический алгоритм превосходит по качеству алгоритм плавающего конуса.
На рисунке 6 показана работа модуля визуализации для одного из полученных результатов.
о о
Рис. 6. Визуализация результатов моделирования Fig. 6. Visualization of simulation results
98
НАУЧНЫЕ ВЕДОМОСТИ
Серия Экономика. Информатика. 2015 № 13 (210). Выпуск 35/1
Заключение
В данной статье была показана эффективность применения высокопроизводительных гибридных вычислительных систем для комплексного анализа формы карьеров открытых горных работ, нахождения оптимальных границ и визуализации полученных результатов.
Работа выполнена при финансовой поддержке РФФИ (код проекта 15-47-03029р_центр_а)
Список литературы
References
1. Lerchs H., Grossman I.F. Optimum design of open pit mines/H. Lerchs // Canadian Mining and Metallurgical Bulletin. 1965. - Vol.58. - № 633. - P. 47 - 56
Lerchs H., Grossman I.F. Optimum design of open pit mines/H. Lerchs // Canadian Mining and Metallurgical Bulletin. 1965. - Vol.58. - № 633. - P. 47 - 56
2. L. Caccetta, L.M. Giannini «An application of discrete mathematics in the design of an open pit mine», Discrete Applied Mathematics, Volume 21, Issue 1, September 1988, Pages 1-19
L. Caccetta, L.M. Giannini «An application of discrete mathematics in the design of an open pit mine», Discrete Applied Mathematics, Volume 21, Issue 1, September 1988, Pages 1-19
3. Ramazan S., Dagdelen K., Johnson T.B., 2005 - Fundamental tree algorithm in optimizing production scheduling for open pit mine design. Trans IMM (Section A: Mining Industry) vol. 114, A45-A54
Ramazan S., Dagdelen K., Johnson T.B., 2005 - Fundamental tree algorithm in optimizing production scheduling for open pit mine design. Trans IMM (Section A: Mining Industry) vol. 114, A45-A54
4. Рутковская Д., Пилиньский М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие системы, Горячая Линия Телеком, 2007
Rutkovskaya D., Pilin'skiy M., Rutkovskiy L. Neyronnye seti, geneticheskie algoritmy i nechetkie sistemy, Goryachaya Liniya Telekom, 2007
5. Петров Д.В., Михелев В.М. Моделирование карьеров рудных месторождений на высокопроизводительных гибридных вычислительных системах, Вестник Южно-Уральского государственного университета. Серия: Вычислительная математика и информатика. 2014. Т. 3. № 3. c. 124129.
Petrov D.V., Mikhelev V.M. Modelirovanie kar'erov rudnyh mestorozhdenij na vysokoproizvoditel'nyh gibridnyh vychislitel'nyh sistemah, Vestnik YUzhno-Ural'skogo gosudarstvennogo universiteta. Seriya: Vychislitel'naya matematika i informatika. 2014. T. 3. № 3. c. 124-129.
6. Петров Д.В., Михелев В.М. Решение задачи нахождения оптимальной формы карьеров с использованием параллельного генетического алгоритма, Промышленные АСУ и контроллеры, Москва 2014., № 10.с. 36-42.
Petrov D.V., Mikhelev V.M. Reshenie zadachi nahozhdeniya optimal'noj formy kar'erov s ispol'zovaniem parallel'nogo geneticheskogo algoritma, Promyshlennye ASU i kontrollery, Moskva 2014., № 10.s. 36-42.
7. Михелев В.М., Васильев П.В., Петров Д.В. Суперкомпьютеры, как средства моделирования граничных контуров карьеров рудных месторождений, Вопросы радиоэлектроники. Серия "Электронная вычислительная техника (ЭВТ)" Выпуск 1, Москва 2013., с. 5-10
Mikhelev V.M., Vasil'ev P.V., Petrov D.V. Superkomp'yutery, kak sredstva modelirovaniya granichnykh konturov kar'erov rudnykh mestorozhdeniy, Voprosy radioelektroniki. Seriya "Elektronnaya vychislitel'naya tekhnika (EVT)" Vypusk 1, Moskva 2013., s. 5-10
8. Петров, Д.В. Применение методов глобальной оптимизации для поиска предельных границ рудных месторождений / Д.В. Петров // Научные ведомости БелГУ. Серия Экономика. Информатика. - 2015. -№7(204). - выпуск 34/1. - С.73-77.
Petrov, D.V. Primenenie metodov global'noj optimizacii dlja poiska predel'nyh granic rudnyh mestorozhdenij / D.V. Petrov // Nauchnye vedomosti BelGU. Serija Jekonomika. Informatika. - 2015. -№7(204). - vypusk 34/1. -S.73-77.
9. Селифонов C.E. Агафонов В.А., Моргунова Т.В., Васильев П.В., Буянов Е.В. Компьютерная технология подсчета промышленных запасов рудных месторождений с использованием программы GEOBLOCK //Минеральные ресурсы Казахстана. 2000. т.12. №13. С.58-62
Selifonov C.E. Agafonov V.A., Morgunova T.V., Vasil'ev P.V., Bujanov E.V. Komp'juternaja tehnologija podscheta promyshlennyh zapasov rudnyh mestorozhdenij s ispol'zovaniem programmy GEOBLOCK // Mineral'nye resursy Kazahstana. 2000. t.12. №13. S.58-62.
10. Васильев П.В., Буянов Е.В. О методике совместной работы программ MapInfo и Geoblock по оконтуриванию и подсчету запасов рудных месторождений //Информационный Бюллетень ГИС Ассоциации. 2000. №2. С.32-33
Vasil'ev P.V., Buyanov E.V. O metodike sovmestnoy raboty programm MapInfo i Geoblock po okonturivaniyu i podschetu zapasov rudnykh mestorozhdeniy //Informatsionnyy Byulleten' GIS Assotsiatsii. 2000. №2. S.32-33