на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Использование метода ветвей и границ при адаптации рабочей нагрузки к параметрам вычислительного процесса
p align="left">причём уровень a следует выбрать так, чтобы

.

Также применяется более сложная логика образования чисел zi. В первом варианте используют два соседних значения u(ti) и u(ti+1), и величина Zi строится по такому правилу:

Если пара u(ti) - a и u(ti+1) - a одного знака, то берётся следующая пара. Требуется определить вероятность при заданной логике. Будем считать, что P {u(ti)>a}=W и постоянная для всех ti. Тогда вероятность события равна по формуле событий A1Hv. Здесь Hv - это вероятность того, что v раз появилась пара одинакового знака

u(ti) - a; u(ti+1) - a. (9)

Поэтому вероятность события A1Hv

P{A1Hv}=W (1-W) [W2+(1-W)2]v.

Это - вероятность того, что после v пар вида (9) появилось событие A1. Оно может появиться сразу с вероятностью W (1-W), оно может появиться и после одной пары вида (9) с вероятностью

W (1-W) [W2+(1+W)2]

и т.д. В результате

или

.

Отсюда следует, что если W=const, то логика обеспечивает хорошую последовательность случайных чисел. Второй способ формирования чисел zi состоит в следующем:

Пусть

W=P {u(ti)>a}=1/2+?.

Тогда

P{Zi=1}=2W (1-W)=1/2-2?2.

Чем меньше ?, тем ближе вероятность P{Zi=1} к величине 1/2.

Для получения случайных чисел алгоритмическим путём с помощью специальных программ на вычислительной машине разработано большое количество методов. Так как на ЦВМ невозможно получить идеальную последовательность случайных чисел хотя бы потому, что на ней можно набрать конечное множество чисел, такие последовательности называются псевдослучайными. На самом деле повторяемость или периодичность в последовательности псевдослучайных чисел наступает значительно раньше и обусловливается спецификой алгоритма получения случайных чисел. Точные аналитические методы определения периодичности, как правило, отсутствуют, и величина периода последовательности псевдослучайных чисел определяется экспериментально на ЦВМ. Большинство алгоритмов получается эвристически и уточняется в процессе экспериментальной проверки. Рассмотрение начнём с так называемого метода усечений. Пусть задана произвольная случайная величина u, изменяющаяся в интервале [0,1], т.е. . Образуем из неё другую случайную величину

un=u [mod 2-n], (10)

где u [mod 2-n] используется для определения операции получения остатка от деления числа u на 2-n. Можно доказать, что величины un в пределе при имеют равномерное распределение в интервале [0,1].

По существу с помощью формулы (10) осуществляется усечение исходного числа со стороны старших разрядов. При оставлении далёких младших разрядов естественно исключается закономерность в числах и они более приближаются к случайным. Рассмотрим это на примере.

Пример 1. Пусть u = 0,10011101… = 1?1/2 + 0?1/22 + 0?1/23 + 1?1/24 + 1?1/25 + 1?1/26 + 0?1/27 + 1?1/28 + …

Выберем для простоты n=4. Тогда {u mod 2-4} = 0,1101…

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

При проверке качества псевдослучайных чисел прежде всего интересуются длиной отрезка апериодичности и длиной периода (рис. 3). Под длиной отрезка апериодичности L понимается совокупность последовательно полученных случайных чисел ?1, …, ?L таких, что ?i ?j при , , , но ?L+1 равно одному из ?k ().

Под длиной периода последовательности псевдослучайных чисел понимается T=L-i+1. Начиная с некоторого номера i числа будут периодически повторяться с этим периодом (рис. 3).

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

2.2 Точность метода Монте-Карло

Метод Монте-Карло применяется там, где не требуется высокой точности. Например, если определяют вероятность поражения мишени при стрельбе, то разница между p1=0,8 и p2=0,805 несущественна. Обычно считается, что метод Монте-Карло позволяет получить точность примерно 0,01-0,05 максимального значения определяемой величины.

Получим некоторые рабочие формулы. Определим по методу Монте-Карло вероятность пребывания системы в некотором состоянии. Эта вероятность оценивается отношением

,

где M - число пребываний системы в этом состоянии в результате N моделирований. Учитывая выражение для дисперсии величины M/N

и неравенство Чебышёва

, (11)

напишем

. (12)

Величина

есть ни что иное, как ошибка моделирования по методу Монте-Карло. С помощью формулы (11) можно написать следующую формулу для величины (12):

,

или

,

где p0 - вероятность невыполнения этой оценки. С помощью частоты M/N может быть получена оценка математического ожидания mx некоторой случайной величины X. Ошибка этой оценки

находится с помощью соотношения

.

Отсюда видно, что ошибка моделирования находится в квадратичной зависимости от числа реализаций, т.е.

. (13)

Пример 2. Допустим, что определяется математическое ожидание ошибки x поражения мишени. Процесс стрельбы и поражения моделируется на ЦВМ по методу Монте-Карло. Требуется точность моделирования ? = 0,1 м с вероятностью p = 1-p0 = 0,9 при заданной дисперсии ?x = 1 м. Необходимо определить количество моделирований N. По формуле (13) получаем:

.

При таком количестве реализаций обеспечивается ?=0,1 м с вероятностью p=0,9.

3. Метод ветвей и границ

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

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

Основное содержание этих методов составляют динамическое программирование и совокупность способов решения, объединённых общим термином - метод «ветвей и границ».

