Skip to content

Latest commit

 

History

History
119 lines (93 loc) · 5.18 KB

File metadata and controls

119 lines (93 loc) · 5.18 KB

$R^2\text{D}^2$

O $R^2\text{D}^2$ é um trabalho que calcula com alta precisão e velocidade a energia total de uma molécula a partir de seu SMILES

Brasão_R2D2

Shut up and Calculate

🔎 Sumário

📝 Descrição

❓O que é o RDKit?

RDKit é uma biblioteca open-source em Python voltada para química computacional e quimioinformática. Permite criar, visualizar e manipular estruturas moleculares, calcular descritores e realizar buscas por similaridade. É amplamente usada em aprendizado de máquina aplicado a química e em pipelines de descoberta de fármacos e materiais.

❓O que é o XTB?

xTB (extended Tight Binding) é um método semiempírico de química computacional desenvolvido para calcular rapidamente energias, geometrias e propriedades moleculares com boa precisão e baixo custo computacional. Ele é amplamente usado em otimizações geométricas, triagens de grandes conjuntos de moléculas e como aproximação inicial para métodos quânticos mais caros, como DFT.

❓O que é o QM9?

QM9 é um banco de dados público contendo propriedades físico-químicas de cerca de 134 mil pequenas moléculas orgânicas calculadas via teoria do funcional da densidade (DFT). Inclui dados como energia total, dipolo, polarizabilidade e entalpias. É amplamente utilizado para treinar e avaliar modelos de machine learning em química computacional.

⁉️Qual o problema então?

O XTB é um método rápido, porém com precisão não aceitável em muitos casos, precisando-se recorrer a DFTs mais pesados computacionalmente, o que acarreta em horas para um único cálculo.

❗Como vamos resolver esse problema?

Usaremos o $\delta$-Learning, ou seja, nosso modelo predirá a diferença entre o resultado preciso, do QM9, e o rápido, do XTB, assim, ao final calculamos a energia total como: E = XTB + $\delta$, obtendo o resultado com alta velocidade e acuracia.

Como rodar em seu PC

👨‍💻 Rodando Localmente

📋 Pré-requisitos:

  1. Instale o Python em seu computador. Recomendamos a versão 3.12.7.
  2. Instale todas as bibliotecas necessárias. No VSCode, use o comando:
pip install -r requirements.txt

▶️ Executando a aplicação

  1. Digite em seu terminal:
cd streamlit
python -m streamlit run main.py
  1. O aplicativo deve abrir em seu navegador padrão automaticamente.

🌊 Fluxo

Caso deseje entender o trabalho, recomendamos seguir esta ordem para melhor experiência:

  1. Leitura do README -Em que é feita uma introdução geral ao trabalho
  2. Modelos de Machine Learning -O ponto chave do projeto, comece pelo baseline e após pode seguir qualquer ordem para ler os ElasticNet, SVR, NGBoost, KRR e XGBoost, com o Ensemble deve sendo o último.
  3. Streamlit -O final do projeto, o resultado final do que foi feito.

👨‍🏫 Professor responsavel

Foto do Daniel do Github
Prof. Dr. Daniel R. Cassar

🤝 Colaboradores

Foto do Edélio do Github
Edélio G. M. de Jesus
Foto do Mateus do Github
Mateus de Jesus Mendes
Foto do Matheus do Github
Matheus P. V. da Silveira

💪 Como cada colaborador contribuiu?

Edélio G. M. de Jesus: Desenvolveu os modelos Suport Vector Machine e Kernel Ridge Regression, além de fazer a análise SHAP.

Mateus de Jesus Mendes: Atuou para integrar RDKit-XTB-QM9, além de desenvolver o modelo NGBoost e ajudar no streamlit.

Matheus P. V. da Silveira: Desenvolveu os modelos Elatic Net, Extreme Gradient Boosting e Ensemble, além de ajudar no streamlit.

alt text