Р. Г. Стронгина. Ниж- ний Новгород: Изд-во Нижегородского университета, 2002, 217 с



Pdf көрінісі
бет46/151
Дата26.01.2022
өлшемі1,64 Mb.
#24342
түріСеминар
1   ...   42   43   44   45   46   47   48   49   ...   151
Байланысты:
Seminar 1

y
y
f
y
f
b
y
a
b
y
a
Q
y





=
. (5) 
Введем функцию  
 
)
,
(
min
)
(
2
1
1
1
2
2
2
y
y
f
y
f
b
y
a


=
. (6) 
Как следует из (5), решение исходной задачи (1) может быть полу-
чено  посредством  минимизации  одномерной  функции 
)
(
1
1
y
f
,  т.е. 
решения одномерной подзадачи 
 
]
,
[
min,
)
(
1
1
1
1
1
b
a
y
y
f


. (7) 
При этом каждое вычисление значения функции 
)
(
1
1
y
f
в точке y
1
 
представляет  собой  решение  новой  одномерной  подзадачи  (y
1
  фикси-
ровано) 


58 
 
]
,
[
min,
)
,
(
2
2
2
2
1
b
a
y
y
y
f


 (8) 
Предположим,  что,  решая  задачу (8) для  некоторого 
*
1
y
,  мы  уже 
провели решения аналогичных задач для 
1
y
 и 
1
y
 таких, что 
1
y
<
*
1
y

1
y
и 
1
y

1
y
<
δ
, где 
δ
>0 – некоторый параметр, задающий «меру бли-
зости» задач (8), соответствующих координатам 
1
y
 и 
1
y
. Предлагает-
ся начинать решение задачи (8) для 
*
1
y
 не с самого начала, а с некото-
рого  исходного  информационного  множества,  которое  строится  на 
основе  значений  целевой  функции,  полученных  при  оптимизации  од-
номерных  функций 
)
,
(
2
1
y
y
f
  и 
)
,
(
2
1
y
y
f
  и  рассматриваемых  как 
приближенные значения функции
)
,
(
*
2
1
y
y
f
Методология построения 
такого  множества  может  быть  различной.  Для  примера  рассмотрим 
один из способов его конструирования. 
В схеме характеристических алгоритмов в качестве информацион-
ного множества поиска рассматривается набор:  
 
)},
,
(
),...,
,
{(
k
k
k
z
y
z
y
1
1
=
ω
 (9) 
где 
i
y

k
i


1
,  являются  координатами  проведенных  испытаний,  а 
величины 
i
z

k
i


1
, – значениями минимизируемой функции в со-
ответствующих точках 
i
y
. В качестве такого начального информаци-
онного множества для задачи  
 
]
,
[
min,
)
,
(
*
2
2
2
2
1
b
a
y
y
y
f


 (10) 
можно выбрать множество  
 
)},
,
(
),...,
,
{(
*
*
*
*
*
k
k
k
z
y
z
y
2
1
1
2
=
ω
 (11) 
в котором  
 
i
i
i
i
y
y
y
y
y
y
y
y
2
1
1
2
2
1
1
2
+



=
)
/(
)
ˆ
)(
(
*
*
, (12) 
 
j
i
k
j
i
y
y
y
2
2
1
2

=


min
ˆ

 
i
i
i
i
i
i
i
i
z
y
y
z
z
y
y
z
+



=
)
ˆ
/(
)
ˆ
)(
(
*
*
2
2
2
2
 (13) 
 
)
ˆ
,
(
ˆ
i
i
y
y
f
z
2
1
=



 
59 
а величины 
,
,
,
k
i
z
y
i
i


1
2
 и 
,
,
k
j
y
j


1
2
 относятся к информацион-
ным множествам (9): 
 
)},
,
(
),...,
,
{(
k
k
k
z
y
z
y
2
1
1
2
=
ω
 
 
)},
,
(
),...,
,
{(
k
k
k
z
y
z
y
2
1
1
2
=
ω
 
полученным при решении одномерных задач (8) для 
1
y
 и 
1
y
 соответ-
ственно, причем пара 
k
i
i
z
y
ω

)
,
ˆ
(
2

Введение  информационного  множества (11) позволяет  заменить 
вычисление  значений  функции 
)
,
(
*
2
1
y
y
f
  в  точках 
k
i
y
i


1
2
,
*
  по-
строением приближенных величин 
*
i
z
, полученных на основе линей-
ной  аппроксимации (12), (13). Построив  информационное  множество 
(11), можно продолжить решение задачи (10) характеристическим ме-
тодом  оптимизации.  При  этом  метод  будет  вычислять  функцию 
)
,
(
*
2
1
y
y
f
 в меньшем числе точек по сравнению с ситуацией, когда он 
решает задачу (10) «с чистого листа», ибо в предложенной схеме алго-
ритм  обладает  апостериорной  информацией (11), т.е.  считает,  что  в 
точках 
k
i
y
i


1
2
,
*
значения уже известны.  
Вычислительные эксперименты, выполненные на классе сложных 
двухмерных функций [4], подтверждают эффективность предложенно-
го  подхода,  обеспечившего  существенное  сокращение количества по-
исковых  испытаний.  При  этом  наблюдается  рост  эффективности  при 
увеличении требуемой точности решения задачи. Параллельная реали-
зация, использующая асинхронные алгоритмы из [5], подтвердила тео-
ретические  результаты  относительно  ускорения,  достигаемого  при 
использовании  рассмотренной  рекурсивной  схемы  редукции  размер-
ности. 
Литература 
1.  Стронгин Р.Г. Численные методы в многоэкстремальных задачах. 
Информационно- статистический подход. М.: Наука, 1978. 
2.  Strongin R.G., Sergeyev Ya.D. Global optimization with non-convex 
constraints: Sequential and parallel algorithms, Kluwer Academic 
Publishers, Dordrecht, Netherlands, 2000. 


60 
3. Strongin R.G., Sergeyev Ya.D., Grishagin V.A. Parallel 
Characteristical Algorithms for Solving Problems of Global 
Optimization // Journal of Global Optimization,10, 1997. P. 185–206. 
4.  Гришагин  В.А.  Операционные  характеристики  некоторых  алго-
ритмов  глобального  поиска.  В  сб.:  Проблемы  статистической  оп-
тимизации. Зинатне, Рига, 1978. C. 198–206. 
5.  Sergeyev Ya.D., Grishagin V.A. Parallel asynchronous global search 
and the nested optimization scheme, Journal of Computational Analysis 
& Applications, 3(2), 2001. P.123–145. 
СПЕЦКУРС «ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ: 
ОСНОВЫ ПРОГРАММИРОВАНИЯ И КОМПЬЮТЕРНОГО МОДЕЛИРОВАНИЯ
»  
КАК ПРОДОЛЖЕНИЕ И РАЗВИТИЕ ЛИНИИ 
«
МОДЕЛИРОВАНИЕ
» 
В ПОДГОТОВКЕ 
УЧИТЕЛЯ ИНФОРМАТИКИ
 
А.Г. Деменев 
Пермский государственный педагогический университет 
Введение 
Применение суперкомпьютеров просто необходимо в ракето- и ав-
томобилестроении,  нефте-  и  газодобыче,  фармакологии,  биотехноло-
гии и других областях человеческой деятельности. Многие из послед-
них успехов фундаментальных исследований в физике, химии, биоло-
гии, которые существенно расширили горизонты наших знаний о ми-
ре, обеспечены компьютерным моделированием на суперЭВМ. Широ-
кое внедрение идей параллелизма и конвейерности в вычислительную 
технику  привело  к  значительному  пересмотру  всей  концепции  при-
кладного программирования.  
Технология  создания  сложных  компьютерных  моделей  требует, 
чтобы эксперт в данной проблемной области ставил перед программи-
стами задачу реализации их в виде программ для ЭВМ. С одной сто-
роны, требуются специалисты, умеющие так сформулировать задачу в 
своей области деятельности, чтобы она, в принципе, допускала эффек-
тивную  реализацию  на  современных  высокопроизводительных  ЭВМ. 
С  другой  стороны,  нужны высококвалифицированные программисты, 
свободно  владеющие  технологиями  разработки  параллельных  про-


 
61 
грамм.  Есть  основания  считать,  что  для  подготовки  таких  специали-
стов в требуемых количестве и качестве, следует знакомить наиболее 
талантливых  детей  с  основами  параллельных  технологий  еще  в  стар-
ших  классах  специализированных  школ.  А  это  означает,  что  нужны 
учителя информатики, готовые вести такую работу. 
Современный  выпускник  вуза  с  квалификацией  «Учитель  инфор-
матики» должен иметь достаточно четкие знания о параллельных вы-
числительных системах. В рамках подготовки бакалавров образования 
элементы этих знаний могут быть представлены в рамках дисциплины 
«Компьютерное  моделирование»,  а  при  получении  специальности 
«Учитель  информатики»  и  обучении  в  магистратуре – в  виде  различ-
ных спецкурсов.  
Спецкурсы, связанные с параллельными вычислениями, читаются 
в  Пермском  государственном  педагогическом  университете  с 1999 
года. Слушателями их становятся студенты последних курсов педаго-
гического университета, проходящие обучение с основным профилем 
«информатика». Знакомство с основами программирования и компью-
терного моделирования параллельных вычислительных систем осуще-
ствляется в рамках двух спецкурсов для студентов факультета инфор-
матики  и  экономики.  Для  студентов,  обучающихся  по  специальности 
«Учитель  информатики»,  автором  разработан  курс  «Параллельные 
вычислительные  системы».  Студентам,  получающим  ученую  степень 
магистра  и  квалификацию  «Учитель  информатики,  преподаватель 
высшей школы», адресован разработанный автором курс «Программи-
рование для параллельных вычислительных систем». Объем последне-
го из них в два раза больше, и содержание первого практически полно-
стью  включено  в  него.  Общий  материал,  используемый  при 
проведении  занятий  в  рамках  обоих  спецкурсов,  представлен  в 
разработанном автором учебном пособии [1]. 
Основные цели и задачи спецкурса 
Спецкурс нацелен на решение следующих проблем: 
•  подготовка  учителя  информатики,  готового  знакомить  учеников 
специализированных школ с основами параллельных технологий в 
рамках профильных курсов по информатике; 
•  углубление образования в области информатики;  


62 
•  развитие практических навыков в компьютерном моделировании, 
информационной культуры. 
Курс включает в себя как лекционную часть, так и лабораторную 
поддержку.  
В  лекционной  части  излагаются  основные  теоретические  понятия 
и  примеры  ПВС,  излагаются  типичные  подходы  при  программирова-
нии для таких систем. 
Чрезвычайно  важную  роль  в  курсе  играют  лабораторные  работы. 
При  их  выполнении  предусматривается  следующие  режимы  (один  из 
них или сочетание 
 по выбору преподавателя): выполнение расчетов 
«вручную» с заполнением всех необходимых таблиц для промежуточ-
ных результатов; проведение расчетов в среде, имитирующей ПВС. 
При  выполнении  лабораторных  работ  должен  предусматриваться 
следующий режим: проведение расчетов в среде, имитирующей ПВС. 
Работа  на  реальных  параллельных  компьютерах  не  обязательна,  но 
желательна, в первую очередь магистрантам, т.е. студентам, ориенти-
рованным  на  научную  деятельность  и  преподавательскую  работу  в 
вузах и специализированных школах. 
Иметь  доступ  к  нескольким  типам  параллельных  компьютеров –
 недешевое  удовольствие,  а  использовать  программы,  моделирующие 
ПВС, на персональных компьютерах могут позволить себе все. Можно 
рекомендовать,  например,  бесплатно  распространяемую  среду Multi-
Pascal [2]. 
Методологии  программирования  обычно  иллюстрируются  на 
сравнительно  несложных  задачах,  например,  требующих  реализации 
отдельных алгоритмов из области линейной алгебры, вычисления оп-
ределенных  интегралов  и  т.д.[3]  Все  это  можно  сделать,  используя 
компьютерное  моделирование  в Multi-Pascal. Так  как  разработка  па-
раллельных  программ  практического  уровня  сложности  представляет 
собой  многоэтапный  технологический  процесс,  то,  к  сожалению,  она 
не может быть продемонстрирована во всей полноте на таких задачах. 
В  силу  серьезной  ограниченности  аудиторного  времени  на  спецкурс, 
представляется разумным не ставить задачу разработки параллельных 
программ практического уровня сложности, а делать это в рамках кур-
совых и дипломных работ. 


 
63 
Содержание лекций  
Тема 1 – Введение  в  ПВС.  Представляется  важным  в  рамках  дан-
ной темы дать ответы на следующие вопросы: Что такое суперЭВМ? 
Зачем нужны суперкомпьютеры? Чем определяются перспективы раз-
вития  суперЭВМ?  Что  делается  в  России  по  развитию  суперкомпью-
терных  технологий?  Как  устроены  современные  высокопроизводи-
тельные  ЭВМ?  Как  классифицируются  компьютерные  архитектуры? 
Каковы  основные  концепции  архитектуры  высокопроизводительных 
вычислительных  систем?  Что  такое  конвейер?  Какие  процессоры  на-
зывают  суперскалярными?  Какие  процессоры  называют  векторными? 
Чем  различаются  векторные компьютеры между собой? Какая опера-
тивная память используется в современных ЭВМ? Что такое разделяе-
мая  память?  Что  такое  распределенная  память?  Как  связаны  между 
собой  элементы  параллельных  вычислительных  систем?  Что  такое 
кластеры  рабочих  станций?  Как  оценивается  производительность  вы-
числительных систем? 
Тема 2 – Основные  парадигмы  параллельного  программирования. 
В  рамках  данной  темы  освещаются  следующие  вопросы:  Каковы  ос-
новные  подходы  к  распараллеливанию  вычислений?  Как  реализуется 
параллелизм данных? Какой набор операций является базовым? Какие 
способы  векторизации  и  распараллеливания  программ  применяются, 
чтобы  оптимизировать  трудовые  затраты?  На  что  влияет  применение 
разных языков программирования? В чем различие и сходство между 
распараллеливанием  и  векторизацией  программ?  Как  реализуется  па-
раллелизм задач? Какие виды операционных систем используются на 
параллельных  вычислительных  системах?  На  каких  принципах  по-
строены распределенные ОС? 
Тема 3 – Программирование  систем  с  разделяемой  памятью.  В 
рамках данной темы дают ответы на следующие вопросы: Какие опе-
рационные  системы  применяют  на  мультипроцессорных  ЭВМ?  Что 
понимается под процессом? Как организуется взаимодействие процес-
сов?  Как  планирование  процессоров  влияет  на  производительность 
мультипроцессорной системы? Как в среде Multi-Pascal моделируются 
многопроцессорные компьютеры с разделяемой памятью? Как в Multi-
Pascal  реализуется  блокирующее  порождение  процессов  в  системах  с 

Достарыңызбен бөлісу:
1   ...   42   43   44   45   46   47   48   49   ...   151




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет