Phase 16 - Lesson 16
Negociação e Barganha
This lesson includes a graded coding exercise that runs in your browser, unlocked with lifetime access.
Agentes negociam recursos, preços, alocações de tarefas e termos de acordos. O conjunto de benchmarks de 2026 é claro: o NegotiationArena (arXiv:2402.05863) mostra que LLMs podem melhorar os payoffs em cerca de 20% por meio de manipulação de personas (como expressar "desespero"); "Measuring Bargaining Abilities" (arXiv:2402.15813) mostra que atuar como comprador é mais difícil do que como vendedor e que aumentar a escala do modelo não ajuda — sua abordagem OG-Narrator (gerador determinístico de propostas + LLM narradora) elevou a taxa de acordos de 26,67% para 88,88%; a Large-Scale Autonomous Negotiation Competition (arXiv:2503.06416) realizou aproximadamente 180 mil negociações e constatou que agentes com ocultação de cadeia de raciocínio (chain-of-thought-concealing) vencem ao esconder sua lógica de raciocínio das contrapartes; Bhattacharya et al. 2025 avaliou métricas do Harvard Negotiation Project e classificou o Llama-3 como o mais eficaz, o Claude-3 como agressivo e o GPT-4 como o mais justo. Esta lição implementa o Contract Net Protocol (o predecessor do FIPA, Lição 02), configura compradores e vendedores baseados em LLM, executa uma decomposição no estilo OG-Narrator e mede como a taxa de fechamento de acordos varia com cada escolha estrutural.
Tipo: Aprenda + Construa Linguagens: Python (stdlib) Pré-requisitos: Phase 16 · 02 (FIPA-ACL Heritage), Phase 16 · 09 (Parallel Swarm Networks) Tempo: ~75 minutos
Problema
Dois agentes precisam concordar sobre um preço. Deixados por conta própria com instruções em linguagem natural puras, os LLMs de 2024-2026 fecham acordos em taxas surpreendentemente baixas (~27% em negociações com parâmetros rígidos de acordo com o arXiv:2402.15813). Aumentar a escala do modelo não corrige o problema: o GPT-4 não é estruturalmente melhor em barganhar do que o GPT-3.5; ele é apenas melhor na linguagem da negociação.
O problema principal é que os LLMs confundem duas tarefas — decidir a proposta e narrar a proposta. O padrão OG-Narrator separou essas funções: um gerador determinístico calcula os movimentos numéricos; o LLM apenas cria o texto. Com isso, a taxa de fechamento de acordos salta para cerca de 89%.
Isso reflete uma descoberta clássica na área de multiagentes: desacoplar o mecanismo de decisão da camada de comunicação gera melhores resultados. O Contract Net Protocol (FIPA, 1996; Smith, 1980) é a referência de mercado para alocação de tarefas. Insira um LLM na etapa de narração e você terá um mercado de tarefas moderno alimentado por IA.
Conceito
Contract Net, em um parágrafo
Protocolo Contract Net de Smith (1980): um gerente transmite uma chamada de propostas (cfp); os licitantes respondem com mensagens contendo suas propostas (propose); o gerente seleciona um vencedor e envia a mensagem de aceitação (accept-proposal) para o vencedor e de rejeição (reject-proposal) para os perdedores. O vencedor realiza o trabalho. Mensagem opcional: recusa (refuse), quando o licitante declina de fazer uma proposta. O FIPA codificou isso como o protocolo de interação fipa-contract-net.
Por que o OG-Narrator vence
"Measuring Bargaining Abilities of Language Models" (arXiv:2402.15813) observou que:
- LLMs frequentemente violam as regras de barganha (oferecem preços sem sentido, ignoram a ZOPA da contraparte).
- Eles definem propostas iniciais ruins (aceitam propostas ruins logo de início; fazem contrapropostas com valores simbólicos em vez de estratégicos).
- Aumentar o tamanho do modelo não corrige isso. Modelos maiores criam textos mais plausíveis, mas cometem erros estratégicos semelhantes.
A decomposição do OG-Narrator:
┌──────────────────┐ ┌──────────────────┐
state → │ offer generator │ price → │ LLM narrator │ → message
│ (deterministic) │ │ (writes the │
│ │ │ human-style │
└──────────────────┘ │ accompaniment) │
└──────────────────┘
O gerador de propostas segue uma estratégia clássica de negociação: um modelo de barganha de Rubinstein, uma estratégia de Zeuthen ou um simples "olho por olho" (tit-for-tat) sobre o preço. O LLM apenas escreve. A mensagem enviada contém o preço determinístico e a contextualização em linguagem natural.
A taxa de fechamento de acordos aumenta porque:
- Os preços permanecem dentro da zona de acordo.
- As propostas são estratégicas, não baseadas em reações emocionais.
- O LLM executa aquilo em que é bom: redigir textos.
Descobertas do NegotiationArena
O arXiv:2402.05863 fornece o benchmark canônico. Principais conclusões:
- LLMs podem melhorar os retornos em cerca de 20% ao adotar personas específicas ("estou desesperado para vender isso até sexta-feira") — a manipulação de personas é uma tática real.
- Agentes cooperativos ou justos são explorados por adversários; a defesa exige adotar posturas de contraposição explícitas.
- Emparelhamentos simétricos convergem para resultados desiguais em cerca de 40% dos cenários do benchmark.
Isso não significa que "LLMs são negociadores ruins". Significa que "LLMs negociam de forma parecida demais com os humanos, incluindo as partes exploráveis".
Ocultação de cadeia de raciocínio (Chain-of-thought concealment)
A Large-Scale Autonomous Negotiation Competition (arXiv:2503.06416) avaliou aproximadamente 180 mil negociações usando várias estratégias de LLM. Os vencedores ocultaram seu raciocínio das contrapartes:
- Se um agente escreve "eu só posso pagar até $75; meu preço de reserva é $70" em um rascunho visível, o oponente lê essa informação.
- Os vencedores calculam a estratégia privadamente; o canal público de saída contém apenas a proposta e a narração mínima necessária.
Este é o reflexo de 2026 da teoria dos jogos clássica (Aumann 1976 sobre racionalidade e informação): revelar sua avaliação privada diminui o seu payoff. LLMs não percebem isso intuitivamente e expõem seus limites em traços de raciocínio que acabam se tornando visíveis para a contraparte.
Diretriz de engenharia: separe o contexto do rascunho privado do contexto da mensagem pública. Isso é fundamental.
Bhattacharya et al. 2025 — ranking de modelos
Nas métricas do Harvard Negotiation Project (negociação baseada em princípios, respeito à BATNA, reciprocidade de interesses):
- O Llama-3 foi o mais eficaz em fechar acordos (taxa de acordos + retorno financeiro).
- O Claude-3 foi o negociador mais agressivo (propostas iniciais altas, concessões tardias).
- O GPT-4 foi o mais justo (menor variação de retorno entre os emparelhamentos).
Este é o panorama de 2025. O importante não é qual modelo lidera em abril de 2026, mas sim o fato de que diferentes modelos base possuem estilos de negociação consistentes. Conjuntos heterogêneos (Lição 15) utilizam isso como fonte de diversidade.
Alocação de tarefas via Contract Net + LLM
A reutilização moderna do Contract Net em sistemas multiagentes com LLM:
- O agente gerente divide uma tarefa em unidades de trabalho.
- Transmite uma mensagem
cfpcontendo a descrição da tarefa para os agentes trabalhadores. - Cada trabalhador retorna uma proposta:
(price, eta, confidence)(preço, tempo estimado, confiança), onde o preço pode ser tokens, unidades de processamento ou dólares. - O gerente seleciona os vencedores (um ou mais, dependendo da tarefa) e faz a alocação.
- Os trabalhadores rejeitados ficam livres para licitar em outras tarefas.
Essa abordagem escala bem acima de 100 trabalhadores porque a coordenação ocorre via transmissão-e-resposta, em vez de chats síncronos. Utilizado em produção: padrões de orquestração do Microsoft Agent Framework, algumas implementações do LangGraph.
Negociação Interativa de LLM com Stakeholders
O NeurIPS 2024 (https://proceedings.neurips.cc/paper_files/paper/2024/file/984dd3db213db2d1454a163b65b84d08-Paper-Datasets_and_Benchmarks_Track.pdf) apresenta jogos pontuáveis multilaterais com pontuações secretas e limites mínimos de aceitação. Cada stakeholder possui utilidades privadas; o LLM deve deduzi-las a partir das mensagens. Esta é a generalização da barganha bilateral para a formação de coalizões multilaterais. Relevante para mercados de tarefas com trabalhadores de capacidades heterogêneas.
A regra de narração versus mecanismo
Em todos os benchmarks de negociação de 2024-2026, a regra de engenharia consistente é:
Permita que o LLM narre. Não permita que o LLM calcule a proposta.
Se a proposta for um valor numérico (preço, tempo, quantidade), calcule-a de forma determinística a partir do estado da negociação e use a LLM apenas para a redação do texto. Se a proposta exigir uma estrutura complexa (divisão de tarefas, atribuição de papéis), deixe que a LLM redije o rascunho, mas valide-o contra um esquema e verifique as restrições antes de enviar.
Construa
code/main.py implementa:
ContractNetManager,ContractNetTask,Bid— gerente + licitantes, transmissão de cfp, coleta de propostas, alocação de tarefas.og_narrator_bargain(state, rng)— comprador no estilo OG-Narrator: concessão determinística no estilo Zeuthen em direção ao ponto médio.seller_response(state, rng)— política determinística de contraproposta do vendedor (a base estrutural para ambos os estilos).naive_llm_bargain(state, rng)— simula um negociador puramente baseado em LLM: escolhe valores com alta variância, muitas vezes fora da ZOPA.- Medição: taxa de fechamento de acordos ao longo de 1000 simulações com preços de reserva gerados aleatoriamente em cada rodada.
Execute:
python3 code/main.py
Saída esperada: taxa de acordos da LLM simples em ~65-75%; taxa de acordos do OG-Narrator em ~85-95%; a diferença de 15-25 pontos percentuais representa a vantagem de separar o cálculo da proposta da redação do texto. Acompanha também um exemplo de alocação de mercado de tarefas via Contract Net com três licitantes e uma tarefa.
Use
O outputs/skill-bargainer-designer.md projeta um protocolo de barganha: quem gera as propostas (determinístico ou LLM), quem escreve o texto, como rascunhos privados são mantidos separados das mensagens públicas e como a taxa de fechamento de acordos é monitorada.
Coloque em Produção
Lista de verificação para negociação em produção:
- Rascunho separado. O estado privado nunca deve alcançar o contexto da contraparte. Isso não é opcional.
- Geração determinística de propostas. Preços, quantidades, prazos: calcule, não use prompts.
- Valide todas as propostas recebidas contra um esquema JSON. Rejeite propostas fora da ZOPA nos limites do protocolo.
- Limite as rodadas. No máximo 3 a 5 rodadas; encaminhe para um mediador em caso de impasse (deadlock).
- Monitore a taxa de acordos fechados e a variância dos payoffs continuamente. Uma queda na taxa de fechamento é um sintoma — muitas vezes de desvio de prompt ou de ataques da contraparte.
- Registre todas as propostas rejeitadas com a justificativa determinística. No Contract Net, os licitantes perdedores precisam entender o motivo da rejeição.
Exercícios
- Execute
code/main.py. Confirme que o OG-Narrator supera a LLM simples na taxa de acordos. Qual é o tamanho da diferença? - Implemente a melhoria de payoff baseada em persona (arXiv:2402.05863) — o comprador adota uma persona "urgência para comprar esta semana" apenas na redação do texto, mantendo o gerador de propostas inalterado. Ocorrem alterações na taxa de acordos ou nos retornos?
- Implemente a ocultação de cadeia de raciocínio: mantenha uma string de rascunho privado que não é enviada para a contraparte. O que acontece se você acidentalmente vazá-la (simule trocando os canais)?
- Estenda o Contract Net para um leilão de N licitantes com preço de reserva. Quando todos os lances superam o preço de reserva, como o gerente decide entre menor preço e melhor qualidade? Qual regra de alocação você escolhe e por quê?
- Leia Bhattacharya et al. 2025 sobre as métricas do Harvard Negotiation Project. Implemente dois negociadores com estilos distintos (agressivo vs. justo). Meça a variação dos retornos sob emparelhamentos simétricos e assimétricos.
Termos-Chave
| Termo | O que as pessoas dizem | O que realmente significa |
|---|---|---|
| Contract Net | "Mercado de tarefas" | Smith 1980, FIPA 1996. cfp + propose + accept/reject. O modelo clássico de mercado de trabalho de agentes. |
| ZOPA | "Zona de possível acordo" | Sobreposição entre o máximo do comprador e o mínimo do vendedor. Propostas fora dela não fecham acordo. |
| BATNA | "Melhor alternativa a um acordo" | Seu plano de reserva caso esta negociação falhe. Define o seu preço de reserva. |
| OG-Narrator | "Gerador de propostas + narrador" | Decomposição: propostas calculadas de forma determinística, redação executada por LLM. |
| Zeuthen strategy | "Concessão com minimização de risco" | Estratégia clássica que faz concessões com base em limites de risco aceitáveis. |
| Rubinstein bargaining | "Equilíbrio de propostas alternadas" | Modelo da teoria dos jogos para negociações de horizonte infinito com fator de desconto. |
| CoT concealment | "Esconder o raciocínio" | Vencedores no arXiv:2503.06416 usaram rascunhos privados; o canal público exibe apenas a proposta final. |
| Persona manipulation | "Postura emocional" | arXiv:2402.05863: ganho de ~20% no payoff a partir de personas de urgência/desespero. |
Leituras Adicionais
- NegotiationArena — o benchmark; descobertas sobre manipulação de personas e exploração de agentes
- Measuring Bargaining Abilities of Language Models — o padrão OG-Narrator e o resultado de que comprador é mais difícil que vendedor
- Large-Scale Autonomous Negotiation Competition — cerca de 180 mil negociações; a ocultação de cadeia de pensamento vence
- LLM-Stakeholders Interactive Negotiation (NeurIPS 2024) — jogos multilaterais com utilidades secretas
- Smith 1980 — The Contract Net Protocol — o mecanismo clássico, IEEE Transactions on Computers