
Parte 2 da Série Factory Agent: Um Passo a Passo Visual do Controle Inteligente
Antes de mergulhar na estrutura de dados e nos princípios arquitetônicos que impulsionam os Factory Agents, queríamos mostrar algo real — e divertido.
O que acontece quando você traz grandes modelos de linguagem para um mundo industrial (virtual) vivo e pulsante?
Apresentamos:
Factorio + Agentes de LLM
Uma simulação aberta de sistemas de controle inteligente, onde agentes de LLM percebem, raciocinam e agem dentro de uma fábrica virtual.
1. Bem-vindo ao Mundo de Factorio
Antes de mergulharmos na arquitetura e nos agentes, vamos apresentar brevemente o mundo onde nossos experimentos se desenrolam — o adorado jogo de simulação: Factorio.
- "Factorio é um jogo no qual você constrói e mantém fábricas."
Você minerará recursos, pesquisará tecnologias, construirá infraestrutura e automatizará a produção. Use sua imaginação para projetar sua fábrica, combinar elementos simples em estruturas engenhosas e aplicar habilidades de gestão para mantê-la funcionando.
O jogo é muito estável e otimizado para a construção de fábricas massivas. Você pode criar seus próprios mapas, escrever mods em Lua ou jogar com amigos via Multiplayer.
Por que o Factorio é o Ambiente de Teste Perfeito para Agentes de LLM Industriais
O que torna o Factorio particularmente valioso para a pesquisa em IA é que ele fornece um ambiente de simulação industrial pronto e fisicamente coerente. Em vez de construir motores de física e regras de mundo complexos do zero, pesquisadores e desenvolvedores podem aproveitar esta plataforma existente para:
- Testar sistemas de LLM industriais em um ambiente controlado, porém complexo
- Visualizar as decisões dos agentes e suas consequências em tempo real
- Experimentar várias estratégias de automação sem as limitações de hardware físico
- Validar as capacidades de planejamento e otimização de IA em relação a mecanismos estabelecidos
Essa abordagem de "laboratório natural" nos permite focar na inteligência do agente em vez do desenvolvimento de simulação, acelerando significativamente o ciclo de pesquisa para aplicações de IA industrial.
Nossa Configuração: Um Mundo Controlado para Agentes Inteligentes
Em nosso experimento, criamos um cenário de sandbox personalizado:
- Recursos infinitos: Sem esgotamento de mineração ou escassez econômica
- Sem inimigos: Todos os mecanismos de combate desativados
- Design de sistema puro: Focado inteiramente em layout, produtividade, coordenação e controle
Este ambiente nos permite isolar o comportamento inteligente dos agentes de LLM sem a interferência de aleatoriedade ou elementos de sobrevivência.
Nosso objetivo: observar como os agentes de LLM se comportam em um ambiente determinístico, onde cada decisão que tomam — sobre posicionamento, produção ou otimização — tem um impacto mensurável e repetível.
Este é o mundo onde nossos Agentes de Fábrica vivem, pensam, agem e aprendem.
Vamos ver o que eles farão a seguir.
2. Arquitetura de Agente LLM e Fluxo de Dados
O Factorio fornece uma interface de API que nos permite ler o status da fábrica e executar comandos, permitindo-nos construir um ciclo de controle de agente LLM completo: observar–planejar–agir–observar.
Usamos MQTT com um Namespace Unificado (UNS) para troca de dados em tempo real entre os agentes e o ambiente do Factorio.
O Ciclo do Agente de Fábrica: Da Percepção à Ação
1. Camada de Percepção
- Conecta-se aos dados de estado expostos do Factorio: status da máquina, níveis de recursos, informações de layout
- Recebe observações estruturadas de tópicos MQTT (por exemplo, Factorio/Sandbox/Power/Line4487/generator4209/electricity)
- Cada agente de LLM subscreve apenas os tópicos relevantes para sua função e escopo de decisão
2. Camada de Raciocínio e Tomada de Decisão (Camada de Agente)
- Os agentes podem ser alimentados por instâncias de LLM únicas ou múltiplas trabalhando em conjunto
- Processam dados de estado em formato JSON e geram decisões por meio de chamadas de LLM
- Atualmente utiliza raciocínio simples baseado em prompts para a tomada de decisão
- O desenvolvimento futuro poderá incluir rastreamento de metas, módulos de memória e capacidades de aprendizado
3. Camada de Disparo de Ações
- As saídas do LLM são comandos JSON estruturados
por exemplo,
"command": "place_entity",
"params": {
"name": "steam-engine",
"x": 12,
"y": 20,
"direction": "4"
}- Estes são publicados em tópicos de controle MQTT, roteados por função e destino
- Esta camada atua como a ponte entre a intenção cognitiva e a ação física
4. Camada de Execução (Ambiente)
- A simulação do Factorio recebe e executa comandos por meio de um mod de jogo personalizado / ponte de API
- O maquinário é construído, destruído, configurado ou redirecionado conforme necessário
- O jogo publica o novo estado de volta nos tópicos MQTT em tempo real
5. Camada de Feedback e Aprendizado
- Os agentes percebem o mundo novamente por meio de tópicos de estado atualizados
- Isso possibilita a próxima rodada de planejamento
- Com o tempo, esta camada oferecerá suporte a memória de trabalho, avaliação de planos e estratégias de várias etapas
Resumo
Esta arquitetura cria um ciclo de controle contínuo onde agentes de LLM recebem dados da fábrica, tomam decisões e executam ações que melhoram o desempenho da fábrica.
Esta arquitetura alinha-se perfeitamente ao sistema de controle de cinco camadas apresentado na Parte 1 da nossa série, mas agora implementado em um ambiente visual concreto, onde os resultados das decisões dos agentes tornam-se imediatamente aparentes.
|
Layout
|
Power per Area
|
Solar:Accumulator Ratio
|
Description
|
|
---------------
|
----------------
|
--------------------------
|
--------------------------------------------------
|
|
Initial Setup
|
85 W/m²
|
1:1
|
Haphazard placement with equal panels and accumulators
|
|
Optimized Grid
|
132 W/m²
|
1:18:1
|
Strategic layout with optimal spacing and ratio
|
Do layout atual à otimização projetada — uma jornada de design em evolução
.webp)
.webp)
🧠 Processo de Raciocínio do Agente
### Initial Analysis
- Space available: 120x80 tiles
- Panel placement inefficient (large gaps)
- Nighttime power dips to 82% of required level
### Hypotheses
- Accumulator shortage causes night outage
- Poor layout reduces panel density and connection efficiency
### Strategy
- Reorganize layout into compact grid for maximum density
- Incrementally test solar:accumulator ratios (starting from 1:1 to 1.3:1)
- Monitor stability across multiple day-night cycles
### Outcome
- 1.18:1 ratio found optimal for 24/7 operation
- Improved power density by 55% without expanding areaInsight Principal
Sem receber regras de jogo ou fórmulas explícitas, o Agente de Fábrica liderado por LLM descobriu a proporção teórica ideal de 1,18:1 entre painéis solares e acumuladores por meio de raciocínio espacial iterativo e análise de feedback. Este resultado reflete de perto projetos humanos especializados — mas foi alcançado de forma autônoma, demonstrando que LLMs podem emular a otimização de layout de nível industrial por meio de inteligência baseada em linguagem.
3.2 🪓 Cenário 2: Cobre Eficiente Operações de Mineração
Objetivo: Maximizar a coleta de minério de cobre por minuto dentro de uma área e orçamento de energia fixos.
Neste cenário, o Agente de Fábrica foi designado para otimizar a produção de mineração de cobre dentro de uma região restrita de 120×80 blocos. O desafio não era apenas espacial — posicionar as perfuratrizes de mineração de forma eficiente — mas também logístico: garantir vazão suficiente nas esteiras, evitar congestionamentos e manter a disponibilidade de energia para a mineração contínua.
A configuração inicial apresentava um layout ineficiente de perfuratrizes elétricas com zonas sobrepostas, esteiras desalinhadas e posicionamento subótimo de subestações. Esses problemas levavam a interrupções frequentes na mineração, perfuratrizes subutilizadas e gargalos na esteira de saída.
|
Layout
|
Ore per Minute
|
Drill Density
|
Description
|
|
---------------
|
----------------
|
-----------------
|
------------------------------------------------------
|
|
Initial Setup
|
310/min
|
0.42 drills/tile
|
Overlapping coverage with bottlenecked belts
|
|
Optimized Grid
|
470/min
|
0.55 drills/tile
|
Aligned drills, clean belt routing, consistent power coverage
|Nota: Densidade de Perfuratrizes = Número total de perfuratrizes ativas / área total de blocos utilizada
Do layout atual à otimização projetada — uma jornada de design em evolução
.webp)
.webp)
🧠 Processo de Raciocínio do Agente
### Initial Observations
- Drill layout disorganized, several mining areas overlap
- Output belt frequently jammed, causing drill idling
- Substation coverage inconsistent, causing power drops
### Hypotheses
- Better drill spacing can reduce interference and improve ore yield
- Simplifying belt routing will improve material flow and prevent backup
- Strategic substation placement can ensure consistent uptime
### Strategy
- Apply uniform grid layout to maximize drill coverage per tile
- Align all output belts toward central collection spine
- Place substations in a staggered pattern to fully cover all drills
### Result
- Ore output improved from 310/min to 470/min (+52%)
- Belt saturation avoided, drill uptime reached 98%+
- Improved maintainability and layout scalabilityInsight Principal
O Agente de Fábrica não apenas posicionou mais perfuratrizes — ele reorganizou todo o layout de mineração aplicando raciocínio espacial, gestão de energia e otimização de vazão. Essa reestruturação multidimensional reflete o que um jogador humano habilidoso faria após horas de tentativa e erro — mas aqui, foi alcançada em poucos ciclos iterativos pelo agente LLM.
3.3 🌱 Cenário 3: Equilibrando Eficiência com Sustentabilidade
Objetivo: Manter uma alta produção enquanto mantém os níveis de poluição abaixo de 500 ppm para evitar penalidades ecológicas.
Neste cenário, o Agente de Fábrica enfrentou um dilema industrial clássico: aumentar a produção para atingir as metas de saída enquanto gerencia o custo ambiental. Diferente da simples maximização de vazão, esta tarefa exigiu otimização multiobjetivo entre os eixos de desempenho e sustentabilidade.
|
Layout
|
Production (units/min)
|
Pollution (ppm)
|
Modules Used
|
Energy Source
|
Description
|
|
-------------
|
-------------------------
|
-----------------
|
-------------------------------
|
------------------------
|
--------------------------------------------------
|
|
High Output
|
580
|
850
|
Productivity modules only
|
Coal power
|
Maximum output, no pollution mitigation
|
|
Balanced
|
520
|
450
|
Mix of Efficiency + Productivity
|
Solar + Backup Coal
|
Controlled output with pollution under threshold
|Nota: Limite de poluição = 500 ppm (limiar de conformidade ambiental)
[Do layout atual à otimização idealizada — uma jornada de design em evolução]
.webp)
.webp)
🧠 Processo de Decisão do Agente
### Initial Observations
- Drill layout disorganized, several mining areas overlap
- Output belt frequently jammed, causing drill idling
- Substation coverage inconsistent, causing power drops
### Hypotheses
- Better drill spacing can reduce interference and improve ore yield
- Simplifying belt routing will improve material flow and prevent backup
- Strategic substation placement can ensure consistent uptime
### Strategy
- Apply uniform grid layout to maximize drill coverage per tile
- Align all output belts toward central collection spine
- Place substations in a staggered pattern to fully cover all drills
### Result
- Ore output improved from 310/min to 470/min (+52%)
- Belt saturation avoided, drill uptime reached 98%+
- Improved maintainability and layout scalabilityInsight Principal
O Agente de Fábrica demonstrou raciocínio adaptativo de compensação—não apenas otimizando uma métrica, mas negociando entre objetivos conflitantes para entregar uma solução viável e explicável.
5. O que vem a seguir
No que estamos trabalhando
Áreas de foco do desenvolvimento atual:
- Coordenação Multiagente: Fazer com que agentes especializados trabalhem juntos em problemas complexos de otimização
- Memória e Aprendizado: Agentes que memorizam estratégias bem-sucedidas e se adaptam ao longo do tempo
- Lidando com Restrições Complexas: Ensinar agentes a equilibrar múltiplos objetivos conflitantes
- Escalando o Desempenho: Gerenciando tempos de resposta à medida que a complexidade da fábrica aumenta
A seguirNa Parte 3, vamos nos aprofundar na base técnica que torna essa inteligência possível: "Por que tópicos MQTT + JSON são ideais para agentes de LLM industriais" - explorando a infraestrutura de dados que possibilita esses resultados visuais.
🔗 Leia a Parte 1: Construindo um agente de LLM para tomada de decisão em uma fábrica simulada
📁 Explore o código: https://github.com/supcon-international/Factorio-MQTT-mod