Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы научных исследований в электроэнергетике. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
1 Мб
Скачать
☆
или проекции окрестностей экстремумом функций
П
min
Э, max
П
, xxfy
на плос-
jj
21
кость осей
x и 2x .
1
2. Если два критерия эффективности имеют разные цели, то есть один должен быть минимальным, а другой максимальным, то их можно свести к одному критерию эффективности. Например, необходимо найти
значения факторов x, обеспечивающих минимальные энергозатраты про­цесса за смену Э и максимальную эксплуатационную производительность оборудования П. В этом случае целесообразно принять критерий эффек­тивности равный отношению энергозатрат к эксплуатационной произво­дительности – удельные энергозатраты (отнесённые к единице объёма вы­полненной работы)
Э
У
Э
Э
У
Так как
min
.
, то их отношение min
Э .
У
3. Если все критерии эффективности имеют одну цель, то есть стре­мятся либо к максимуму, либо к минимуму, то данные критерии эффек­тивности можно свести к обобщённому критерию эффективности, который обозначим Y
m
j
m
jj
11
j
pxfpyY
jj
maxmin
, (2.14)
где
y – j-ый критерий эффективности;
j
p – весовой коэффициент или вес j-го критерия эффективности;
j
m – количество критериев эффективности.
Целевая функция (2.14) представляет собой сумму целевых функций отдельных критериев эффективности, умноженных на весовые коэффици­енты. Таким образом, многокритериальная оптимизация сводится к одно­критериальной.
Весовой коэффициент (вес) конкретного критерия эффективности определяет его значимость для рассматриваемого объекта оптимизации. Весовые коэффициенты можно задать исходя из особенностей объекта оп­тимизации, или определить, например, методом экспертных оценок. Для весовых коэффициентов должно обязательно выполняться условие
.
11
p
j
mj
2.6.3. Математическое программирование
Теорию и методы оптимизации изучает специальная область матема­тики – математическое программирование. Различают следующие виды математического программирования:
- линейное программирование (целевая функция и ограничения – ли-
нейные);
51
- нелинейное программирование (целевая функция – нелинейная
и/или ограничения содержат нелинейные функции, факторы образуют подмножество конечномерного векторного пространства), нелинейное программирование подразделяется на два вида: выпуклое программирова­ние (целевая функция и допустимое множество – выпуклые) и целочис­ленное программирование (факторы являются целыми числами);
- дискретное программирование или комбинаторная оптимизация (факторы конечны, решение ищется только в дискретных целочисленных точках подмножества факторов);
- квадратичное программирование (целевая функция квадратичная и выпуклая, допустимое множество определяется линейными равенствами и неравенствами);
- параметрическое программирование (коэффициенты целевой функции и/или значения ограничений являются функциями, зависящими от некоторых параметров);
- динамическое программирование (сложные задачи решаются путём разбиения на более простые подзадачи);
- стохастическое программирование (входная информация имеет не­определённость).
Каждый вид математического программирования имеет свои мето­ды. Методы оптимизации можно разделить на два класса: аналитические и численные. Численные методы имеют более широкий круг решаемых за­дач и получили развитие благодаря широкому использованию компьюте­ров. Численные методы выпуклого программирования включают: прямые методы, методы первого и второго порядков. Существует программное обеспечение, позволяющее выполнять оптимизацию, для решения оптими­зационных задач могут быть применены такие программы, как Mathcad, MatLab, Microsoft Excel.
Из аналитических методов оптимизации широко известен классиче-
ский метод дифференциального исчисления. Его суть следующая.
Находят частные производные целевой функции
xxxfy ...,,,
и
21
n
приравнивают их к нулю, в результате получается система алгебраических уравнений
y
x
y
01
; 0
x
2
; …; 0
y
.
x
n
Для решения систем линейных алгебраических уравнений могут
быть использованы методы:
- Гаусса;
- Ричардсона;
- итераций. В программе Mathcad можно выполнить решение системы, вклю-
чающей до 50 линейных алгебраических уравнений.
52
Решение систем нелинейных алгебраических уравнений осуществля-
ется градиентными методами, методом Ньютона.
Для решения систем алгебраических уравнений на компьютере могут быть применены программные продукты: UMFPACK; SuperLU; TAUCS; PETSc; LASPACK; TAUCS; Aztec.
Равенство всех производных частного порядка нулю является необ­ходимым, но не достаточным условием экстремума, а поэтому необходимо вычислить значения целевой функции при значениях факторов, получен­ных в результате решения системы, и при значениях близких к ним, то
есть для i-го фактора
точках:
x , hxi
i
, hx
x необходимо вычислить целевую функцию в трёх
1
, где h – шаг приращения фактора. Условие экс-
i
тремума – минимальное или максимальное значение целевой функции при
xfy по сравнению со значениями
hxfy
.
При двухмерной оптимизации следует вычислить целевую функцию
, xxfy
при следующих сочетаниях факторов:
21
, xx ;
21
21, xhx ;
Если значение y, вычисленное при факторах ных четырёх, то в точке
21, xhx ;
, ;
hxx
21
, .
21
, xx , меньше осталь-
, xx целевая функция имеет экстремум.
21
hxx
21
Данный метод имеет ограниченность применения по следующим причинам: целевая функция должна быть непрерывной и дифференцируе­мой, не всегда есть возможность решения системы уравнений, после на­хождения оптимальных значений необходимо дополнительно проверить условие экстремума.
2.7. Алгоритмы
Реализация математических методов и исследование математических моделей объектов осуществляются по соответствующим алгоритмам.
Алгоритм – система точно сформулированных правил получения требуемого результата (выходной информации) с помощью входных дан­ных; последовательность действий (шагов), приводящих к решению зада­чи. В алгоритме с помощью расчетных формул, логических условий, кон­троля над достоверностью результатов и других средств отражаются логи­ка и способ решения задачи. Алгоритм не содержит ошибок, если он даёт правильные результаты для любых допустимых исходных данных; алго­ритм содержит ошибки, если приводит к получению неправильных ре­зультатов, либо не даёт результатов.
Следует подчеркнуть принципиальную разницу между алгоритмами вычислительного характера, преобразующими некоторые входные данные в выходные, и управляющими алгоритмами, называемыми ещё алгоритма­ми логического управления. Последние предназначены для взаимодейст-
53
вия с некоторым объектом управления и призваны обеспечить корректную выдачу управляющих воздействий в зависимости от складывающейся си­туации, отражаемой поступающими от объекта управления сигналами. В некоторых случаях алгоритм управления вообще не предусматривает окончания работы (например, поддерживает бесконечный цикл ожидания событий, на которые выдается соответствующая реакция), несмотря на это, являясь полностью правильным.
Формы представления алгоритмов:
- словесная, формульно-словесная, вербальная;
- схематическая (блок-схемы, структурограммы);
- псевдокод (формальные языки программирования).
Порядок решения линейных ОДУ при помощи преобразований Лап­ласа, приведённый в пункте 2.5.3 – формульно-словесная форма представ­ления алгоритма. Программа численного решения ОДУ, представленная в пункте 2.5.5 – псевдокод.
К алгоритмам предъявляется ряд следующих требований.
1. Дискретность – алгоритм должен представлять процесс решения задачи как последовательное выполнение некоторых простых шагов. При этом для выполнения каждого шага алгоритма требуется конечный отрезок времени, то есть преобразование исходных данных в результат осуществ­ляется во времени дискретно.
2. Детерминированность (определённость) – в каждый момент вре­мени, следующий шаг работы однозначно определяется состоянием систе­мы. Таким образом, алгоритм выдаёт один и тот же результат (ответ) для одних и тех же исходных данных. В современной трактовке у разных реа­лизаций одного и того же алгоритма должен быть изоморфный граф. С другой стороны, существуют вероятностные алгоритмы, в которых сле­дующий шаг работы зависит от текущего состояния системы и генерируе­мого случайного числа. Однако при включении метода генерации случай­ных чисел в список «исходных данных» вероятностный алгоритм стано­вится подвидом обычного.
3. Понятность – алгоритм должен включать только те команды, ко­торые доступны исполнителю и входят в его систему команд.
4. Завершаемость (конечность) – при корректно заданных исходных данных алгоритм должен завершать работу и выдавать результат за конеч­ное число шагов.
5. Массовость (универсальность) – алгоритм должен быть применим к разным наборам исходных данных.
6. Результативность – завершение алгоритма определёнными резуль­татами.
Можно выделить следующие виды алгоритмов:
- механические, детерминированные или жёсткие (например, алго­ритм работы машины), они задают определённые действия, обозначая их в
54
единственной и достоверной последовательности, обеспечивая тем самым однозначный требуемый или искомый результат, если выполняются те ус­ловия процесса, задачи, для которых разработан алгоритм;
- гибкие, к которым относятся стохастические (вероятностные) и эв­ристические; стохастический алгоритм даёт решение задачи несколькими путями или способами, приводящими к вероятному достижению результа­та; эвристический алгоритм использует различные разумные соображения без строгих обоснований;
- линейные, представляют собой наборы команд (указаний), выпол­няемых последовательно во времени друг за другом;
- разветвляющиеся, содержащие хотя бы одно условие, в результате проверки которого может осуществляться разделение на несколько парал­лельных ветвей алгоритма;
- циклические, предусматривающие многократное повторение одно­го и того же действия (одних и тех же операций) над новыми исходными данными; к циклическим алгоритмам сводится большинство методов вы­числений, перебора вариантов; цикл – последовательность команд (серия), которая может выполняться многократно до удовлетворения некоторого условия;
- вспомогательные (подчинённые) – заранее разрабатываемые и це­ликом используемые при разработке алгоритмов решения конкретных за­дач.
2.8. Технические и программные средства поддержки теоретиче-
ских исследований
2.8.1. Компьютеры
В современных условиях теоретические исследования выполняются с использованием компьютеров: персональных (настольных и портатив­ных), серверов и суперкомпьютеров.
Компьютер – программируемый цифровой обработчик информации, представляющий собой совокупность различных устройств, объединенных в единую систему, реализующий все основные информационные процес­сы. Компьютер – программно-управляемое устройство для функциониро­вания, которого помимо технических (аппаратных) средств необходимо располагать программным обеспечением – совокупностью программ, обеспечивающих работу компьютера и выполнение им заданных функций. Так как компьютеры изначально создавались для выполнения вычислений (computer – вычислитель), то и в настоящее время их называют электрон­но-вычислительными машинами (ЭВМ).
Конфигурацией компьютера называют фактический набор его ком­понентов, которые можно разделить на две группы устройств.
55
1. Системные (центральный процессор, математический сопроцес­сор, оперативное запоминающее устройство (ОЗУ), постоянное запоми­нающее устройство (ПЗУ), адаптеры, контроллеры).
2. Периферийные или внешние (устройства внешней памяти, управ­ления, ввода и вывода информации), которые подключаются к интерфей­сам системных устройств.
В конструкции компьютера также имеются:
- блок питания, преобразующий переменный ток сети в постоянный ток низкого напряжения, подаваемый на электронные схемы компьютера;
- система воздушного охлаждения греющихся элементов.
Основным функциональным блоком компьютера является материн-
ская или системная плата, на которой размещены:
- центральный процессор;
- математический сопроцессор чисел с плавающей запятой;
- вспомогательные устройства: генератор тактовых импульсов (ГТИ), счётчик времени, устройства контроля и защиты, микросхемы управления компонентами компьютера;
- внутренняя память (ОЗУ и ПЗУ);
- интерфейсные средства.
Архитектура современных компьютеров основана на магистрально­модульном принципе. Все компоненты компьютера соединяются между собой системной шиной, которая обслуживается контроллерами и слу­жебными устройствами (буфера, регистры, мосты), а также программной оболочкой (драйверами и операционной системой). Используемые в на­стоящее время шины отличаются по разрядности, способу передачи сигна­ла (последовательные, параллельные), пропускной способности, количест­ву и типу поддерживаемых устройств, а также протоколу работы. Шины могут быть синхронными (осуществляющими передачу данных по такто­вым импульсам) и асинхронными (осуществляющие передачу данных в произвольные моменты времени), а также использовать различные схемы арбитража (то есть способа совместного использования шины несколькими устройствами).
Аппаратное подключение периферийного устройства к материнской плате на физическом уровне осуществляется через специальный блок – контроллер или адаптер (плату, карту). Для установки контроллеров и адаптеров на материнской плате имеются специальные разъёмы – слоты. Программное управление работой периферийного устройства произво­дится программой – драйвером.
Подключение к компьютеру различных внешних устройств осущест­вляется через специальные разъёмы – порты. Различают следующие пор­ты:
- последовательные порты или COM (communications port), которые
передают небольшие объёмы информации на большие расстояния;
56
- параллельные или LPT (line print terminal) порты, которые передают большие объёмы информации на небольшие расстояния, используются для подключения принтера, сканера;
- последовательные универсальные или USB (universal serial bus) порты, предназначенные для подключения различных внешних устройств, флеш-дисков, осуществляющие как передачу информации, так и питание внешних устройств.
Подключение компьютера к информационной сети осуществляется через сетевой адаптер (сетевую плату или карту), который интегрирован в материнскую плату.
Устройства внешней памяти относятся к периферийным устройствам и предназначены для хранения больших объемов информации в виде фай­лов, содержание которых может быть произвольным. Процессор имеет доступ к содержимому указанных файлов только в некоторой области ОЗУ, то есть после предварительной записи в ОЗУ. Любое устройство внешней памяти состоит из блока считывания, записи и удаления инфор­мации и носителя информации. В современных компьютерах используют­ся следующие устройства внешней памяти.
1. Накопители на жестких магнитных дисках или винчестеры пред­назначены для долговременного хранения различных программ и докумен­тов, они являются основными устройствами внешней памяти.
2. Накопители на гибких магнитных дисках предназначены для счи­тывания, записи и удаления информации с гибких магнитных дисков (дискет).
3. Флеш-память – разновидность полупроводниковой технологии электрически перепрограммируемой памяти. Благодаря компактности, де­шевизне, механической прочности, большому объёму, скорости работы и низкому энергопотреблению, флеш-память широко используется. Под­ключение съёмного носителя информации – флеш-диска производиться к USB-порту.
4. Оптические накопители осуществляют считывание, запись и уда­ление данных с оптических дисков: компакт дисков или CD (compact disk); цифровых видеодисков или DVD (digital video disk) при помощи лазера, генерирующего монохроматические электромагнитные колебания в опти­ческом диапазоне в виде узконаправленного пучка света. Оптические дис­ки являются съёмными носителями информации.
Устройства управления предназначены для воздействия пользовате­лем на компьютер, к ним относятся: манипуляторы «мышь», сенсорные экраны (мультитачи), трекболы, джойстики, сенсорные панели (тачпады).
Устройства ввода информации позволяют компьютеру или другой микропроцессорной системе получать информацию от пользователей или из окружающей среды. Основными устройствами ввода информации яв­ляются: клавиатуры, кнопочные панели, сенсорные экраны, дигитайзеры,
57
микрофоны, веб-камеры, кардридеры. Клавиатуры и кнопочные панели также выполняют функции управления.
Устройства вывода информации воспроизводят визуальную и ауди­альную информацию, позволяют пользователю воспринимать информа­цию из компьютера. К этим устройствам относятся: видеомониторы (дис­плеи), динамики, аудиоколонки.
Настольные персональные компьютеры используются в домаш­них условиях, офисах, учебных заведениях, научных и проектных органи­зациях, учреждениях здравоохранения, социальной сферы и культуры, диспетчерских пунктах. Настольный персональный компьютер представ­ляет собой комплекс устройств, включающий:
- системный блок;
- манипулятор «мышь» – устройство управления;
- устройства ввода (клавиатура и другие), предназначенные для вво-
да информации в компьютер пользователем;
- устройства вывода (видеомонитор и другие), представляющие
пользователю обработанную и хранимую компьютером информацию.
В системном блоке размещаются:
- системная плата;
- устройства внешней памяти;
- блок питания;
- система воздушного охлаждения.
На лицевой панели системного блока расположены дисководы нако­пителя на гибких магнитных дисках, оптического накопителя, USB-порты, кнопка включения, на задней панели находятся различные порты для под­ключения внешних устройств, выключатель, разъём блока питания.
В современных настольных персональных компьютерах реализован принцип открытой архитектуры, позволяющий пользователю самому ком­плектовать нужную ему конфигурацию компьютера и производить при не­обходимости её модернизацию.
Портативный персональный компьютер или лэптоп (lap – колени сидящего человека, top – верх) выполняет те же функции, что и настоль­ный персональный компьютер, отличается мобильностью, более низкой производительностью, меньшей емкостью памяти. Лэптопы представлены следующими устройствами:
- ноутбук (notebook – блокнот) – переносной персональный компью­тер, в раскладном корпусе которого объединены компоненты персонально­го компьютера: системная плата, устройства внешней памяти, система воз­душного охлаждения, дисплей, клавиатура, устройство управления (обыч­но сенсорная панель – тачпад), а также аккумуляторные батареи и блок пи­тания; ноутбук имеет различные разъемы для подключения внешних уст­ройств, встроенный кардридер;
58
- субноутбук или ультрапортативный ноутбук обладает малыми раз­мерами и массой, имеет такую же функциональность как ноутбук;
- нетбук (net – сеть, book – книга) – субноутбук с относительно невы­сокой производительностью, предназначенный в основном для выхода в Internet; имеет небольшую диагональ экрана (7–12 дюймов), низкое энер­гопотребление, малую массу и относительно невысокую стоимость;
- смартбук (smartbook) – субноутбук, построенный на аппаратной платформе того же класса, которая используется для смартфонов и Internet-планшетов; ключевая особенность следующая: в нетбуках и ноут­буках применяются процессоры семейства x86 или его потомка x86-64, в смартбуках – процессоры семейства ARM (advanced restricted instruction set machine – машина с сокращённым набором команд), также встречаются процессоры MIPS (microprocessor without interlocked pipeline stages – мик­ропроцессор без состояний задержки конвейера); для процессоров одина­ковой производительности ARM оказывается значительно экономичнее по сравнению с x86.
Сервер – специализированный компьютер, предназначенный для хранения банков и баз данных, управления работой информационных се­тей, представления своих вычислительных мощностей и ресурсов другим компьютерам. Аппаратно сервер представляет собой системный блок, в котором размещены все необходимые компоненты, отличается от настоль­ных персональных компьютеров большой емкостью памяти и более высо­кой производительностью. Консольный комплект (монитор, клавиатура, мышь) и участие человека необходимы серверам только на стадии первич­ной настройки, при аппаратно-техническом обслуживании и управлении в нештатных ситуациях (штатно, большинство серверов управляются уда­лённо). Для нештатных ситуаций серверы обычно обеспечиваются одним консольным комплектом на группу серверов.
Суперкомпьютер (supercomputer) или суперЭВМ – специализиро­ванная вычислительная машина, значительно превосходящая по своим техническим параметрам и скорости вычислений большинство сущест­вующих в мире компьютеров. Как правило, современные суперкомпьюте­ры представляют собой большое число высокопроизводительных серверов, соединённых друг с другом локальной высокоскоростной магистралью для достижения максимальной производительности. Суперкомпьютеры ис­пользуются во всех сферах, где требуется огромный объём сложных вы­числений, обработка большого количества данных в реальном времени, или решение задачи ищется простым перебором множества значений.
2.8.2. Виды и уровни программного обеспечения
Программа (компьютерная) – совокупность данных и команд, пред­назначенных для функционирования компьютера и его устройств с целью получения определённого результата. Конечная цель любой программы
59
управление аппаратными средствами. Программное обеспечение и техни­ческие средства в компьютере работают в неразрывной связи и в непре­рывном взаимодействии.
Пакет программ – набор взаимосвязанных модулей, предназначен­ных для решения задач определённого класса некоторой предметной об­ласти. Модуль – функционально законченный фрагмент программы, оформленный в виде отдельного файла с исходным кодом. Модули позво­ляют разбивать сложные задачи на более мелкие, они обычно формируют­ся таким образом, чтобы предоставлять программистам удобную для мно­гократного использования функциональность в виде набора функций, классов, констант. Модули объединяются в пакеты и, далее, в библиотеки. Удобство использования модульной архитектуры заключается в возмож­ности обновления (замены) модуля, без необходимости изменения осталь­ной системы. В большинстве случаев различные модули могут запускаться как на одном компьютере, так и на разных, для распределения нагрузки и создания распределенной архитектуры.
Исходный код или исходный текст – текст программы на каком-либо языке программирования или языке разметки, который может быть про­чтён человеком, в обобщённом смысле – любые входные данные для транслятора. Исходный код транслируется в исполняемый код целиком до запуска программы при помощи компилятора, или может исполняться сра­зу при помощи интерпретатора.
В современных компьютерах выделяют три основных вида про­граммного обеспечения:
- системное – комплекс программ, которые обеспечивают управле­ние компонентами компьютера, такими как процессор, оперативная па­мять, устройства ввода и вывода, сетевое оборудование, выступая как «межслойный интерфейс», с одной стороны которого аппаратура, а с дру­гой – приложения пользователя;
- прикладное – комплекс программ, предназначенных для выполне­ния определенных пользовательских задач и рассчитанных на непосредст­венное взаимодействие с пользователем;
- инструментальное – программы, обеспечивающие разработку, от­ладку и сопровождение создаваемых программ для компьютеров и про­граммируемых логических контроллеров (ПЛК).
Состав программного обеспечения компьютера называют программ­ной конфигурацией. Между программами, как и между физическими узла­ми и блоками существует взаимосвязь – многие программы работают, опи­раясь на другие программы более низкого уровня, то есть существует межпрограммный интерфейс. Возможность существования такого интер­фейса тоже основана на существовании технических условий и протоколов взаимодействия, а на практике он обеспечивается распределением про-
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]