Pular para o conteúdo
DispatchAtlas
Buscar

Comparação

DispatchAtlas é um conjunto de ferramentas para escalonamento e otimização em ambientes de computação distribuída, construído em torno de um catálogo curado e respaldado por citações de instâncias de problema — não apenas uma biblioteca de solvers, uma lista de benchmarks ou um simulador de rede.

O que distingue o DispatchAtlas

Nenhum par isolado abaixo é o diferencial — a combinação é. O DispatchAtlas une um catálogo curado e respaldado por citações de instâncias de otimização de escalonamento e edge–fog–cloud a um registro de solvers tipado por capacidade, comparação estatística não paramétrica embutida e um portal de inspeção público cujo construtor de suítes no navegador compõe suítes de benchmark prontas ou totalmente personalizadas a partir de todo o catálogo e as baixa como JSON, CSV ou um pacote sem backend. Cada peça existe em outro lugar; nenhum dos pares abaixo as reúne todas.

Os desafiantes mais próximos podem ser nomeados com honestidade. O jMetal oferece um arcabouço de estudo experimental com estatística não paramétrica, mas nenhum catálogo de instâncias de escalonamento nem portal de inspeção. O job-shop-lib e o TU/e Job Shop Scheduling Benchmark oferecem instâncias de escalonamento ricas, mas sem curadoria de citação por instância, estatística embutida ou portal. O WfCommons oferece geradores de fluxos de trabalho respaldados por traços, mas não pontua otimizadores nem executa estatística. O DispatchAtlas é o projeto que sustenta as cinco capacidades ao mesmo tempo.

Esta página é a declaração canônica desse posicionamento; outras superfícies apontam para cá em vez de reformulá-lo.

Como o DispatchAtlas se compara a plataformas afins

Estas tabelas comparam as capacidades de plataforma — o que cada projeto oferece — não o desempenho. A evidência de desempenho vem das exportações de análise estatística, nunca desta página. As tabelas são agrupadas em faixas de projetos comparáveis, mantendo as mesmas cinco colunas de capacidade. Cada par aponta para sua citação canônica; as fontes completas estão ao pé da página. ✅ fornecido, ⚠️ adjacente ou parcial, ❌ não fornecido.

O DispatchAtlas aparece uma vez, na primeira faixa, e sua linha ✅✅✅✅✅ vale em todas as faixas seguintes.

Plataformas e solvers de benchmark de escalonamento

PlataformaCatálogo curado de instâncias de escalonamentoEdge–fog–cloud como instâncias de benchmarkRegistro de solvers tipado por capacidadeComparação estatística embutidaPortal de inspeção público
DispatchAtlas
job-shop-lib⚠️⚠️
Job Shop Scheduling Benchmark⚠️
PyJobShop⚠️
schlably
OR-Tools CP-SAT

O OR-Tools CP-SAT é o solver exato de escalonamento dominante — o DispatchAtlas não compete com ele. Adaptadores exatos opcionais envolvem solvers como ele por trás de extras, e a matriz de capacidades registra a otimização exata como uma capacidade de adaptador: envolvido, não rivalizado. O job-shop-lib empacota instâncias clássicas junto a ambientes RL/GNN; a suíte da TU/e unifica ambientes JSP, FJSP e online-FJSP para métodos com e sem aprendizado; o PyJobShop oferece modelagem por programação por restrições avaliada em 9.000+ instâncias da literatura; o schlably é um arcabouço de experimentos de escalonamento por aprendizado por reforço profundo. Nenhum faz curadoria de proveniência de citação por instância, embute barreiras estatísticas nem publica um portal de inspeção — as marcas ⚠️ indicam instâncias entregues sem metadados de citação curados.

Arcabouços de benchmark de otimização geral e metaheurísticas

PlataformaCatálogo curado de instâncias de escalonamentoEdge–fog–cloud como instâncias de benchmarkRegistro de solvers tipado por capacidadeComparação estatística embutidaPortal de inspeção público
COCO⚠️
IOHprofiler
pymoo⚠️⚠️
jMetal / jMetalPy⚠️
Nevergrad⚠️⚠️⚠️
mealpy⚠️
NiaPy⚠️

O COCO avalia uma classe de problema diferente (funções contínuas de caixa-preta); sua família de suítes abrange variantes de um e dois objetivos, grande escala, inteiro-misto e com restrições, com um arquivo de dados público. O IOHprofiler avalia heurísticas iterativas e oferece um analisador web hospedado. O jMetal e o jMetalPy são incluídos justamente por não serem espantalhos: oferecem estudos experimentais com estatística não paramétrica, mas nenhum catálogo de escalonamento ou portal. O Nevergrad oferece gráficos de ranking e um módulo de experimentação e plotagem sobre centenas de otimizadores, mas não inferência não paramétrica. pymoo, mealpy e NiaPy oferecem coleções ricas de algoritmos e funções de teste sintéticas em vez de um registro tipado.

Simuladores fog e edge

PlataformaCatálogo curado de instâncias de escalonamentoEdge–fog–cloud como instâncias de benchmarkRegistro de solvers tipado por capacidadeComparação estatística embutidaPortal de inspeção público
iFogSim2⚠️
EdgeCloudSim⚠️
LEAF⚠️
YAFS⚠️
EdgeSimPy⚠️

Estes modelam redes edge–fog–cloud como simulações de eventos discretos (⚠️), não como uma suíte de benchmark sobre a qual um otimizador é pontuado. O EdgeCloudSim v5.0 roda sobre o núcleo atual CloudSim 7.0.0-alpha com novos tutoriais. O YAFS é o simulador fog em Python mais próximo em espírito das famílias de contínuo, e seus problemas de posicionamento são o que o DispatchAtlas reexpressa como instâncias de benchmark pontuadas; o EdgeSimPy é o simulador de gestão de recursos edge em Python mais recente.

Plataformas de simulação de nuvem e fluxos de trabalho

PlataformaCatálogo curado de instâncias de escalonamentoEdge–fog–cloud como instâncias de benchmarkRegistro de solvers tipado por capacidadeComparação estatística embutidaPortal de inspeção público
CloudSim / CloudSim 7G⚠️
WfCommons⚠️⚠️⚠️
WRENCH⚠️

Estes são simuladores e arcabouços de traço/gerador, não benchmarks de otimizadores — o mesmo enquadramento honesto que a faixa fog usa. O pipeline traço-para-gerador-para-benchmark do WfCommons é o análogo conceitual mais forte das ambições respaldadas por traços da plataforma, e é exatamente onde o DispatchAtlas é mais fraco hoje: um perfil sintético calibrado, a linha ⚠️ respaldada por traços na matriz de capacidades abaixo.

O Optuna é ferramenta complementar, não um par: é um ajustador de hiperparâmetros, então os hiperparâmetros dos solvers podem ser ajustados com ele, mas não oferece instâncias de escalonamento nem história de proveniência — por isso «por que não usar simplesmente o Optuna?» tem uma resposta de uma linha. Cite Optuna (Akiba et al., KDD 2019).

Como ler as marcas:

  • Catálogo curado de instâncias de escalonamento — um conjunto versionado e respaldado por citações de instâncias de problemas de escalonamento e permutação. Os pares de escalonamento oferecem instâncias mas não curadoria de citação por instância; os arcabouços de otimização oferecem problemas de teste sintéticos; os simuladores não oferecem catálogo de instâncias de otimização.
  • Edge–fog–cloud como instâncias de benchmark — problemas heterogêneos de posicionamento e comunicação expostos como instâncias de otimização. Os simuladores modelam redes edge–fog–cloud (⚠️), mas como simulações de eventos discretos, não como uma suíte de benchmark pontuada.
  • Registro de solvers tipado por capacidade — os solvers carregam objetivos, restrições e metadados de capacidade declarados. As bibliotecas metaheurísticas oferecem coleções ricas de algoritmos (⚠️), mas não um registro tipado voltado ao escalonamento.
  • Comparação estatística embutida — testes não paramétricos e tamanhos de efeito empacotados com o conjunto de ferramentas. COCO, IOHprofiler e jMetal oferecem ferramentas estatísticas dedicadas.
  • Portal de inspeção público — uma superfície de dados navegável e segura para o público. O COCO publica um arquivo de dados de workshop (⚠️); o IOHanalyzer oferece um analisador web hospedado.

O que o DispatchAtlas não fornece

Esta é a lacuna reversa honesta — cada item nomeia o par que tem o que o DispatchAtlas não tem, e reflete uma linha ❌ ou ⚠️ existente na matriz de capacidades abaixo.

  • Sem simulação de eventos discretos — os simuladores fog e de nuvem (CloudSim, iFogSim2, EdgeCloudSim, WRENCH) modelam dinâmicas de rede e plataforma passo a passo no tempo; o DispatchAtlas pontua otimizadores sobre instâncias em vez disso.
  • Sem geradores de chegada dinâmica ou reescalonamento on-line — a suíte da TU/e oferece ambientes online-FJSP; todo gerador incluído no DispatchAtlas é estático.
  • Sem ambientes de treinamento de agentes de aprendizado — job-shop-lib e schlably oferecem ambientes RL/GNN; as interfaces de aprendizado do DispatchAtlas são parciais.
  • Execução de campanhas em um único host — o Nevergrad executa grandes baterias de experimentos em paralelo; o DispatchAtlas executa modos sequencial, em threads, limitado e de repetição em um único host.
  • Um perfil sintético calibrado de traços — o WfCommons oferece geradores derivados de traços validados sobre arquivos reais de fluxos de trabalho; o DispatchAtlas inclui um único perfil sintético calibrado.

Fontes

Postura do DispatchAtlas

EixoPostura do DispatchAtlas
Contratos de domínioObjetos de escalonamento tipados, validação, proveniência, e sementes determinísticas são a fundação.
BenchmarksOs metadados do catálogo incluem caracterização, status de citação, classe de evidência, e hashes de conteúdo.
SolversAs linhas de base, adaptadores exatos opcionais, metaheurísticas, variantes de escalonamento, e a família de solvers NDSO compartilham metadados de registro.
Campanhas reproduzíveisAs campanhas declaram ids de execução, orçamentos, critérios de parada, saídas, e captura de ambiente.
AnáliseOs resumos estatísticos, tamanhos de efeito, figuras, e pacotes do portal são exportações determinísticas.
SiteAs páginas de docs e portal consomem pacotes de dados estáticos seguros-para-o-público.

Matriz de capacidades

Cada status é verificado contra os pacotes enviados e os pacotes do portal público nomeados na coluna de base: ✅ suportado hoje, ⚠️ parcial, ❌ ausente.

CapacidadeStatusBase
Contratos de domínio de escalonamento tipados com validação, proveniência, e sementes determinísticascontratos de problema, schedule, e hashing de dispatchatlas.core
Catálogo de benchmarks com métricas de caracterização quantitativasos registros de benchmark-catalog.json carregam caracterização por-instância
Inventário de famílias de benchmarks respaldado-por-citaçõesbenchmark-families.json — cada linha de família é respaldada-por-citações
Registro de solvers nomeados com capacidades e citações declaradassolver-registry.json e solver-capabilities.json
Adaptadores de otimização exata (extras opcionais mais dois solvers nativos limitados)sete entradas exatas em solver-registry.json; os backends de terceiros permanecem atrás de extras
Despacho construtivo e linhas de base metaheurísticasgrupos de despacho e metaheurística em solver-registry.json
Otimização many-objective (niching de ponto-de-referência)contrato many_objective em solver-capabilities.json
Indicadores de qualidade multi-objetivo nomeadosquatro indicadores citados em solver-capabilities.json
Contabilidade de restrições com caminhos de violação de nível-de-serviço e penalidadecontrato constraint_support em solver-capabilities.json
Agregação de robustez (pior-caso e CVaR)contrato robustness em solver-capabilities.json
Recomendação de solver a partir de metadados declaradoseixos e política de solver-recommender.json
Confiança de recomendação de modelo-aprendido acima de apenas-metadados⚠️o seletor supervisionado é enviado, mas os pacotes publicados carregam confiança de apenas-metadados
Interfaces de aprendizado e híbridas⚠️duas de sete interfaces nomeadas estão implementadas; cinco estão registradas como adiadas
Perfis de benchmark respaldados-por-traço⚠️um perfil calibrado-sintético; os status de distribution-distance empacotados não incluem perfil respaldado-por-traço
Geradores de chegada-dinâmica ou re-escalonamento-onlinea taxonomia declara a dimensão; cada gerador empacotado é estático
Kernels de pontuação-em-lote aceleradoso perfil de pontuação-em-lote registra um kernel de biblioteca-padrão
Execução de campanha multi-hostos modos de execução são sequencial, paralelo-por-threads, limitado, e replay em um host
Ponto de verificação, retomada, e verificação de replay de campanhacontratos de repositório, ponto de verificação, e replay de dispatchatlas.lab
Piso de contagem-de-execuções de potência-estatística e gate de comparação-justapolítica de contagem-de-execuções e invariante de comparação-justa em dispatchatlas.lab
Análise estatística não-paramétrica com tamanhos de efeitoexportações de dispatchatlas.analytica; linha de característica em platform-comparison.json
Pacotes de download com-hash reproduzíveisdownloads.json registra um hash de conteúdo e tamanho por pacote
Construtor de suítes de benchmark no-navegador (suítes prontas e personalizadas, exportação no-cliente)BenchmarkExplorer sobre benchmark-catalog.json; exportado via lib/download.ts (JSON, CSV, ZIP)