Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Алгоритм работы программы

Читайте также:
  1. CALL — Вызов подпрограммы
  2. I. Итоговая государственная аттестация включает защиту бакалаврской выпускной квалификационной работы
  3. I. Назначение и принцип работы зубофрезерных станков, работающих червячной фрезой
  4. I. Перед началом работы.
  5. I.1 Этапы работы над документом
  6. II. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ДЛЯ ВЫПОЛНЕНИЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ
  7. II. ОБЪЕМ ДИСЦИПЛИНЫ И ВИДЫ УЧЕБНОЙ РАБОТЫ (в часах)

Шаг 1. Постановка задачи

Шаг 1.1. Тип задачи.

Выбирается тип решаемой задачи: преобразование либо построение модели. Задача преобразования заключается в поиске полиномов преобразования параметров идеального элементы в параметры адекватного элемента, выполненного по монолитной технологии. Задача моделирования недоступна в данной версии программы.

Шаг 1.2. Файлы измерений.

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

Если файлы измерений уже созданы, то указываем в интерфейсе пользователя координаты файлов и переходим на Шаг 1.3., иначе переходим на Шаг 1.2.1.

Шаг 1.2.1 Создание файлов 1.

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

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

Шаг 1.2.2 Создание файлов 2.

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

На примере идеального конденсатора (элемент C):

Диапазон значений емкости конденсатора- 0.0.. 10пФ с шагом 0.1пФ. Для установки открываем диалог свойств элемента, задаем значение Lower=0.0, Upper=10, Value=0.1 и устанавливаем галочку перед Opt (отметить как варьируемый). Заданный диапазон включает 101 число вариантов набора параметров идеального элемента. Необходимо так же задать диапазон частот, например 0.01 – 4ГГц с шагом 0.2 ГГц. Диапазон включает 20 точек расчета. Общее число измерений равно 20х101 = 2020. Теперь создаем элемента Graph и размещаем на нем задачу измерения s-параметров данной схемы (=элемента).

На примере монолитного конденсатора (элемент TFCM):

Изменяемые параметры – геометрические величины длины и ширины конденсатора. В данном случае, чтобы база измерений была адекватна базе измерений идеального элемента, достаточный диапазон изменений для длины 0..120мкм, для ширины 0..120мкм. Под адекватностью баз надо понимать, что при выборке для каждого идеально элемента с его параметрами (емкость), должен быть эквивалент в базе монолитного элемента с соответствующими параметрами (длина, ширина). В общем случае база монолитного элемента должна быть больше базы идеального элемента и должна быть адекватна, что может привести к некоторым сложностям, потому что пользователь должен предварительно предполагать поведение монолитного элемента.

После настройки схемы 1 с идеальным элементом и схемы 2 с монолитным элементом, а так же после создания графиков вывода s-параметров для каждого из них, можно приступить к созданию файлов базы. Для этого нажимаем на кнопку ‘Получить с MWO’. В появившемся диалоге нажимаем кнопку ‘Обновить данные MWO’. Если мы создаем базу идеального элемента, то выбираем схему 1 и график 1, задаем файл результатов файл 1.

Все готово, нажимаем кнопку ‘Произвести расчет базы’. Программа отдает команду проведения моделирования при всех вариантах набора определяющих параметров элемента и на каждой частоте. Результаты записываются в файл измерений для каждого измерения. Файл представляет собой базу измерений, в некотором смысле, базу файлов формата типа s2p. Использование формата s2p не имеет смысла, поскольку это лишь запись, а не база. Кроме того, такие файлы были бы подобны файлу формату jpg, включающему 100 картинок, т.е. несовместимому.

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

Шаг 1.3.

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

Шаг 2. Настройка полиномов преобразования.

Для перехода к этому шагу необходимо переключиться на вторую вкладку ‘Требования и форма полинома’.

В данной реализации интерфейс настройки формы полиномов не задействован, поскольку не организованы интерфейсы передачи этих настроек класса модуля расчетов, расположенных в DLL библиотеке GAAProx.

Работа пользователя сводится к нажатию единственной кнопке ‘2. Применить настройки полинома’ и переходу к следующей вкладке (Шаг 3.).

После нажатия данной кнопки происходит выполнения процесса формирования задачи (Шаг 2.*).

Шаг 2.1 Параметры полиномов.

Восстановление функциональной зависимости параметров идеального и монолитного элементов выполняется с использованием полиномов преобразования.

На примере задачи преобразования идеального конденсатора:

Модель идеального конденсатора описывается единственной переменной – емкостью C. Модель конденсатора изготовленного по монолитной технологии может быть различной, но в качестве примера можно использовать элемент TFCM программа Microwave Office. Данный элемент кроме технологических параметров, обладает двумя определяющими – длина L и ширина W.

В общем случае необходимо найти два полинома описывающих зависимость L=f1(C) и W=f2(C). Функциональная зависимость строится на использовании множества мономов переменной C. В идеальном варианте, алгоритм оптимизации найдет параметры мономов, так что при подстановке любого значения C полиномы будут давать в качестве результата такие значения L и W, которые описывают такой монолитный элемент, чьи характеристики идеально совпадают с идеальным эквивалентом. Такой подход использования для каждой переменной собственного полинома является математически оправданным и наиболее логичным. Это позволяет наиболее полно восстановиться зависимость. Однако, в случае если есть некоторые предварительные требования, например, на форму конденсатора, то можно упростить поставленную задачу. В таком случаем, мы вводим некоторый коэффициент, описывающий отношений величин L и W. Теперь мы может искать зависимость, например, между C и L, а величину W находить исходя из коэффициента и значения L. В таком случае мы имеем единственный полином L=f1(C). Более того, нет необходимости вводить полинома вида L=f1(С,k) где k – заданный коэффициент, потому что введение константы, лишь изменяет коэффициенты мономов и не носит никого предопределенного математического смысла.

Для использования коэффициентов наиболее удобно задать их в рамках проекта настройки базы измерений. В схеме измерений необходимо использовать внутренние элементы среды моделирования, такие как формулы. Используя формулу можно записать следующее: L=изменяемая. W=L*0.5. А в параметрах элемента задается, что длина равна переменной L, ширина переменной W. Теперь следует задать диапазона и шаг для переменной L, как это делалось для переменных элементов. Такой подход позволяет решить задачу использования различных коэффициентов для сокращения ОДЗ решаемой задачи и возможному нахождению лучшего результата.

В настоящей версии программы не реализовано такое считывание переменных, поэтому применение коэффициентов невозможно.

Шаг 2.2 Инициализация полиномов.

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

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

В настоящей реализации, невозможна пользовательская настройка формы полинома, поскольку не реализован интерфейс взаимодействия. Используемый в программе полином фиксирован следующим видом:

A0+A1*x+A2*x^2+A3*x^(0.1,2.0)+A4*x^(2.0,4.0)+A5*x^(-1.0,0.0)+ +A6*x^(0.0,0.5)+A7*x^(2.0,2.5)+A8*x^(2.5,3.0)+A9*x^(3.0,3.5)+A10*x^(0.1,4.0)

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

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

Шаг 3. Решение задачи оптимизации

Задача оптимизации заключается в поиске такой функциональной зависимости, которая позволит правильно преобразовать любой идеальной элемент из базы измерений (совпадающей с тестовой выборкой) в монолитный эквивалент с заданными параметрами.

Правильность преобразования определяется размером ошибки преобразования.

Шаг 3.1. Инициализация функция оценки качества решения.

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

Ошибка соответствии матрицы s-параметров идеального элемента и матрицы монолитного эквивалента на заданной частоте:

По каждому из 4 s-параметров ошибка E0 вычисляется как E0=|Sид-Sмон| / Sид. Ошибка E1 соответствия двух матрицы вычисляется как сумма E0 каждого из s-параметров, деленная на 4.0, т.е. как средняя ошибка по каждому из s-параметров. Ошибка E2 соответствия двух элементов в заданном диапазоне частот вычисляется как средняя ошибка E1 матриц во всех частотных точках. Ошибка E3, равная ошибке использования полиномов преобразования, рассчитывается как средняя ошибка соответствия E2, полученная для каждого элемента из базы идеальных и полученного для него монолитного эквивалента.

Результирующая ошибка определяется как E3. Функция оценки возвращает данное значение, при оценке приспособленности решения генетических алгоритмов. Чем меньше значение ошибки, тем выше значение приспособленности особи, описывающей данный полином преобразования.

В случае если в базе нет информации о параметрах монолитного эквивалента с заданным набором параметров, то применяется интерполяция среди близких элементов для нахождения вероятных значений s-матрицы. Если же параметры полученного монолитного эквивалента выходят за границы базы измерений, то предполагается, что полином ‘выбрасывает’ неверные решения. Такое заключение делается исходя из того, что пользователь должен был создать адекватную базу. ‘Выбрасывание’ – нормальный процесс на первых этапах поиска решения, он означает, что в некоторых точках полином ведет себя неадекватно, т.е. неверно описывает функциональную зависимость. Когда происходит ‘выбрасывание’, то данному решению назначается большая ошибка, например 100000%. Такой простой механизм штрафов применим в данном случае.

Шаг 3.2. Запуска генетического алгоритм.

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

Приспособленность особи обратно пропорционально ошибке преобразования.

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

Процесс поиска решения продолжается до тех пор, пока пользователь не остановит его, либо алгоритм не ‘сойдется’ (полное однообразие популяции). Запуск алгоритма производится нажатие кнопки ‘Поиск’, завершение – нажатием кнопки ‘Стоп’.Лучше решение записывается в файл на диске компьютере, информация о значении минимальной ошибке выводится пользователю.

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

Шаг 4. Верификация результатов.

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

Полиномы можно получить, открыв файл на диске с координатами c:\polinom.txt. Файл содержит список всех полученных качественных решений в порядке возрастания, т.е. последние записи хранят информацию о лучших полиномах. Эти записи могут быть напрямую использованы в среде Microwave Office простым копированием. В каталоге examples папки программы лежат тестовые примеры для получения измерений и просмотра результатов.

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

 


Дата добавления: 2015-07-08; просмотров: 299 | Нарушение авторских прав


Читайте в этой же книге: Введение | Постановка задачи | Обзор Литературы | Анализ Задания | Описание файловой системы | Описание программы для пользователя | Тестирование программы |
<== предыдущая страница | следующая страница ==>
Описание алгоритмов программы| Описание реализации программы

mybiblioteka.su - 2015-2024 год. (0.011 сек.)