Добрый день! Уважаемые студенты, Вашему вниманию представляется дипломная работа на тему: «Reinforcement Learning for Cloud Resource Management»
Аннотация
Задача оптимизации использования вычислительных ресурсов в облаке интересна как потребителям, так и облачным провайдерам. Клиенты могут арендовать виртуальные машины, и облачный провайдер должен следовать некоторым обязательствам ’service level agreement’ (SLA). С другой стороны, датацентры стремятся к минимизации потребления электричества, чтобы уменьшить операционные расходы. Возникает задача консолидации виртуальных машин, используя физические. Слишком плотное размещение будет выливаться в слишком большое количество нарушений SLA, и клиенты будут не довольны предоставляемыми услугами. Поэтому, провайдер ставит перед собой задачу найти баланс между этими двумя составляющими.
В данной работе, мы рассматриваем стандартную постановку задачи консолидации виртуальных машин (vectorbin packing) и усложняем ее формулировку, приближая новую сформулированную задачу к настоящей облачной среде. Далее, мы описываем подход к ее решению, основанный на обучении с под-креплением с использованием глубинного обучения (Deep Q-network), а также альтернативные эвристические подходы.
Мы сравниваем реализованные эвристики с алгоритмом обучения с подкреплением и показываем, что в некоторых экспериментах алгоритм может уменьшить количество миграций в 2.5 раза, при таком же качестве консолидации, как и лучшая из реализованных альтернатив. Также, мы предоставляем opensource реализацию всех экспериментов и инфраструктуры для их проведения и дальнейших исследований.
1Keywords6
2Introduction6
3Related works8
4Goals9
5Problem statement9
5.1Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
5.2Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
6Solution12
6.1Reward system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
6.2Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15
6.3Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
6.4Deep Q-network . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
6.5Pseudocode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
7Implementation19
7.1Heuristics and VM’s . . . . . . . . . . . . . . . . . . . . . . . . . . .19
7.2Training details . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
8Framework motivation23
9Experiments23
9.1Experiment 1: Training environment . . . . . . . . . . . . . . . . . .24
9.2Experiment 2: increasing domain space . . . . . . . . . . . . . . . .26
9.3Experiment 3: another load type in training domain . . . . . . . . .27
9.4Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
References