Аппроксимация испытаний марочной прочности портландцемента с использованием генетического программирования
Характеристика строительных материалов на основе вяжущих гидратационного твердения. Дерево арифметического выражения. Операция кроссовера в генетическом программировании. Вывод популяции из локального оптимума. Модели, построенные на бутсрэп-выборках.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | русский |
Дата добавления | 18.01.2018 |
Размер файла | 197,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Северо-Кавказский филиал Белгородского Государственного Университета им. В.Г. Шухова
Аппроксимация испытаний марочной прочности портландцемента с использованием генетического программирования
Любимов С.В., аспирант
1. Постановка задачи
Начальной и определяющей стадией производства таких важнейших строительных материалов, как цемент, бетон, стекло, керамика, является приготовление смесей с заданными свойствами из разнородных по физико-химическим характеристикам исходных компонентов. Подобные технологические процессы распространены также в химической, металлургической, горнодобывающей, пищевой и других отраслях промышленности [3].
Важнейшей характеристикой строительных материалов и изделий на основе вяжущих гидратационного твердения, к которым относятся, прежде всего, портландцемент, является марочная прочность после 28 суток твердения при нормальных условиях либо физико-механические характеристики после тепловой обработки. Однако, важно знать не только эти свойства цементных систем, но и прочность в более ранние сроки.
2. Генетическое программирование
Генетическое программирование представляет один из видов эволюционных алгоритмов. С помощью методов генетического программирования решаются комбинаторные задачи, в которых необходимо подобрать не столько значение параметров, а скорее их расположение. Например, с помощью методов генетического программирования решаются задачи подбора расписания, подбор электрической схемы, подбор топологии нейронной сети [1]. В генетическом программировании, эволюционирует популяция программ. Каждая программа может быть представлена различными способами: деревом, стековым языком, языком списков (например, Lisp).
При представлении программы в виде дерева, вершинами являются функции, а их потомки-аргументами. Например, выражение будет иметь такое представление (Рис. 1):
Рис. 1. Дерево арифметического выражения
Оператор кроссовера. Оператор скрещивания - предназначен для получения новых решений, на основе тех, что находятся в данный момент в популяции. Получает на вход две или более хромосом, на выходе выдает комбинированное решение, которое построено на основе входных решений. Как и в генетических алгоритмах, операция кроссовера в генетическом программировании служит для получения потомка из двух и/или более предков. Самый распространенный вид кроссовера - subtreecrossover. На вход, получаем две программы-дерева и выбираем случайно (и независимо для каждого дерева) точку скрещивания. Затем создается потомок, в котором поддерево с корнем в точке скрещивания в качестве корня заменено на такое же поддерево из второго дерева (рис. 2). Оператор скрещивания должен контролировать размер получившегося потомка, что глубина дерева не превышала заранее установленную.
Оператор мутации. Предназначен для вывода популяции из локального оптимума. Он применяется с некоторой вероятностью к каждому решению полученному в результате операции скрещивания. Самый популярный вид мутации - subtreemutation. Алгоритм работы аналогичен алгоритму кроссовер аsubtreecrossover. Случайно выбирается точка мутации в дереве и заменяется на случайно сгенерированное дерево. Чаще всего это реализуют, как операцию скрещивания мутирующего дерева, с деревом сгенерированным оператором инициализации.
Рис. 2. Оператор кроссовера
Рис. 3. Оператор мутации
Операция вычисления. Данная операция применяется к решению для получения закодированного в решении значения. Например, для программы, представленной деревом на рисунке 4 является 7 (max(1+2,3+4)).
Рис. 4. Арифметическое выражение max (1+2,3+4)
Методика тестирование. В наличии имеются два журнала испытаний [4]. В первом содержится 18 испытаний, во втором 50. Каждое испытание содержит следующие параметры:
Процентное содержание C3S, C2S,C3A, C4AF.
Прочность на 7-е сутки
Прочность на 28 сутки
Задачей алгоритма является подбор функции, аппроксимирующей прочность на 28 сутки
Параметры алгоритма:
Размер популяции - 300
Вероятность мутации - 90
Максимальная глубина дерева - 4
Процент данных, участвующих в отборе - 75%
Максимальное количество поколений - 200
Ограничение по количеству поколений введено для того, чтобы система не “заучивала” тестовые данные.
Аппроксимация с учетом всех параметров. Результаты представлены на рис. 5-10.
Рис. 5.Результат аппроксимации (среднее значение ошибки 17%)
Рис. 6. Результат аппроксимации (среднее значение ошибки 6%)
Аппроксимация с учетом всех параметров и применением bootstrap. Для увеличения количества данных можно применить такой метод, как bootstrap. Метод формирования нескольких выборок данных того же размера, что и исходная генеральная совокупность, но с разными распределениями интересующей величины. Бутстрэп-метод был предложен в 1977 году Б. Эфроном. Он представляет разновидность рандомизированной обработки данных.
Предполагается, что множество данных содержит N наблюдений, образующих генеральную совокупность, из которой извлекаются выборки с возвращением объема N с равными вероятностями (1/N) извлечения каждого наблюдения. Всего извлекается K выборок, по каждой из них строится оценка интересующего параметра исходной исследуемой величины, а затем полученные оценки усредняются.
Ансамбли моделей, построенные на бутсрэп-выборках, во многих случаях позволяют улучшить точность классификации по сравнению с одиночными моделями. Кроме этого, если обучить одну и ту же модель на нескольких бутстрэп-выборках и усреднить полученные ошибки обучения, то средняя ошибка будет более достоверной оценкой точности модели.
Рис. 7. Результат аппроксимации (среднее значение ошибки составляет 15%)
Рис. 8. Результат аппроксимации (среднее значение ошибки составляет 5%)
Рис. 9. Результат аппроксимации (среднее значение ошибки составляет 22%)
Рис. 10. Результат аппроксимации (среднее значение ошибки составляет 15%)
Из диаграмм видно, что существенное влияние на точность аппроксимации оказывает информация о прочности на 7-е сутки, что подтверждается и эмпирическими формулами [4]:
,
где - прочность на 28 сутки, - прочность на 28 сутки, - содержание алита. Преимуществом данного метода то, что для его применения не требуются знания о процессах, происходящих в аппроксимируемом процессе. Необходимо лишь достаточное количество данных, для подбора аппроксимирующей функции. Так же в отличие от методов аппроксимации с помощью базы нечетких правил [5] и метода наименьших квадратов, результатом работы данного метода является формула, которая может использоваться в других алгоритмах.
Для улучшения качества аппроксимации данный метод может параллельно работать с базой правил, составленных из знаний эксперта.
Литература
строительный материал кроссовер программирование
1. Poli R., William B. Langdon, Nicholas F. McPhee J., Koza R. A Field Guide to Genetic Programming.
2. Сайт компании Base Group Labs: http://www.basegroup.ru/glossary/definitions/bootstrap/.
3. Яковис Л.М. Многокомпонентные смеси для строительства. Расчетные методы оптимизации состава - Л.: Стрройиздат, 1988.
4. Акиева Е.А. Прогнозирование марочной прочности цементных систем по результатам краткосрочных испытаний и минералогическому составу: Дисс. канд. техн. наук. спец. 05.23.05 / Е.А. Акиева. Научн. рук. Ш.М. Рахимбаев. Белгород: БГТУ им. Шухова, 2006.
5. Борисов В.В., Круглов В.В., Федулов А.С. Нечеткие модели и сети. - М.: Горячая линия - Телеком, 2007.
Размещено на Allbest.ru
...Подобные документы
Этапы работы генетического алгоритма, область его применения. Структура данных, генерация первоначальной популяции. Алгоритм кроссинговера - поиск локальных оптимумов. Селекция особей в популяции. Техническое описание программы и руководство пользователя.
реферат [1014,2 K], добавлен 14.01.2016Понятие арифметического выражения как записи математической формулы. Использование при записи арифметического выражения констант, переменных и скобок. Расстановка скобок в выражении по старшинству операций. Описание алгоритма, программа и ее реализация.
курсовая работа [602,6 K], добавлен 12.04.2015Общая характеристика объектно-ориентированного подхода в программировании, его основные свойства и принципы. Разработка программы для автоматизация деятельности кафе на основе объектно-ориентированного подхода, проектирования и реализации схемы данных.
курсовая работа [1,2 M], добавлен 22.01.2012Методы решения задач линейного программирования: планирования производства, составления рациона, задачи о раскрое материалов и транспортной. Разработка экономико-математической модели и решение задачи с использованием компьютерного моделирования.
курсовая работа [607,2 K], добавлен 13.03.2015Создание дискретной модели популяции и определение развития численности популяции в зависимости от начального числа особей. Составление карты поведения системы. Процесс проектирования информационных систем, реализующих новую информационную технологию.
дипломная работа [1002,8 K], добавлен 09.10.2013Развитие технологии и языков программирования. Редактирование исходных данных (вставка, удаление, замена) с внесением соответствующих изменений в бинарное дерево. Поиск информации о товарах по заданному ключу с использованием бинарного дерева.
курсовая работа [1,2 M], добавлен 16.09.2016Решение задач синтаксического анализа простой программы. Алгоритм нахождения синтаксических ошибок в ее тексте. Вывод данных о местоположении ошибки. Проектирование программы анализа арифметического выражения и методы проверки его на сумму или разность.
курсовая работа [2,6 M], добавлен 01.07.2011Первые работы по симуляции эволюции. Основные понятия генетических алгоритмов. Постановка задачи и функция приспособленности. Инициализация, формирование исходной популяции. Выбор исходной популяции для генетического алгоритма, решение задач оптимизации.
курсовая работа [714,1 K], добавлен 31.03.2015Обзор методов и подходов решения поставленной задачи аппроксимации логического вывода экспертной системы. Разработка и описание метода сетевого оператора для решения данной задачи. Разработка алгоритма решения. Проведение вычислительного эксперимента.
дипломная работа [1,5 M], добавлен 23.02.2015Общие сведения о микроконтроллерах AVR, их основные параметры. Функции термометра, реализованного на микроконтроллере AVR. Порядок программирования микроконтроллера с использованием программы на языке С. Передача данных сом-порт, вывод значений на ЖКИ.
курсовая работа [35,8 K], добавлен 08.04.2010Особенности моделирования биологических систем с использованием программы "AnyLogic". Влияние различных факторов на популяции жертв и хищников. Принципы имитационного моделирования и его общий алгоритм с помощью ЭВМ. Анализ результатов моделирования.
курсовая работа [922,2 K], добавлен 30.01.2016Выбор кривой разгона, ее аппроксимация апериодическим звеном первого порядка с запаздыванием. Поиск соотношения угла наклона, оптимальных настроек регулятора, передаточной функции замкнутой системы. Моделирование АСР с использованием программы 20-sim.
контрольная работа [630,5 K], добавлен 11.05.2012Рабочая среда Visual Basic (VB) и ее основные компоненты. Ввод и вывод данных в VB. Объявление переменных и констант в программе. Создание и работа с процедурами и функциями, их виды. Организация ветвления в VB. Использование циклов в программировании.
практическая работа [502,5 K], добавлен 26.10.2013Описание принципа работы генетического алгоритма, проверка его работы на функции согласно варианту на основе готовой программы. Основные параметры генетического алгоритма, его структура и содержание. Способы реализации алгоритма и его компонентов.
лабораторная работа [20,2 K], добавлен 03.12.2014Программа реализации генетического алгоритма, использование визуальной среды программирования. Руководство пользователя, листинг программы. Возможность ввода параметров: объем популяции, число поколений, коэффициент скрещивания и мутации, число городов.
курсовая работа [2,9 M], добавлен 20.08.2009Основная цель технологии СОМ (объектная модель компонентов) - обеспечение возможности экспорта объектов. Объектно-ориентированное программирование и его место в программировании. Принципы и применение описаний информационных систем (UML и аналоги).
курсовая работа [698,3 K], добавлен 09.12.2013Построение математической модели. Выбор, обоснование и описание метода решений прямой задачи линейного программирования симплекс-методом, с использованием симплексной таблицы. Составление и решение двойственной задачи. Анализ модели на чувствительность.
курсовая работа [100,0 K], добавлен 31.10.2014Анализ возможных подходов к созданию web-приложения с использованием программирования Java и CGI. Разработка структуры базы данных и реализация полученной модели в рамках СУБД. Обеспечение диалога CGI-программы с пользователем, используя браузер.
курсовая работа [310,9 K], добавлен 07.08.2011Методы арифметического кодирования. Основные функции программ, реализующие алгоритмы кодирования по методам Хаффмана, Голомба, Фибоначчи и Элиаса. Разработка программно-аппаратных средств оптимального арифметического кодирования и их экономический расчет.
дипломная работа [1,1 M], добавлен 26.05.2012Аппроксимация эмпирических данных линейной и квадратичной зависимостью. Теория корреляции: расчет коэффициентов детерминированности. Построение алгоритма и вычисление приближённых функций методом наименьших квадратов в среде программирования Turbo Pascal.
курсовая работа [766,6 K], добавлен 26.12.2011