Repolode
pnnl

pnnl/neuromancer

Biblioteca de programação diferenciável baseada em PyTorch para otimização paramétrica com restrições, identificação de sistemas informada pela física e controle preditivo de modelos paramétricos.

Estrelas
1,383
Forks
185
Issues abertas
16
Último commit
há 5 horas

O que é?

NeuroMANCER é uma biblioteca de programação diferenciável escrita em PyTorch para aprender soluções de problemas de otimização paramétrica com restrições, criar modelos informados pela física de sistemas dinâmicos e aprender políticas de controle. Ela permite combinar redes neurais com computação científica para incorporar equações do domínio, restrições e conhecimento prévio diretamente ao processo de aprendizado.

A biblioteca oferece uma interface de programação simbólica para definir variáveis, restrições e objetivos, além das abstrações Node e System para compor módulos neurais e modelos dinâmicos. Ela abrange neural ODEs, operadores de Koopman, SINDy, redes de Kolmogorov-Arnold, codificadores de funções, operadores neurais como DeepONet e Fourier Neural Operators, e redes neurais informadas pela física para PDEs. Também inclui Controle Preditivo Diferenciável e camadas de otimização convexa diferenciável para controle e aprendizado sujeito a restrições de segurança.

O repositório inclui uma grande coleção de tutoriais prontos para Colab e exemplos de diferentes domínios, como dinâmica térmica de edifícios e controle de HVAC, além de integração com PyTorch Lightning para treinamento em GPU e múltiplas GPUs. A instalação pode ser feita via pip.

Recursos principais

  • 01Interface simbólica para incorporar equações físicas, restrições e objetivos a problemas de aprendizado.
  • 02Otimização paramétrica com restrições por meio de funções de perda baseadas em penalidades e camadas de otimização convexa diferenciável.
  • 03Aprendizado de modelos de sistemas dinâmicos com neural ODEs, operadores de Koopman, SINDy e modelos de espaço de estados.
  • 04Controle Preditivo Diferenciável para aprender políticas de controle de sistemas não lineares.
  • 05Redes neurais informadas pela física e operadores neurais, como DeepONet e Fourier Neural Operator.
  • 06Integração com PyTorch Lightning para treinamento em GPU e múltiplas GPUs.

Casos de uso

  • Gestão de energia em edifícios, como aprender a controlar a temperatura interna com sistemas HVAC.
  • Aprendizado de modelos substitutos de sistemas físicos a partir de dados medidos, respeitando as equações conhecidas.
  • Resolver rapidamente conjuntos de problemas de otimização com restrições para muitos valores de parâmetros.
  • Prototipar redes neurais informadas pela física para PDEs, como as de difusão ou escoamento de fluidos.

Início rápido

  1. 1

    Instale a biblioteca pelo PyPI

    pip install neuromancer
  2. 2

    Execute o exemplo rápido de otimização com restrições em Python (defina o modelo, os nós e a perda conforme mostrado no README)

Antes de usar

  • A licença está listada como NOASSERTION, então é preciso conferir os termos no repositório antes de usar.
  • A maioria dos tutoriais e exemplos foi projetada para fluxos de trabalho do PyTorch adequados a GPU e pode ser lenta em CPU.

Tópicos

Perguntas frequentes

O que é neuromancer?
Biblioteca de programação diferenciável baseada em PyTorch para otimização paramétrica com restrições, identificação de sistemas informada pela física e controle preditivo de modelos paramétricos. NeuroMANCER é uma biblioteca de programação diferenciável escrita em PyTorch para aprender soluções de problemas de otimização paramétrica com restrições, criar modelos informados pela física de sistemas dinâmicos e aprender políticas de controle. Ela permite combinar redes neurais com computação científica para incorporar equações do domínio, restrições e conhecimento prévio diretamente ao processo de aprendizado.
neuromancer é gratuito? Qual é a licença?
neuromancer é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
neuromancer ainda é mantido?
Manutenção ativa. O último commit de neuromancer foi em 22 de out. de 2026.
Para que posso usar neuromancer?
Gestão de energia em edifícios, como aprender a controlar a temperatura interna com sistemas HVAC. Aprendizado de modelos substitutos de sistemas físicos a partir de dados medidos, respeitando as equações conhecidas. Resolver rapidamente conjuntos de problemas de otimização com restrições para muitos valores de parâmetros. Prototipar redes neurais informadas pela física para PDEs, como as de difusão ou escoamento de fluidos.
Como instalar neuromancer?
Instale a biblioteca pelo PyPI: pip install neuromancer Execute o exemplo rápido de otimização com restrições em Python (defina o modelo, os nós e a perda conforme mostrado no README)
Onde consigo neuromancer?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/pnnl/neuromancer

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados