Sistema avançado de descoberta de medicamentos usando Inteligência Artificial, Machine Learning e Química Computacional.
- Graph Neural Networks (GNN) para predição de propriedades moleculares
- Variational Autoencoders (VAE) para geração de moléculas
- Algoritmos Genéticos Multi-Objetivo para otimização
- Docking Molecular para screening virtual
Geração → Predição → Screening → Otimização → Validação
- ✅ Propriedades farmacológicas (drug-likeness, bioavailability)
- ✅ Análise ADMET completa
- ✅ Screening contra múltiplos alvos proteicos
- ✅ Predição de toxicidade
- ✅ Otimização multi-objetivo
- ✅ Predição de sucesso clínico
- COVID-19 (SARS-CoV-2 Main Protease)
- Câncer (EGFR, múltiplos alvos)
- Alzheimer (BACE1)
- HIV/AIDS (HIV Protease)
- Hipertensão (ACE2)
# Clone o repositório
cd Sistema_de_Descoberta_de_Novos_Medicamentos
# Instale as dependências
pip install -r requirements.txt
# Execute o sistema
python main.py# Instale dependências da GUI
pip install -r requirements_gui.txt
# Execute a interface
streamlit run app.py
# Acesse: http://localhost:8501Recursos:
- ✨ Design futurista com gradientes neon
- 🔬 4 modos de operação interativos
- 📊 Gráficos interativos em tempo real
- 🎯 Visualização de top candidatos
- 🧬 Análise ADMET visual
- 🎲 Geração de moléculas com preview
python main.pySelecione a doença alvo e o sistema executará o pipeline completo:
- Geração de 100 moléculas candidatas
- Predição de propriedades farmacológicas
- Screening virtual contra alvo proteico
- Ranqueamento por score multi-critério
- Otimização dos top 10 candidatos
# Inicie o servidor
python api_server.py
# Acesse a documentação interativa
http://localhost:8000/docsDescoberta Completa:
POST /api/discover
{
"disease": "COVID-19",
"target_protein": "SARS-CoV-2_Mpro",
"n_candidates": 100
}Análise de Propriedades:
POST /api/properties
{
"smiles": "CC(=O)Oc1ccccc1C(=O)O"
}Screening Virtual:
POST /api/screening
{
"smiles": "CC(=O)Oc1ccccc1C(=O)O",
"target": "SARS-CoV-2_Mpro"
}Geração de Moléculas:
POST /api/generate?n_molecules=50Otimização:
POST /api/optimize
{
"smiles": "CC(=O)Oc1ccccc1C(=O)O",
"target_protein": "EGFR"
}from drug_discovery_pipeline import DrugDiscoveryPipeline
# Inicializa pipeline
pipeline = DrugDiscoveryPipeline()
# Descobre candidatos
candidates = pipeline.discover_drug_candidates(
disease='COVID-19',
target_protein='SARS-CoV-2_Mpro',
n_candidates=100
)
# Gera relatório
pipeline.generate_report(candidates)
# Prediz sucesso clínico
success = pipeline.predict_clinical_success(candidates[0]['smiles'])
print(f"Probabilidade de sucesso: {success['probability']*100:.1f}%")Sistema_de_Descoberta_de_Novos_Medicamentos/
├── src/
│ ├── molecular_generator.py # Geração de moléculas (VAE)
│ ├── drug_predictor.py # Predição de propriedades (GNN)
│ ├── target_screening.py # Screening virtual (Docking)
│ ├── optimization_engine.py # Otimização multi-objetivo
│ └── drug_discovery_pipeline.py # Pipeline integrado
├── main.py # Interface CLI
├── api_server.py # API REST
├── requirements.txt # Dependências
└── README.md # Documentação
Gera moléculas candidatas usando VAE (Variational Autoencoder):
- Geração de estruturas químicas válidas
- Validação por regras de Lipinski
- Cálculo de propriedades moleculares
Prediz propriedades usando Graph Neural Networks:
- Bioavailability
- Toxicity
- Solubility
- Binding affinity
- Drug-likeness
- Análise ADMET completa
Screening virtual contra alvos proteicos:
- Docking molecular
- Cálculo de afinidade de ligação
- Predição de Ki (constante de inibição)
- Análise de seletividade
Otimização multi-objetivo:
- Algoritmos genéticos
- Otimização de propriedades
- Lead optimization
- Frente de Pareto
O sistema ranqueia candidatos usando score composto:
- 40% - Afinidade de ligação (binding affinity)
- 20% - Drug-likeness (regra de Lipinski)
- 20% - Bioavailability
- 20% - Baixa toxicidade
- PyTorch - Deep Learning
- PyTorch Geometric - Graph Neural Networks
- RDKit - Química computacional
- DeepChem - Machine learning para química
- FastAPI - API REST
- Scikit-learn - Machine learning clássico
- XGBoost - Gradient boosting
candidates = pipeline.discover_drug_candidates(
disease='COVID-19',
target_protein='SARS-CoV-2_Mpro',
n_candidates=100
)candidates = pipeline.discover_drug_candidates(
disease='Cancer',
target_protein='EGFR',
n_candidates=100
)from drug_predictor import DrugPropertyPredictor
predictor = DrugPropertyPredictor()
props = predictor.predict_properties('CC(=O)Oc1ccccc1C(=O)O')
admet = predictor.predict_admet('CC(=O)Oc1ccccc1C(=O)O')O sistema implementa:
- Regra de Lipinski (drug-likeness)
- Análise ADMET (Absorption, Distribution, Metabolism, Excretion, Toxicity)
- Synthetic Accessibility Score
- Predição de sucesso clínico (Fase I, II, III)
Para cada descoberta, o sistema gera:
- Lista de candidatos ranqueados
- Propriedades farmacológicas detalhadas
- Análise ADMET completa
- Resultados de screening virtual
- Variantes otimizadas
- Predição de sucesso clínico
- Relatório em JSON
- Integração com PubChem e ChEMBL
- Visualização 3D de moléculas
- Análise de similaridade molecular
- Predição de síntese química
- Dashboard web interativo
- Integração com AlphaFold para estruturas proteicas
- Análise de patentes
Este projeto é fornecido para fins educacionais e de pesquisa.
Contribuições são bem-vindas! Este sistema representa o estado da arte em descoberta de medicamentos assistida por IA.
Este sistema é uma ferramenta de pesquisa. Qualquer candidato a medicamento deve passar por validação experimental e ensaios clínicos apropriados antes de uso terapêutico.
Para dúvidas e sugestões sobre o sistema de descoberta de medicamentos.
Desenvolvido com ❤️ usando Python, IA e Machine Learning
Impacto Global: Acelerando a descoberta de medicamentos que salvam vidas 🌍