Patent BR-112015019888-A2 (BR)
Title: alocação online com mínimos alvos
Inventor: DEBMALYA PANIGRAHI
IPC: G06Q30/08
Filed: 2014-03-13
Abstract: relatório descritivo da patente de invenção para "alocação online com mínimos alvos". antecedentes conforme a internet obtém ubiquidade e serviços baseados na web tornaram-se mais comuns na vida moderna, os sistemas online crescentemente têm se baseado em algoritmos para alocar recursos escassos para entidades competidoras. por exemplo, no campo de anúncios de internet, muitos algoritmos de alagação de recursos online convencionais foram desenvolvidos. tais algoritmos tentam designar fendas de anúncios em webpages dinamicamente geradas para anunciantes interessados (por exemplo, licitantes) os quais estão constritos por respectivos orçamentos de propaganda, de modo que o rendimento gerado pelas designações seja maximizado. a alocação de recursos escassos para entidades competidoras é também empregada em outros tipos de sistemas online. por exemplo, outro tipo sistema online que pode empregar um algoritmo de alocação de recursos online é uma loja online (por exemplo, website de e-comércio) que faz com que um conjunto de produtos relevantes de múltiplos vendedores seja emitido (por exemplo, exibido) em resposta a uma consulta de produto. seguindo este exemplo, os algoritmos de alocação de recursos online tradicionais podem ser avaliados para designar os vendedores e o conjunto de emissão de produtos responsivo à consulta de produto, onde a designação tenta maximizar o rendimento esperado gerado devido a vendas dos produtos. sumário descritas aqui estão várias tecnologias que referem-se a alocar solicitações com base em alvos de rendimento de provedores para um serviço online. as informações que indicam orçamentos de rendimento dos provedores para o serviço online e os alvos de rendimento dos provedores para o serviço online podem ser recebidas. os orçamentos de rendimento ajustam máximos para os rendimentos totais dos provedores e os alvos de rendimento ajustam os mínimos para os rendimentos totais dos provedores. assim, uma solicitação pode ser alocada para um provedor cujo orçamento de rendimento ainda não exauriu e ainda deve atender o seu alvo de rendimento. ainda, os valores de oferta dos provedores que correspondem à solicitação podem ser recebidos. os valores de oferta dos provedores podem também ser utilizados para alocar a solicitação. por exemplo, a solicitação pode ser alocada para o provedor que tem um alto valor de oferta, e também não atendeu o seu alvo de rendimento. consequentemente, um resultado de um algoritmo pode ser computado com base pelo menos em parte nos valores de oferta dos provedores e os alvos de rendimento dos provedores. a solicitação pode ser alocada para um provedor selecionado dos provedores com base no resultado do algoritmo. de acordo com várias modalidades, o algoritmo pode ser um algoritmo max-min. o algoritmo max-min pode otimizar uma cobertura fracionária mínima entre as coberturas fracionárias dos provedores. uma cobertura fracionária de um provedor específico é uma razão de um rendimento total gerado pelo provedor específico para um alvo de rendimento do provedor específico. de acordo com outras modalidades, o algoritmo pode ser um algoritmo híbrido, o qual pode otimizar uma soma dos rendimentos totais dos provedores com penalidades incluídas para os provedores que não atendam os seus alvos de rendimento. ainda, os rendimentos totais dos provedores podem ser constritos pelos orçamentos de rendimento dos provedores. exemplos do serviço online incluem anúncios online, um mercado de informações, e uma loja online. por exemplo, se o serviço online for anúncios online, então os provedores podem ser anunciantes e a solicitação pode ser uma fenda de anúncios (por exemplo, que corresponde a uma consulta de usuário, em uma webpage, disponível durante a execução de uma aplicação em um dispositivo móvel, etc.). ainda, se o serviço online for um mercado de informações, então os provedores podem ser provedores de dados e a solicitação pode ser uma consulta de dados. mais ainda, se o serviço online for uma loja online, então os provedores podem ser vendedores de produtos e a solicitação pode ser uma consulta de produto. deve ser notado, no entanto, que outros tipos de serviços online para os quais os recursos (frequentemente associados com consultas de usuário) podem alocados para provedores pretendem cair dentro do escopo das reivindicações anexadas a este. ainda, os alvos de rendimento dos provedores do serviço online podem ser recebidos em uma ou muitas formas. em um caso, uma entrada de usuário que especifica um alvo de rendimento para um provedor específico pode ser recebido. além disso ou alternativamente, um alvo de rendimento para um dado provedor pode ser especificado por acordos contratuais. em outro caso, um alvo de rendimento para um provedor específico pode ser baseado em considerações de fidedignidade, onde o alvo de rendimento representa um rendimento mínimo que dá ao provedor específico suficiente incentivo para permanecer em um dado sistema para o serviço online. o sumário acima representa um sumário simplificado, de modo a prover uma compreensão básica de alguns aspectos dos sistemas e/ou métodos aqui discutidos. este sumário não é uma visão geral extensa dos sistemas e/ou métodos aqui discutidos. este não pretende identificar elementos chave/críticos ou delinear o escopo de tais sistemas e/ou métodos. o seu único propósito é apresentar alguns conceitos em uma forma simplificada como um prelúdio para a descrição mais detalhada que é posteriormente apresentada. breve descrição dos desenhos figura 1 ilustra um diagrama de blocos funcional de um sistema exemplar que atribui solicitações aos provedores de um serviço online com base em alvos de rendimento dos provedores. figura 2 ilustra um diagrama de blocos funcional de um sistema exemplar que emprega um algoritmo híbrido para alocar as solicitações para os provedores. figura 3 ilustra um diagrama de blocos funcional de um sistema exemplar que aloca fendas de anúncios online para os anunciantes. figura 4 ilustra um diagrama de blocos funcional de um sistema exemplar que aloca consulta de dados para um mercado de informações. figura 5 ilustra um diagrama de blocos funcional de um sistema exemplar que aloca consultas de produto para loja online. figura 6 é um fluxograma que ilustra uma metodologia exemplar de alocar uma solicitação para um provedor selecionado com base em alvos de rendimento de provedores. figura 7 é um fluxograma que ilustra uma metodologia exemplar de implementar um algoritmo max-min para alocar solicitações para os provedores. figura 8 é um fluxograma que ilustra uma metodologia exemplar de implementar algoritmo híbrido para alocar solicitações para os provedores. figura 9 ilustra um dispositivo de computação exemplar. descrição detalhada várias tecnologias referentes à alocação de solicitações com base em alvos de rendimento de provedores para um serviço online são agora descritas com referência aos desenhos, em que números de referência iguais são utilizados para referir a elementos iguais através de tudo. na descrição seguinte, para propósitos de explicação, numerosos detalhes específicos são apresentados de modo a prover uma compreensão extensa de um ou mais aspectos. pode ser evidente, no entanto, que tal(is) aspecto(s) pode(m) ser praticado(s) sem estes detalhes específicos. em outros casos, estruturas e dispositivos bem conhecidos estão mostrados em forma de diagrama de blocos de modo a facilitar descrever um ou mais aspectos. ainda, deve ser compreendido que a funcionalidade que está descrita como sendo executada por certos componentes de sistema pode ser executada por múltiplos componentes. similarmente, por exemplo, um componente pode estar configurado para executar uma funcionalidade que está descrita como sendo executada por múltiplos componentes. mais ainda, o termo "ou" pretende significar um "ou" inclusivo ao invés de um "ou" exclusivo. isto é, a menos que especificado de outro modo, ou claro do contexto, a frase "x emprega a ou b" pretende significar qualquer das permutações inclusivas naturais. isto é, a frase "x emprega a ou b" é satisfeita por qualquer um dos seguintes casos: x emprega a; x emprega b; ou x emprega tanto a quanto b. além disso, os artigos "um" e "uma" como utilizados neste pedido e nas reivindicações anexas devem geralmente ser considerados significar "um ou mais" a menos que especificado de outro modo, ou claro do contexto a ser direcionado para uma forma singular. como aqui apresentado, solicitações podem ser alocadas com base em alvos de rendimento de provedores para um serviço online (por exemplo, anúncios online, loja online, mercado de informações, etc.). as informações que indicam os orçamentos de rendimento dos provedores para o serviço online e os alvos de rendimento dos provedores para o serviço online podem ser recebidas. os orçamentos de rendimento ajustam os máximos para rendimentos totais dos provedores e os alvos de rendimento ajustam os mínimos para os rendimentos totais dos provedores. mais ainda, uma solicitação que é alocável para um dos provedores que tem um rendimento total gerado por meio disto que é menor do que um orçamento de rendimento correspondente pode ser recebida. ainda, os valores de oferta dos provedores que correspondem à solicitação podem ser recebidos. um resultado de um algoritmo pode ser computado com base pelo menos em parte nos valores de oferta dos e nos alvos de rendimento dos provedores. o algoritmo pode ser um algoritmo max-min ou um algoritmo híbrido. a solicitação pode ser alocada para um provedor selecionado dos provedores com base no resultado do algoritmo. referindo agora aos desenhos, a figura 1 ilustra um sistema 100 que atribui solicitações 102 para provedores de um serviço online com base em alvos de rendimento dos provedores. o sistema 100 includes um sistema de alocação 104 que aloca as solicitações 102 para n provedores, a saber, um provedor 1 106, ..., e um provedor n 108, onde n pode ser substancialmente qualquer inteiro (coletivamente aqui referidos como provedores 106-108). os provedores 106-108 são licitantes para as solicitações 102. é contemplado que o sistema de alocação 104 possa ser utilizado para substancialmente qualquer tipo de serviço online que arbitra entre um conjunto de escolhas disponíveis (por exemplo, seleção dos provedores 106-108) de modo a satisfazer as demandas online, enquanto resolvendo objetivos duplos referentes ao rendimento e fidedignidade como parte de um protocolo de arbitração. o sistema de alocação 104 provê acesso a um recurso (por exemplo, as solicitações 102) que está constrito. uma quantidade de demanda para o recurso pode exceder um suprimento do recurso. consequentemente, o sistema de alocação 104 pode alocar o recurso para os provedores 106-108 em um modo que provenha acesso com base em considerações baseadas em fidedignidade e rendimento. o sistema de alocação 104 inclui um componente de interface 110 que recebe informações que indicam orçamentos de rendimento dos provedores 106-108 para um serviço online. os orçamentos de rendimento ajustam os máximos para os rendimentos totais dos provedores 106-108. mais ainda, o componente de interface 110 recebe alvos de rendimento dos provedores 106-108 para o serviço online. os alvos de rendimento ajustam os mínimos para os rendimentos totais dos provedores 106-108. o componente de interface 110 pode ainda receber as solicitações 102. por exemplo, uma solicitação (por exemplo, das solicitações 102) pode ser alocável a um dos provedores 106-108 que tem um rendimento total gerado por meio disto constrito por um orçamento de rendimento correspondente (por exemplo, a solicitação pode ser alocável para um provedor cujo rendimento total é correntemente menor do que o orçamento de rendimento correspondente para o provedor). mais ainda, o componente de interface 110 pode receber valores de oferta dos provedores 106-108 que correspondem às solicitações 102. por exemplo, uma solicitação pode ser alocada para um provedor cujo orçamento de rendimento ainda não está exaurido e ainda não atendeu o seu alvo de rendimento. seguindo este exemplo, a solicitação pode ser ainda alocada com base nos valores de oferta dos provedores 106-108 que correspondem às solicitações 102. o sistema de alocação 104 ainda inclui um componente de avaliação 112 que computa um resultado de um algoritmo com base pelo menos em parte nos valores de oferta dos provedores 106-108 para uma solicitação (por exemplo, das solicitações 102) e os alvos de rendimento dos provedores 106-108. exemplos do algoritmo que pode ser analisado pelo componente de avaliação 112 incluem um algoritmo max-min e um algoritmo híbrido como aqui apresentados em maiores detalhes. o sistema de alocação 104 também inclui um componente de atribuição 114 que aloca a solicitação (por exemplo, solicitação(ões) alocada(s)) para um provedor selecionado dos provedores 106-108 com base no resultado do algoritmo. o algoritmo max-min pode otimizar uma cobertura fracionária mínima entre as coberturas fracionárias dos provedores 106-108. uma cobertura fracionária de um provedor específico pode ser uma razão de um rendimento total gerado pelo provedor específico para um alvo de rendimento do provedor específico. um objetivo do algoritmo max-min pode ser atender os alvos de rendimento dos provedores 106-108; enquanto atendendo os alvos de rendimento, o algoritmo max-min pode maximizar o rendimento. mais ainda, o algoritmo híbrido pode otimizar uma soma dos rendimentos totais dos provedores 106-108 com penalidades incluídas para um subconjunto dos provedores 106-108 que cada tem um rendimento total que é menor do que um alvo de rendimento correspondente. os rendimentos totais dos provedores estão ainda constritos pelos orçamentos de rendimento dos provedores 106-108. assim, um objetivo do algoritmo híbrido pode ser maximizar o rendimento, porém penalidades podem ser introduzidas para o subconjunto dos provedores 106-108 cujos alvos de rendimento correspondentes não são atingidos. os provedores 106-108 (por exemplo, anunciantes, provedores de dados, vendedores, etc.) podem cada um ser constritos por um orçamento de rendimento correspondente dado offline para o sistema de alocação 104. ainda, as solicitações 102 (por exemplo, fenda de anúncios em webpages, consulta de dados, consultas de produto, etc.) podem chegar no componente de interface 110 do sistema de alocação 104 online. por estarem online, as solicitações 102 são desconhecidas com antecedência (por exemplo, o sistema de alocação 104 aloca as solicitações 102 conforme as solicitações 102 aparecem). cada solicitação da solicitação 102 pode ser alocada a um dos provedores 106-108 pelo sistema de alocação 104. tal alocação pode gerar uma quantidade de rendimento especificada sujeita à constrição que o rendimento total para um provedor não pode exceder o seu orçamento de rendimento. em cenários de maximização de rendimento convencionais, um objetivo de um algoritmo de alocação pode ser maximizar o rendimento. em contraste, o sistema de alocação 104 suporta a fidedignidade em alocação das solicitações 102 para os provedores 106-108. a fidedignidade é suportada por um parâmetro offline aqui referido como um alvo de rendimento para um provedor (por exemplo, dos provedores 106-108). o alvo de rendimento pode representar um rendimento mínimo para o provedor que dê um incentivo suficiente ao provedor para permanecer no sistema. o algoritmo de alocação online analisado pelo componente de avaliação 112 pode prover que cada um dos provedores 106-108 atenda tal alvo de rendimento correspondente mesmo a um custo de rendimento total diminuído através dos provedores 106-108. as alocações podem ser feitas pelo sistema de alocação 104 que atendem aos alvos de rendimento, enquanto favorecendo alocações que geram um maior rendimento. é contemplado que os alvos de rendimento dos provedores 106-108 podem ser de substancialmente qualquer fonte. de acordo com um exemplo, o componente de interface 110 pode receber uma entrada de usuário que especifica um alvo de rendimento para um dado provedor. a entrada de usuário, por exemplo, pode especificar uma quantidade de rendimento limite mínima que o provedor deseja dispender, uma fração mínima de um orçamento de rendimento que o provedor deseja dispender, etc. além disso ou alternativamente, um dado alvo de rendimento para um dado provedor pode ser especificado por um acordo contratual, por exemplo. seguindo este exemplo, o acordo contratual pode especificar um certo número de solicitações sendo atribuídas para um provedor (por exemplo, um acordo contratual entre uma troca de anúncio e um anunciante para um certo número de impressões sendo alocado para o anunciante, etc.). de acordo com outro exemplo, um alvo de rendimento para um provedor específico pode estar baseado em considerações de fidedignidade, onde o alvo de rendimento representa um rendimento mínimo que dá ao provedor específico um suficiente incentivo para permanecer em um dado sistema para o serviço online. deve ser apreciado, no entanto, que o assunto reivindicado não está limitado aos exemplos acima, e ao invés é contemplado que dado alvo de rendimento para um dado provedor possa ser calculado, inferido, determinado, etc. de substancialmente quaisquer outras informações. mais ainda, as técnicas de alocação aqui apresentadas são agnósticas quanto à fonte dos alvos de rendimento para os provedores 106-108. façamos d ser um conjunto de n provedores 106-108. façamos bi e ti serem o orçamento de rendimento e o alvo de rendimento respectivamente para o provedor i ? d, onde ti ? bi. um conjunto de entrada q de m solicitações 102 chega online no componente de interface 110, onde cada solicitação j ? q tem um valor de oferta bij correspondente a cada provedor i ? d. por exemplo, alguns dos valores de oferta podem ser 0; porém, o assunto reivindicado não está assim limitado. pode ser assumido que as solicitações 102 são independentemente e identicamente distribuídas (i.i.d.) de acordo com alguma distribuição de probabilidade que é desconhecida para o algoritmo. na chegada da solicitação j, o algoritmo aloca-a para um provedor (denotado d(j)). façamos q(i) ser um conjunto de solicitações que é alocado para o provedor i. um rendimento irrestrito ri gerado pelo provedor i ? d é dado por ?j?q(i)bij, enquanto um rendimento orçado (ou rendimento) p1 gerado pelo provedor i ? d é dado por min(ri, bi). uma cobertura fracionária ci para o provedor i ? d é dado pela razão como aqui notado, o componente de avaliação 112 pode empregar um algoritmo max-min ou um algoritmo híbrido. o algoritmo max-min pode ter diferentes objetivos se comparado com o algoritmo híbrido. por exemplo, o algoritmo max-min pode ter um objetivo para maximizar uma cobertura fracionária mínima (por exemplo, mini?d ci). em contraste, o algoritmo híbrido pode buscar maximizar um rendimento total enquanto penalizando os provedores 106-108 cujos rendimentos são menores do que os alvos de rendimento correspondentes. mais especificamente, um coeficiente de penalidade a pode ser utilizado no algoritmo híbrido para maximizar ?i?d(pi - a max(ti - pi, 0)). em contraste com o algoritmo max-min e o algoritmo híbrido, propostas convencionais frequentemente empregam um algoritmo max-sum que maximiza um rendimento orçado total (por exemplo, ?i?d pi). o algoritmo max-sum, no entanto, falha em levar em conta os alvos de rendimento dos provedores 106-108. se comparado com o algoritmo max-sum, o algoritmo max-min e o algoritmo híbrido podem alocar as solicitações 102 com base em considerações de fidedignidade (por exemplo, como uma função de alvos de rendimento dos provedores 106-108). mais ainda, o algoritmo max-min e o algoritmo híbrido podem resultar em rendimentos aumentados se comparados com o algoritmo max-sum; porém o assunto reivindicado não está assim limitado. o algoritmo max-min está agora descrito em maiores detalhes. o componente de avaliação 112 pode computar o resultado do algoritmo max-min com base pelo menos em parte dos valores de oferta dos provedores 106-108 e os alvos de rendimento dos provedores 106- 108 calculando prêmios para os provedores 106-108 com base em uma função de prêmio. de acordo com um exemplo, a função de prêmio pode exponencialmente decair dependendo das coberturas fracionárias dos provedores 106-108 e polinomialmente aumentar dependendo dos valores de oferta dos provedores 106-108. os prêmios podem ser proporcionais aos valores de oferta dos provedores 106-108 e inversamente proporcionais às coberturas fracionárias dos provedores 106-108. um prêmio para um provedor específico pode ser uma diminuição em um valor de prêmio restante para o provedor específico se a solicitação for alocada para o provedor específico. mais ainda, o componente de avaliação 112 pode identificar um prêmio máximo dos prêmios como calculados. o componente de atribuição 114 pode alocar solicitação para o provedor selecionado associado com o prêmio máximo. a função de prêmio ? pode ser definida como mais ainda pode ser definida. em um dado estágio do algoritmo max-min, um prêmio restante para um provedor é . assumindo que j é uma solicitação corrente, um prêmio rij pode ser definido como uma diminuição em um valor de se a solicitação j for alocada para o provedor i. assim, o algoritmo max-min pode ser empregado pelo sistema de alocação 104 para alocar a solicitação corrente j para o provedor que maximiza rij. por exemplo, a solicitação j pode ser alocada para o provedor i ? dj que maximiza rij, onde . com referência à figura 2, ilustrado está um sistema 200 que emprega o algoritmo híbrido para alocar as solicitações 102 para os provedores 106-108. novamente, o sistema 200 inclui o sistema de alocação 104, o qual ainda compreende o componente de interface 110, o componente de avaliação 112, e o componente de atribuição 114. o componente de avaliação 112 computa o resultado do algoritmo híbrido com base pelo menos em parte nos valores de oferta dos provedores 106-108 para uma solicitação (por exemplo, das solicitações 102) e os alvos de rendimento dos provedores 106-108. o algoritmo híbrido pode otimizar uma soma dos rendimentos totais dos provedores 106-108 com penalidades incluídas para o subconjunto dos provedores 106-108 que cada um tem um rendimento total que é menor do que um alvo de rendimento correspondente. como acima notado, o componente de avaliação 112 pode empregar o algoritmo híbrido para maximizar considere uma atenuação de programa linear (lp) do problema híbrido como abaixo apresentado (por exemplo, um lp primário). aqui, xij é uma fração da solicitação j que está alocada para o provedor i, e a?i é uma penalidade paga pelo provedor i. um lp duplo do lp primário está abaixo apresentado. o algoritmo híbrido pode ser um algoritmo de duas fases. o componente de avaliação 112 pode incluir um componente de inicialização 202 que resolve o lp duplo para determinar os valores de variável de lp duplo com base em uma primeira fração ? das solicitações 102. para a primeira fração ? das solicitações 102, o algoritmo híbrido pode resolver o lp duplo com bi e ti substituídos por ?bi e ?ti respectivamente. os valores de variável de lp duplo resultantes determinados pelo componente de inicialização 202 são zi* e wi*. consequentemente, o componente de inicialização 202 pode determinar os valores de variável de lp duplo com base nos alvos de rendimento dos provedores 106-108 e os orçamentos de rendimento dos provedores 106-108 por um conjunto de observações limitado. os valores de variável de lp duplo determinados pelo componente de inicialização 202 podem ser utilizados pelo componente de avaliação 112 para um restante das solicitações 102, onde o restante das solicitações 102 é subsequente à primeira fração das solicitações 102. de acordo com um exemplo, a primeira fração das solicitações 102 pode ser menor do que ou igual a um primeiro 1 por cento das solicitações 102; no entanto, o assunto reivindicado não está assim limitado. mais ainda, o componente de avaliação 112 pode calcular valores para os provedores 106-108 como uma função dos valores de oferta dos provedores 106-108 e os valores de variável de lp duplo computados pelo componente de inicialização 202. uma folga complementar pode ser utilizada para empregar os valores de variável de lp duplo computados no componente de inicialização 202 no lp primário. de acordo com um exemplo, para as solicitações que chegam subsequentemente (por exemplo, após uma primeira fração das solicitações 102), o componente de avaliação 112 pode identificar um provedor que satisfaz . assim o componente de avaliação 112 pode identificar um valor máximo dos valores como calculados. mais ainda, o componente de atribuição 114 pode alocar a solicitação para o provedor selecionado associado com o valor máximo. observando a figura 3, ilustrado está um sistema 300 que aloca fendas de anúncios online para anunciantes. o sistema 300 inclui uma troca de anúncio 302, a qual pode ainda incluir um dispositivo de computação 304 (por exemplo, um servidor). o dispositivo de computação 304 inclui o sistema de alocação 104 e um repositório de dados 306. o sistema de alocação 104 aloca fenda de anúncios para n anunciantes, a saber, um anunciante 1 308, ..., e um anunciante n 310, onde n pode ser substancialmente qualquer inteiro (coletivamente aqui referidos como anunciantes 308-310). as fendas de anúncios, por exemplo, podem corresponder a uma consulta de usuário, podem estar disponíveis durante a execução de uma aplicação em um dispositivo móvel, etc. o repositório de dados 306 inclui orçamentos de rendimento 312 dos anunciantes 308-310. mais ainda, o repositório de dados 306 inclui alvos de rendimento 314 dos anunciantes 308-310. ainda, o repositório de dados 306 inclui valores de oferta 316 dos anunciantes 308-310 para as fendas de anúncios. de acordo com o exemplo mostrado na figura 3, o serviço online pode ser anúncios online. assim, os provedores (por exemplo, os provedores 106-108 das figuras 1-2) são os anunciantes 308-310, e as solicitações (por exemplo, as solicitações 102 das figuras 1-2) são fendas de anúncios. o sistema de alocação 104 pode atribuir as fendas de anúncios em webpages dinamicamente geradas para os anunciantes 308-310, onde os anunciantes 308-310 estão constritos por respectivos orçamentos de rendimento 312. mais ainda, o sistema de alocação 104 pode alocar as fendas de anúncios para os anunciantes 308-310 com base nos alvos de rendimento 314 dos anunciantes 308-310. para efetuar a alocação das fendas de anúncios, o sistema de alocação 104 pode empregar o algoritmo max-min ou o algoritmo híbrido como aqui descrito. como exemplo, a troca de anúncio 302 pode receber uma solicitação para um anúncio para exibir durante uma fenda de anúncios de um servidor de anúncio (não mostrado); no entanto, o assunto reivindicado não está assim limitado. mais ainda, apesar de não mostrado, é contemplado que os anunciantes 308-310 possam comunicar rede(s) de anúncios, e a(s) rede(s) de anúncios podem estar em comunicação com a troca de anúncio 302; porém, o assunto reivindicado não está assim limitado. mais ainda, responsivo à alocação das fendas de anúncios para os anunciantes 308-310, os anúncios para as fendas de anúncios podem ser emitidos pela troca de anúncio 302. com referência à figura 4, ilustrado está um sistema 400 que aloca consultas de dados para um mercado de informações. o sistema 400 inclui um servidor 402 e n provedores de dados, a saber, um provedor de dados 1 404, ..., e um provedor de dados n 406, onde n pode ser substancialmente qualquer inteiro coletivamente aqui referido como provedores de dados 404-406. o servidor 402 ainda inclui o sistema de alocação 104 e o repositório de dados 306. o repositório de dados 306 ainda inclui os orçamentos de rendimento 312 dos provedores de dados 404-406, os alvos de rendimento 314 dos provedores de dados 404-406, e os valores de oferta 316 dos provedores de dados 404-406 para as consultas de dados. de acordo com o exemplo apresentado na figura 4, o serviço online é um mercado de informações. assim os provedores (por exemplo, os provedores 106-108 das figuras 1-2) são os provedores de dados 404-406. mais ainda, as solicitações (por exemplo, as solicitações 102 das figuras 1-2) são consultas de dados. em um mercado de dados e informações, o sistema de alocação 104 pode alocar as consultas de dados para os provedores de dados 404-406. os provedores de dados 404-406 podem vender dados ou serviços brutos utilizando dados gerados pelo usuário no mercado de dados e informações. em tal mercado, as consultas de dados (por exemplo, consultas recebidas de usuários) podem buscar informações ou conjuntos de dados específicos. as consultas de dados podem ser redirecionadas pelo sistema de alocação 104 para um entre o conjunto de provedores de dados 404-406 o qual era capaz de prover tais infor