Eu direi de antemão que não posso fornecer uma boa resposta para sua pergunta (acho que talvez você possa obter um trabalho de pesquisa, se puder), mas acho que posso ajudar definindo o problema formalmente e indicando onde alguns das dificuldades estão.
Background . Deixe-me indicar claramente o modelo de corte de bolo. Desejamos dividir o intervalo entre jogadores. Cada jogador tem uma função de avaliação sobre os subconjuntos do bolo. Assumiremos que essa função é uma medida de probabilidade; é não-negativo e aditivo (para disjuntos , ) e . Uma solução para esse problema é um protocolo ou algoritmo que consulta os players e atribui partes do intervalo. Observe que os jogadores podem falsificar / mentir ao responder a perguntas.n i v i ( S ) S A , B ⊆ [ 0 , 1 ] v i ( A ∪ B ) = v i ( A ) + v i ( B ) v i ( [ 0 , 1 ] ) = 1[0,1]nivi(S)SA,B⊆[0,1]vi(A∪B)=vi(A)+vi(B)vi([0,1])=1
Alguns trabalhos terão restrições mais específicas; por exemplo , funções de avaliação são contínuas, lineares por partes ou constantes por partes.
Deixe as peças atribuídas aos jogadores serem . Muitas vezes queremos as seguintes propriedades de um protocolo:{S1,…,Sn}
- proporcionalidade : Todo jogador possui uma estratégia que garante que recebe um valor de pelo menos . (Da perspectiva de , ele recebe do valor total do bolo.)i(1/n)vi([0,1])i1/n
- inveja-liberdade : Todo jogador tem uma estratégia que garante que para todos os outros jogadores . (Cada jogador prefere sua própria peça à peça de qualquer outro jogador.)vi(Si)≥vi(Sj)j
Observe que inveja implica proporcionalidade.
Também existem propriedades "operacionais" que podemos desejar, como cortar em pedaços, tempo de execução polinomial (ou mesmo capacidade de computação / construtibilidade - não queremos usar o Axiom of Choice para selecionar um subconjunto do bolo! ), e assim por diante.
Perguntas específicas a serem feitas . Duas notas. Primeiro, qualquer resposta à sua pergunta resolverá o problema geral: comece dando o bolo inteiro ao jogador , depois deixe os outros jogadores chegarem online e aplique este protocolo de forma iterativa. Portanto, devemos esperar que esse problema seja mais difícil do que a configuração padrão de corte de bolo à qual o aplicamos.1
Segundo, sempre podemos resolver seu problema retirando todo o bolo de todos e usando um algoritmo conhecido para redistribuí-lo do zero. Portanto, a questão é apenas se existe uma maneira um pouco mais elegante de fazer isso. Eu acho que uma boa maneira de quantificar isso é "quando a redistribuição exige menos tempo ou menos cortes do que começar do zero; e / ou quando os jogadores conseguem manter uma parte significativa de sua fatia atual?"
- Suponha que tenhamos uma alocação livre de inveja para jogadores. Como redistribuímos para produzir uma alocação livre de inveja entre os jogadores ?nn+1
Eu suspeito que isso é muito difícil. O motivo é que encontrar uma alocação eficiente e sem inveja já é um problema difícil. Tanto quanto eu sei, protocolos conhecidos podem exigir um número ilimitado de cortes no bolo e são muito complexos. (Veja Brams e Taylor, um protocolo da divisão de bolos sem inveja , 1995.) Portanto, pode não haver nada melhor do que retirar todo o bolo de todos e redistribuí-lo aos agentes que usam Brams-Taylor.n+1
- Suponha que tenhamos uma alocação proporcional para ; como redistribuímos para obter uma alocação proporcional para ?nn+1
Eu acho que isso ainda é difícil (embora mais factível). Considere o caso em que cada jogador valoriza o bolo de maneira uniforme e cada jogador tem uma fatia de . Então, o que quer que o novo jogador faça exigirá reorganização entre todos. Aqui está outro caso ruim: suponha que o jogador tenha uma avaliação de exatamente para sua fatia, mas valorize a fatia do jogador em . Suponha que o jogador valorize sua própria fatia em exatamente , mas valorize a fatia do jogador em e assim por diante, com o jogador avaliando sua própria fatia em e a fatia do jogador às1/n11/n2(n−1)/n21/n3(n−1)/nn1/n1(n−1)/n . Agora o novo jogador chega. Não importa o que o novo jogador deseje, seu protocolo terá que reorganizar algo do jogador para o jogador , do jogador para o jogador , etc.2132
Uma referência pode ser Walsh, Online Cake Cutting , na Algorithmic Decision Theory 2011 (link em pdf). Mas acho que o jornal pressupõe que sabemos com antecedência o número de agentes que chegam e assume que os jogadores devem receber uma peça exatamente quando eles saírem (o que é antes do final do protocolo), portanto, isso não é realmente aplicável ao seu problema.
Uma maneira de redistribuir uma alocação proporcional que mantém a proporcionalidade é a seguinte. Que cada um dos jogadores atuais corte seu pedaço de bolo alocado em pedaços que ele mesmo valoriza. O jogador agora escolherá a melhor peça, de acordo com ele, de cada um dos cortes do jogador. É fácil mostrar que a alocação resultante também é proporcional.nn+1n+1n