Комплексный подход по схеме ветвлений объединяет целый ряд близких комбинаторных методов, как-то: метод ветвей и границ, метод последовательного конструирования, анализа и отсева вариантов и др. Общая идея метода крайне проста. Множество допустимых планов некоторым способом разбивается на подмножество. В свою очередь каждое из подмножеств по этому же или другому способу снова разбиваются на подмножества до тех пор, пока каждое подмножество не будет представлять собой точку в многомерном пространстве. В силу конечности наборов значений переменных дерево подмножеств (схема ветвления) конечно.

Построение схемы ветвления есть ни что иное, как формирование процедуры перебора. Перебор может осуществляться различными способами. Сечение исходной допустимой области G0 гиперплоскостью на части G11 и G12 с последующим разделением G11 на G21 и G22 представляет собой построение дерева ветвлений с соответствующими подмно-жествами, как это показано на рис. 4.

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

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

Схема ветвления иллюстрируется решением обобщённой задачи одномерного раскроя (пример 3) с конкретными числовыми данными.

Пример 3.

Имеются заготовки длиной a1=18, a2=16, a3=13. Разрезая их на части, но не склеивая, можно получать детали длинной b1=12, b2=10, b3=8, b4=6, b5=5, b6=4. Стоимость каждой детали известна и в условных единицах численно равна их длине. Перечисленные детали представляют собой «портфель заказов», который желательно обеспечить в первую очередь. В том случае, если это невозможно, максимизируется стоимость получаемых деталей из заданной номенклатуры. Если же портфель заказов обеспечивается, необходимо максимизировать стоимость дополнительной продукции.

Величину будем называть дефицитом. Отрицательность дефицита ещё не означает существование варианта раскроя, при положительном дефиците раскрой невозможен. Это свойство может быть использовано для указания перспективности варианта. Так, если заготовка a2 раскраивается на b2 и b5, то независимо от комбинаций остальных отрезков раскрой невыполним, поскольку для оставшихся отрезков дефицит положителен.

Первые этапы приводимой ниже схемы ветвления, использующей комбинаторные отношения подмножеств вариантов, показаны на рис. 5. На первом этапе формируются разбиения первой группы отрезков (заготовок) на вторую группу (деталей) независимо от того, какой именно отрезок первой группы разрезается. Количество ветвей первого этапа можно вычислить лишь по рекуррентным соотношениям. Смысл подмножества {1, 2, 3} заключается в том, что один из отрезков первой группы в результате раскроя даёт один отрезок второй группы, один из оставшихся отрезков первой группы раскраивается на два отрезка второй группы из числа оставшихся и, наконец, последний отрезок первой группы делится на три части, образуя три отрезка второй группы. На втором этапе формируются все перестановки (с учётом порядка) элементов первого этапа. Скажем, вариант {2, 1, 3} означает, что именно первый элемент первой группы a1 разрезается на две части и т.д.

Очередной этап ветвления образуется фиксацией отрезков второй группы при указанном на предыдущем этапе числе частей, на которое разрезается первый элемент. Другими словами, формируем сочетания по числу разделений первого элемента первого множества на число элементов второго множества. В дальнейшем фиксируем отрезки второй группы при втором элементе первой группы и, наконец, при оставшемся элементе первой группы получаем варианты раскроя, всего 447 вариантов. В подробно описанной схеме ветвления в отличие от часто применяемых ни на одном этапе не используется конкретный числовой материал. Рекомендуется построить для этого же примера иную схему ветвления, начиная с третьего этапа, по следующему признаку: отрезки второй группы фиксируются при элементе первой группы, разрезаемом на меньшее число частей. Затем надо сравнить схемы. Нетрудно убедиться, что на каждом этапе ветвления осуществляется по регулярной процедуре, что позволяет запоминать лишь один вариант. Сравнение дефицитов предыдущего и последующего вариантов позволяет выделить перспективную ветвь. Окончательный результат имеет вид:

{(b2, b3), (b4, b5, b6), (b1)};

{(b1, b4), (b2, b5), (b3, b6)};

{(b1, b4), (b2, b6), (b3, b5)};

{(b1, b5), (b2, b4), (b3, b6)};

{(b2, b3), (b1, b6), (b4, b5)};

{(b1, b6), (b2, b4), (b3, b5)};

{(b2, b4), (b1, b6), (b3, b5)}.

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

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

4. Построение оптимальной последовательности заданий на обработку в узле вычислительной системы

4.1 Формализация вычислительного процесса и рабочей нагрузки

Узел вычислительной системы представляется в виде совокупности оборудования и программных компонент. Оборудование включает в себя: центральный процессор (CPU), внешнюю память (HDD), устройства ввода-вывода информации (IOI). Программными компонентами в вычислительной системе являются операционная система (OS) и множество задач, реализуемых по запросам рабочей нагрузки. Для моделирования рабочей нагрузки на узлах вычислительной системы необходимо провести декомпозицию каждого задания пакета рабочей нагрузки на отдельные программные модули (ПМj). Количество и типы программных модулей зависят от имеющегося состава оборудования и программных средств узла вычислительной системы. При этом можно выделить следующие типы программных модулей: ввода информации; обработки информации; реализация вычислений на центральном процессоре; вывода информации. Модуль обработки информации обращается к базе данных вычислительной системы.

Страницы: 1, 2, 3, 4



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.