Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Proposta de Trabalho Final
CMP189 – Algoritmos Geométricos
Carlos Eduardo Benevides Bezerra
Carlos Eduardo Benevides Bezerra
1 / 21
Defesa de Mestrado
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Problema

Dado um espaço bidimensional, através do qual estão
distribuídos avatares (pontos), dividí-lo em N regiões, de
forma que:

c(Si) seja o mesmo* para todas as regiões Ri, onde a função c(S)
calcula a carga de uma região com base no conjunto S de avatares
contidos nela
* Como geralmente não é possível que c(Si) seja exatamente o mesmo, o objetivo é
minimizar o seu desvio.

Dada uma divisão onde o c(Si) de uma região Ri desvia além
do tolerável, modificar a divisão de maneira que a carga de
Ri esteja dentro de um limite aceitável
Carlos Eduardo Benevides Bezerra
2 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Exemplo
Carlos Eduardo Benevides Bezerra
3 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Contexto


Em MMOGs, existem dezenas de milhares de
jogadores simultâneos
Solução: multi-servidor



O ambiente do jogo é dividido em partições, cada uma
administrada por um servidor
Cada jogador precisa de atualizações de estado do
ambiente do jogo (uso da banda de upload do server)
A carga sobre os servidores deve ser rebalanceada,
sempre que algum deles estiver sobrecarregado
Carlos Eduardo Benevides Bezerra
4 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Cálculo da carga em um MMOG


A carga da região depende da distribuição dos avatares dos jogadores
Cada jogador deve receber atualizações de estado de seu próprio avatar e
daqueles com quem interage
Carlos Eduardo Benevides Bezerra
5 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Possível solução

KD-Tree

Divisão inicial


A cada passo é definida uma linha de corte que divida o
conjunto de avatares restantes em dois conjuntos de carga
semelhante
Rebalanceamento



As coordenadas x e y das linhas de corte são modificadas
Feito primeiro no nível das folhas, partindo do corte entre a
região sobrecarregada e sua região vizinha
Percorre-se a árvore enquanto a divisão não satisfizer o
critério de balanceamento
Carlos Eduardo Benevides Bezerra
6 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Utilizando uma KD-Tree
Carlos Eduardo Benevides Bezerra
7 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Utilizando uma KD-Tree
Carlos Eduardo Benevides Bezerra
8 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Utilizando uma KD-Tree
Carlos Eduardo Benevides Bezerra
9 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Utilizando uma KD-Tree
Carlos Eduardo Benevides Bezerra
10 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Utilizando uma KD-Tree
Carlos Eduardo Benevides Bezerra
11 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Utilizando uma KD-Tree
Carlos Eduardo Benevides Bezerra
12 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Utilizando uma KD-Tree
Carlos Eduardo Benevides Bezerra
13 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Trabalhos Relacionados

(DE VLEESCHAUWER et al., 2005) Dynamic microcell assignment
for massively multiplayer online gaming. In: Proceedings of the
ACM SIGCOMM workshop on Network and system support for games,
NetGames

(AHMED; SHIRMOHAMMADI, 2008) A Microcell Oriented Load
Balancing Model for Collaborative Virtual Environments. In:
Proceedings of the IEEE Conference on Virtual Environments, HumanComputer Interfaces and Measurement Systems

(BEZERRA; GEYER, 2009) A load balancing scheme for massively
multiplayer online games. In: Massively Multiuser Online Gaming
Systems and Applications, Special Issue of Springer’s Multimedia
Tools and Applications
Carlos Eduardo Benevides Bezerra
14 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Células e regiões



Propõe-se uma divisão do espaço em células
estáticas de mesmo tamanho
As células são agrupadas, formando uma região,
que é então atribuída a um servidor
Para rebalancear a carga, as células são transferidas
entre regiões
Carlos Eduardo Benevides Bezerra
15 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Exemplo de divisão em células
Carlos Eduardo Benevides Bezerra
16 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Exemplo de divisão em células
Carlos Eduardo Benevides Bezerra
17 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Exemplo de divisão em células
Carlos Eduardo Benevides Bezerra
18 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Resultados Esperados


Reduzir o uso de memória para armazenamento da estrutura de
dados
Reduzir o tempo necessário para que os servidores executem o
rebalanceamento




Ao invés de reenviar a lista de todas as células que mudaram de região,
basta enviar o novo valor x ou y das linhas de corte que se moveram
Maior granularidade com células = células menores = maior tráfego
quando rebalanceando
Utilizando a KD-Tree, a linha que separa as regiões pode ter qualquer
coordenada x ou y.
Obter uma melhor divisão do espaço em alguns casos especias
que não seriam bem tratados com a baixa granularidade das
células
Carlos Eduardo Benevides Bezerra
19 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Caso especial
KD-TREE
Células
Carlos Eduardo Benevides Bezerra
20 / 21
CMP189 – Algoritmos Geométricos
Proposta de Trabalho Final: Particionamento dinâmico de espaço bidimensional
Cronograma

Revisão bibliográfica


Análise do problema e busca de soluções


De 01/06 a 14/06
Simulações e análise dos resultados


De 18/05 a 31/05
Implementação do(s) algoritmo(s)


Semana de 11/05 a 17/05
De 15/06 a 28/06
Escrita do artigo e montagem da apresentação

Deadline: 12/07
Carlos Eduardo Benevides Bezerra
21 / 21
CMP189 – Algoritmos Geométricos
Download

Proposta de Trabalho Final CMP189 – Algoritmos Geométricos