- 🎓 Master's in Artificial Intelligence @ Universidade do Minho · (2025 – present)
- 📐 B.Sc. in Engineering Physics, Universidade do Minho — final grade 17/20 (ECTS A)
- 🧭 Focused on designing, orchestrating and validating robust, scalable AI pipelines end to end
- 📄 Corresponding author of a paper accepted at INISTA 2026
- 🌍 Languages: Portuguese (native) · English (B2)
- 📫 Reach me at [email protected]
Safety-First Multi-Agent Chest-Pain Triage: A Manchester-Aligned Architecture that Surfaces LLM Under-Triage — Accepted at INISTA 2026
Multi-agent LLM system for emergency-department chest-pain triage, evaluated against real clinical data. Built on the Manchester Triage Protocol with a safety-first escalation design combining RAG, local LLMs and ML risk models. Developed with clinical collaborators from ULSAAve.
📡 Machine Learning Intern — NOS · Jul 2026 – Sep 2026
- Built an end-to-end data pipeline on BigQuery processing ~125M daily records to detect and rank mobile-network quality hotspots at national scale
- Designed a two-level geospatial clustering system, re-architecting it to run inside BigQuery for scale (per-site runtime cut by an order of magnitude)
- Developed a mobility-analysis module (community detection) and validated the model against 5,600+ customer-satisfaction survey responses
- Delivered results through interactive Power BI dashboards on live data, with end-to-end system documentation
- Stack:
PythonSQLBigQueryGCPPower BIgeospatial analysisclustering
🐦 EMG Signal Acquisition Intern — BiRDLAB · Jun 2023 – Aug 2023
- Built a real-time EMG acquisition & transmission pipeline on Arduino + STM32
- Designed a 12th-order Butterworth band-pass filter (20–450 Hz) in C++ at a 1200 Hz sampling rate
- Cut UART payload size by 75% with a custom float→16-bit encoding (stable 249,600 bps)
- Stack:
C++STM32ArduinoUARTDigital Signal Processing
🎓 Event Logistics Lead — NEFUM (Physics Students' Union, U. Minho) · Jul 2022 – Jul 2024
- Directed logistics for 2 major academic events (~120 attendees each)
- Planned and ran lectures & workshops for Physics / Engineering Physics students
| Project | What makes it interesting | Stack |
|---|---|---|
| ♟️ Grand Master AI | Chess agent built from scratch — Dueling Double DQN with legal-action masking, Prioritized Experience Replay, potential-based reward shaping and a three-stage curriculum · Gymnasium-compatible env · 70 pytest tests | Reinforcement Learning PyTorch Gymnasium |
| Project | What makes it interesting | Stack |
|---|---|---|
| 🥇 AI-Generated Text Detection | 1st place in all 3 submissions (out of 25 teams) — multi-class classifier for Google / Mistral / Meta / OpenAI text · Grade 19/20 | Deep Learning PyTorch |
| 🩻 ERCP Medical Image Classification | Multi-class deep learning with equipment-bias removal via SAM3 and model ensembles · Grade 19/20 | Deep Learning PyTorch |
| 🤖 FS Rules AI Assistant | 100% offline RAG agent for Formula Student regulations, with accurate cited sources · Grade 18/20 | Ollama Gemma 3 12B Flask |
| 🏛️ SmartStudyRoom — Multi-Agent System | Distributed library management with SPADE/XMPP, FIPA-ACL & Contract Net negotiation, real-time dashboard · Grade 20/20 | Multi-Agent Systems Python |
| 🏎️ Autonomous FS Racing Agent | RL agent (SAC/PPO) in a 2D simulator with FS-AI rules, procedural tracks & domain randomization · Grade 19.5/20 | Reinforcement Learning |
| 🏅 Porto Traffic Flow Prediction | 4th / 57 teams in a university Kaggle competition — full CRISP-DM pipeline · Grade 18.2/20 | scikit-learn Pandas |
| 📖 Study-Room Occupancy & Comfort Monitoring | Low-cost distributed IoT system — 2× ESP32 nodes, YOLOv11 occupancy detection, web dashboard & Android app · Grade 19/20 | ESP32 YOLOv11 IoT |
| 🩺 Chest-Pain Triage System | Manchester Protocol triage (Yellow–Blue) combining a multi-agent architecture, local LLMs, RAG & ML — basis for the INISTA 2026 paper · Grade 20/20 | Multi-Agent Systems RAG LLM |
| ⚡ D3.js Data Story — Energy Transition | Reveals the two sides of the energy transition: renewables booming in electricity, fossil fuels still dominating primary energy · Grade 19/20 | D3.js JavaScript |
| 🛢️ D3.js Data Story — 2026 Hormuz Crisis | Traces the price of the 2026 Iran war from the Strait of Hormuz to the Portuguese gas pump · Grade 20/20 | D3.js JavaScript |
| 🎯 Reinforcement Learning Portfolio | 5 environments · 20+ algorithms (DP, MC, TD, SARSA, Q-Learning, REINFORCE, MCTS, DQN, AlphaZero) · 71 pytest tests · Grade 20/20 | Gymnasium PyTorch |
| 🎮 Millionaire — Prolog Edition | Logic-driven game engine + GenAI "Phone a Friend" lifeline · Grade 17/20 | Prolog LLM |
| 🗺️ Multimodal Route Optimization (Porto) | Bi-criterion shortest path (time + CO₂) over a complex transport graph · Grade 18/20 | Nature-Inspired Computing |
| 🏢 Tech Retail Decision Support System | Star-constellation Data Warehouse (PostgreSQL, CSV, MongoDB) with NLP sentiment analysis & Metabase dashboards · Grade 17/20 | PostgreSQL MongoDB NLP |
Most academic projects above were built in teams of 3–4 — see each repository's commit history and contributor graph for individual contributions.
Focus
AI & Machine Learning
Data Science & Analysis
Programming Languages
Web, DBs & DevOps
Hardware & Signals