← Últimos artigos
💻 computer science

Machine Learning-Based Waiting Time Prediction for Priority Queues with Preemptive and Non-Preemptive Service Rules

Este artigo demonstra que modelos de aprendizado de máquina, particularmente Redes Neurais Recorrentes, podem prever com precisão os tempos de espera em sistemas de filas de prioridade complexos e variantes no tempo utilizando apenas o comprimento da fila e a prioridade do cliente, superando métodos baseados em árvores em regras de serviço não preemptivas e diversas regras preemptivas.

Autores originais: Sahil Singh Bhandari, T.G. Deepak

Publicado 2026-06-29
📖 5 min de leitura🧠 Leitura aprofundada

Autores originais: Sahil Singh Bhandari, T.G. Deepak

Artigo original sob licença CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo

Imagine que você está parado em uma fila movimentada em um parque temático. Normalmente, a regra é "ordem de chegada, ordem de atendimento". Mas, neste artigo, os autores analisam uma fila mais complicada onde algumas pessoas são VIPs (Prioridade 1) e outras são clientes regulares (Prioridade 2). Os VIPs podem furar a fila, o que muda quanto tempo os outros terão que esperar.

A grande pergunta que os autores fizeram foi: Podemos usar um programa de computador (Aprendizado de Máquina) para adivinhar exatamente quanto tempo uma pessoa irá esperar, mesmo que a fila seja caótica e os VIPs continuem entrando na frente?

Aqui está uma divisão simples do que eles fizeram e do que descobriram, usando analogias do cotidiano.

As Três Regras da Fila

Os autores testaram seus programas de computador sob três diferentes "regras de trânsito" para como a fila funciona:

  1. A Regra do "Não Interromper" (Não-Preemptiva): Imagine um barbeiro cortando o cabelo de um cliente. Mesmo que um VIP chegue, o barbeiro termina o corte atual antes de mudar. A pessoa na cadeira permanece no lugar.
  2. A Regra do "Começar de Novo" (Preemptiva-Repetição): Imagine um chef cozinhando um bife. Se um VIP chega, o chef para de cozinhar o bife do cliente regular, joga o bife fora e começa um novo do zero para o VIP. Quando o VIP termina, o cliente regular tem que começar seu bife totalmente do zero.
  3. A Regra do "Retomar" (Preemptiva-Retomada): Imagine um personagem de videogame lutando contra um chefe. Se um VIP chega, a luta pausa. A "barra de vida" do cliente regular permanece exatamente onde estava. Quando o VIP sai, a luta recomeça exatamente de onde parou.

Os Dados: Uma Simulação de 200 Dias

Como eles não poderiam esperar 200 dias em uma fila real para testar, eles construíram uma simulação digital. Eles criaram um mundo artificial onde:

  • As pessoas chegam em momentos aleatórios (às vezes a fila está vazia, às vezes é uma multidão).
  • Existem dois tipos de pessoas: VIPs e Clientes Regulares.
  • Eles rodaram essa simulação por 200 "dias" para gerar uma quantidade massiva de dados sobre quem esperou quanto tempo.

O Concurso: Cinco Cérebros de Computador

Eles colocaram cinco tipos diferentes de "cérebros de computador" (modelos de Aprendizado de Máquina) uns contra os outros para ver qual poderia prever melhor o tempo de espera.

  1. Os Cérebros "Árvore" (GBM & Random Forest): Pense neles como uma equipe de detetives fazendo uma série de perguntas de "Sim/Não". "A fila está longa? A pessoa é um VIP?" Eles constroem uma árvore de decisão para adivinhar o tempo de espera. Eles também testaram uma versão onde forçaram os detetives a se dividirem em duas equipes separadas (uma para VIPs, outra para Regulares) para ver se isso ajudava.
  2. O Cérebro "Viajante do Tempo" (RNN): Este é uma Rede Neural Recorrente. Pense nisso como um cérebro que lembra a história da fila. Ele não olha apenas para o momento atual; ele lembra a sequência de pessoas que chegaram antes. Ele entende que "um VIP chegando logo após uma longa fila de Regulares" cria um efeito de ondulação específico.

As Grandes Descobertas

1. O Cérebro "Viajante do Tempo" Venceu a Corrida
A RNN (aquela que lembra a sequência de eventos) foi a vencedora clara. Ela foi a mais precisa ao prever tempos de espera, especialmente nas regras "Começar de Novo" e "Retomar", onde as interrupções acontecem.

  • Por quê? Porque esperar em uma fila de prioridade não é apenas sobre o que está acontecendo agora; é sobre o que aconteceu imediatamente antes e o que pode acontecer em seguida. A RNN é boa em ler essa história.

2. Os Cérebros "Árvore" Foram Bons, Mas Não Perfeitos
Os modelos de árvore de decisão (GBM e Random Forest) fizeram um trabalho decente, mas não foram tão afiados quanto a RNN. Eles tiveram um pouco mais de dificuldade quando a fila era interrompida com frequência.

3. Dividir a Equipe Não Ajudou Muito
Os autores tentaram forçar os modelos de árvore a terem equipes separadas para VIPs e Regulares (o "Split de Prioridade Forçado"). Eles pensaram que isso poderia ajudar os modelos a focar melhor.

  • O Resultado: Quase não fez diferença. Os modelos padrão já eram inteligentes o suficiente para entender a diferença entre VIPs e Regulares por conta própria. Dividi-los era como contratar dois chefs separados quando um bom chef poderia lidar com ambos os menus.

4. Os "Dois Mágicos" Inputs
Esta é a parte mais surpreendente. Geralmente, para prever um tempo de espera perfeitamente, você precisa saber tudo: a taxa exata de chegada, a velocidade do serviço, a hora do dia, etc.

  • A Descoberta: Os autores descobriram que os modelos podiam prever tempos de espera com muita precisão usando apenas duas informações:
    1. Quantas pessoas estão na fila agora? (Tamanho da Fila)
    2. A pessoa é VIP ou Regular? (Prioridade)
  • Mesmo sem saber a hora do dia ou a rapidez com que as pessoas costumam chegar, apenas saber o tamanho atual da multidão e o status da pessoa foi o suficiente para o computador fazer um ótimo palpite.

A Conclusão Final

O artigo mostra que você não precisa de um sistema super complexo com um milhão de pontos de dados para prever tempos de espera em uma fila de prioridade.

  • Se você quer a melhor precisão, use um modelo que lembre a sequência de eventos (como a RNN).
  • Se você quer simplicidade, pode obter resultados surpreendentemente bons apenas contando as pessoas na fila e verificando seu crachá de prioridade.

Isso é uma ótima notícia para sistemas do mundo real (como hospitais ou centros de atendimento telefônico) porque eles muitas vezes não têm dados perfeitos sobre taxas de chegada, mas sabem quantas pessoas estão esperando e quem é importante. Eles podem usar esses inputs simples para fornecer estimativas de tempo de espera precisas para as pessoas.

Afogado em artigos na sua área?

Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.

Experimentar Digest →