Fonaments dels sistemes intel·ligents
Introducció
Abans de poder construir, avaluar o desplegar sistemes d'intel·ligència artificial, cal entendre de què parlem quan diem que una màquina és "intel·ligent". Aquesta pregunta, aparentment senzilla, ha generat dècades de debat filosòfic, científic i tecnològic. En aquest tema aprofundirem en els fonaments conceptuals que sustenten tota la IA moderna: la seva història, els seus paradigmes, l'arquitectura dels agents intel·ligents i les tècniques de raonament que s'apliquen en problemes reals.
L'objectiu no és memoritzar dates i noms, sinó construir un marc mental sòlid que permeti situar qualsevol tecnologia d'IA dins un context més ampli i prendre decisions informades sobre quan i com aplicar-la.
1. Orígens i evolució de la intel·ligència artificial
1.1. Els precursors
La idea de crear màquines que "pensin" és anterior als ordinadors moderns. El matemàtic britànic Alan Turing va plantejar el 1950, en el seu article seminal "Computing Machinery and Intelligence", la pregunta fonamental: "Can machines think?" Per evitar el debat filosòfic sobre la definició de pensament, va proposar el famós Test d'Imitació (Test de Turing): si un examinador humà no pot distingir les respostes d'una màquina de les d'un humà en una conversa textual, la màquina pot considerar-se intel·ligent.
Altres precursors clau: - Warren McCulloch i Walter Pitts (1943): primera descripció matemàtica d'una neurona artificial. - Norbert Wiener (1948): fundació de la cibernètica, l'estudi dels sistemes de control i comunicació. - Claude Shannon (1950): primer programa de joc d'escacs, demostrant que les màquines poden realitzar tasques considerades "intel·ligents".
1.2. El naixement oficial de la IA (1956)
L'any 1956 és considerat el moment fundacional de la IA com a disciplina científica. A la Conferència de Dartmouth, organitzada per John McCarthy, Marvin Minsky, Claude Shannon i Nathaniel Rochester, es va encunyar per primera vegada el terme "artificial intelligence" i es va establir l'agenda de recerca: màquines que utilitzen el llenguatge, que aprenen, que es millorin a si mateixes i que resolguin problemes.
McCarthy és, a més, el creador del llenguatge LISP (1958), durant dècades el principal llenguatge de programació de sistemes d'IA simbòlica.
1.3. Els hiverns de la IA
La història de la IA no és lineal. Ha patit dos periódes d'estancament ("hiverns") caracteritzats per la reducció dràstica del finançament i l'interès:
Primer hivern (1974-1980): Les limitacions computacionals i la incapacitat de les tècniques simbòliques per escalar van defraudar les expectatives excessives. L'informe Lighthill (1973) al Regne Unit va criticar durament el camp.
Segon hivern (1987-1993): La decepció amb els sistemes experts comercials, que resultaven costosos de mantenir i fràgils davant casos no previstos, va reduir novament el finançament.
1.4. El renaixement: deep learning i la revolució actual
El ressorgiment de la IA modern s'atribueix principalment als avenços en aprenentatge profund (deep learning), impulsats per tres factors:
- Dades massives: l'explosió d'internet ha generat quantitats ingents de dades estructurades i no estructurades.
- Capacitat computacional: les GPU (targetes gràfiques), originalment dissenyades per a videojocs, s'han revelat ideals per a l'entrenament de xarxes neuronals.
- Avenços algorítmics: la propagació cap enrere (backpropagation), les xarxes convolucionals (CNNs) i l'arquitectura Transformer han canviat el panorama.
Els Tres Pares del Deep Learning — Geoffrey Hinton (Universitat de Toronto / Google), Yann LeCun (NYU / Meta) i Yoshua Bengio (Universitat de Montréal) — van rebre el Premi Turing 2018 pels seus contribucions fonamentals.
timeline
title Evolucio de la IA
1950 : Test de Turing
: Neurona McCulloch-Pitts
1956 : Conferencia de Dartmouth
: Neix el terme IA
1966 : Primer chatbot ELIZA (MIT)
1974 : Primer hivern de la IA
1980 : Sistemes experts XCON, MYCIN
1987 : Segon hivern de la IA
1997 : Deep Blue guanya a Kasparov
2006 : Hinton reinventa deep learning
2012 : AlexNet revoluciona la visio
2017 : Paper Attention is All You Need
2020 : GPT-3 - 175B parametres
2022 : ChatGPT - 100M usuaris en 2 mesos
2024 : GPT-4o multimodal - AI Act UE
2025 : Agents IA autonoms - Modularitat
1.5. El Test de Turing i les seves limitacions
El Test de Turing ha estat objecte de crítica constant des de la seva proposta. Les principals objeccions inclouen:
L'argument de la Cambra Xinesa (John Searle, 1980): Una persona tancada en una habitació que segueix regles per manipular símbols xinesos pot respondre correctament en xinès sense "entendre" el contingut. De la mateixa manera, una màquina pot simular comprensió sense tenir-la. Searle distingeix entre sintaxi (manipulació de símbols) i semàntica (comprensió del significat).
El problema de la forma d'interpretació: El test mesura la capacitat d'enganar un humà, no la intel·ligència en si. Un sistema pot superar el test usant trucs conversacionals (canviar de tema, admetre ignorància, fer preguntes) sense ser capaç de resoldre cap problema real.
El test CAPTCHA inversa: De fet, avui dia molts LLMs (GPT-4, Claude 3.5) superarien el Test de Turing original amb facilitat. Alguns investigadors argumenten que ja l'han superat. Però continuem sense considerar-los "intel·ligents" en el sentit humà complet.
Alternatives al Test de Turing: - Test de Winograd: comprensió de referències anafòriques ambigues. - BIG-bench: conjunt de tasques difícils que van més enllà de la memòria. - ARC-AGI (François Chollet): mesura de la capacitat d'adaptació a problemes nous amb exemples mínims.
Miniactivitat — El Test de Turing avui
Accedeix a Claude.ai o ChatGPT. Dissenya una seqüència de 5 preguntes que intentin "enganxar" el model i demostrar que no és humà. Registra les respostes i analitza: en quin moment el model falla? On té el comportament més "humà"? Comparteix el resultat a l'aula virtual.
2. Paradigmes de la IA
2.1. Paradigma simbòlic (GOFAI)
El paradigma simbòlic, dominant durant les dècades de 1960-1980, part de la premissa que la intel·ligència pot representar-se com la manipulació de símbols i regles lògiques. El coneixement es codifica explícitament per humans experts.
Característiques: - Representació del coneixement: lògica de primer ordre, xarxes semàntiques, frames - Raonament: deducció, inducció, abducció - Explicabilitat: les decisions poden traçar-se pas a pas - Fragilitat: no tolera dades incompletes, sorolloses o situacions no previstes
Exemples clàssics: - MYCIN (Stanford, 1972): diagnòstic de malalties infeccioses amb 600 regles IF-THEN. Primera demostració que un sistema podia superar metges humans en un domini específic. - XCON (Digital Equipment Corporation, 1980): configuració de sistemes d'ordinadors. Va estalviar a DEC $25 milions a l'any però requeria manteniment constant. - GPS (General Problem Solver, Newell i Simon, 1957): primer intent d'un solucionador de problemes de propòsit general.
2.2. Paradigma connexionista
El paradigma connexionista modela la intel·ligència com l'emergència de patrons a partir de la interconnexió massiva d'unitats simples (neurones artificials). El coneixement no es codifica explícitament: emergeix del procés d'entrenament amb dades.
Característiques: - Representació del coneixement: distribuïda, en els pesos de la xarxa - Aprenentatge: gradient descent, backpropagation - Robustesa: tolera soroll i generalitza bé - Caixa negra: difícil d'interpretar per què pren una decisió concreta
Evolució de les arquitectures:
graph LR
P[Perceptron 1957] --> MLP[Multilayer Perceptron 1986]
MLP --> CNN[CNN LeNet 1989]
CNN --> RNN[RNN-LSTM 1997]
RNN --> ATTN[Attention 2014]
ATTN --> TR[Transformer 2017]
TR --> BERT[BERT 2018]
BERT --> GPT[GPT-3 2020]
GPT --> LLMS[LLMs actuals 2024]
2.3. Paradigma evolucionari
Inspira't en el procés de selecció natural de Darwin. Una població de solucions candidates evoluciona a través de mutació, creuament (crossover) i selecció basada en una funció d'aptitud (fitness function).
Tipus principals: - Algorismes Genètics (GA): evolucionen seqüències binàries o cadenes de caràcters. - Programació Genètica (GP): evolucionen programes o arbres d'expressió. - Evolució Diferencial (DE): optimització contínua, popular en aprenentatge automàtic. - Neuroevolució (NEAT): evolucionen les topologies i pesos de xarxes neuronals.
Aplicació moderna: OpenAI va usar Evolution Strategies per entrenar agents de videojocs. Els algorismes evolucionaris s'usen en optimització d'hiperparàmetres de models de ML.
2.4. Paradigma híbrid: IA neuro-simbòlica
El neuro-symbolic AI combina la capacitat de generalitzar dels models connexionistes amb la precisió i explicabilitat del raonament simbòlic. És una de les fronteres de recerca més actives el 2025.
Exemples representatius: - AlphaGo / AlphaZero (DeepMind): combina Monte Carlo Tree Search (MCTS, simbòlic) amb xarxes neuronals profundes per a l'avaluació de posicions. - RAG (Retrieval-Augmented Generation): combina la recuperació precisa de documents (sistema de cerca, "simbòlic") amb la generació fluent dels LLMs (connexionista). - IBM Neuro-Symbolic Concept Learner: aprèn conceptes visuals combinant percepció neuronal amb raonament lògic.
3. Agents intel·ligents
3.1. Definició d'agent intel·ligent
Un agent intel·ligent és qualsevol entitat que percep el seu entorn a través de sensors i actua sobre ell a través d'actuadors, amb l'objectiu de maximitzar una mesura de rendiment.
Aquesta definició, de Russell i Norvig (l'obra de referència "Artificial Intelligence: A Modern Approach"), és deliberadament àmplia: engloba des d'un termòstat fins a un robot humanoide, passant per un assistent virtual o un agent de trading financer.
La clau és el concepte d'agent racional: no n'hi ha prou amb actuar, cal actuar de la forma correcta donat el que sap i el que ha percebut.
3.2. Arquitectura PEAS
Per caracteritzar completament un agent, usem el marc PEAS:
| Lletra | Significat | Pregunta |
|---|---|---|
| P | Performance measure | Com mesurem l'èxit de l'agent? |
| E | Environment | En quin entorn opera l'agent? |
| A | Actuators | Com pot actuar sobre l'entorn? |
| S | Sensors | Què percep l'agent? |
Exemples pràctics d'anàlisi PEAS:
Cotxe autònom (Tesla Autopilot): - P: seguretat (zero accidents), temps de trajecte, eficiència energètica, confort del passatger - E: carreteres urbanes i autopistes, altres vehicles, vianants, senyalització, clima variable - A: accelerador, frenada, direcció, llums, botzina - S: càmeres (8), radar, ultrasons, GPS, dades d'actualització OTA
Assistent virtual (Claude, ChatGPT): - P: satisfacció de l'usuari, precisió de la resposta, absència d'al·lucinacions, seguretat - E: interfície de text/veu, internet (opcional), historial de conversa - A: generació de text, execució de codi (tool use), cerca web - S: text d'entrada de l'usuari, historial de conversa, context del sistema
Robot de magatzem (Amazon Kiva): - P: productes per hora, errors de picking, col·lisions zero - E: magatzem estructurat, passadissos, altres robots, humans ocasionals - A: motors de desplaçament, braç robòtic, ventoses, plataforma elevadora - S: sensors de proximitat, càmeres de visió artificial, codi QR del terra, RFID
3.3. Tipus d'entorns
Els entorns on operen els agents es classifiquen segons diverses dimensions:
| Dimensió | Opcions | Exemple |
|---|---|---|
| Observabilitat | Completament observable / Parcialment observable | Escacs vs. Pòquer |
| Determinisme | Determinista / Estocàstic | Laberint sense atzar vs. Trànsit real |
| Episodicitat | Episòdic / Seqüencial | Classificació d'imatges vs. Joc d'escacs |
| Dinamisme | Estàtic / Dinàmic / Semidinàmic | Creuer de paraules vs. Conducció |
| Continuïtat | Discret / Continu | Escacs vs. Robòtica |
| Agents | Individual / Multi-agent | Solitari vs. Subhastes en línia |
3.4. Tipus d'agents per arquitectura
Agent de reflexos simples (Simple Reflex Agent) Actua únicament basant-se en la percepció actual, sense memòria. Implementat com a conjunt de regles IF-THEN. Exemple: termòstat, semàfor sensor.
Agent de reflexos basat en model (Model-based Reflex Agent) Manté un estat intern del món (model del món). Pot actuar en entorns parcialment observables. Exemple: aspiradora que recorda quines cel·les ha netejat.
Agent basat en objectius (Goal-based Agent) Combina el model del món amb objectius explícits. Planifica una seqüència d'accions per assolir-los. Exemple: planificador de rutes GPS.
Agent basat en utilitat (Utility-based Agent) Assigna una puntuació d'utilitat a cada estat possible. Maximitza l'utilitat esperada quan hi ha conflictes entre objectius o incertesa. Exemple: agent de trading financer.
Agent que aprèn (Learning Agent) Millora el seu rendiment a través de l'experiència. Compost de: element d'aprenentatge, element de rendiment, crític i generador de problemes. Exemple: sistemes de recomanació de Netflix o Spotify.
graph TD
AG[Agent Intel-ligent] --> RS[Reflexos Simples]
AG --> RM[Reflexos amb Model]
AG --> GO[Basat en Objectius]
AG --> UT[Basat en Utilitat]
AG --> LA[Agent que Aprèn]
RS --> EX1[Exemple: Termòstat]
RM --> EX2[Exemple: Robot aspiradora]
GO --> EX3[Exemple: GPS navigation]
UT --> EX4[Exemple: Agent trading]
LA --> EX5[Exemple: Netflix Recommender]
Miniactivitat AC5072 — Anàlisi PEAS
Tria un dels següents sistemes i realitza una anàlisi PEAS completa (mínim 3 elements per cada lletra), classificació del tipus d'entorn i determinació del tipus d'agent:
- a) Sistema de recomanació de Spotify
- b) Drone de lliurament d'Amazon Prime Air
- c) Sistema de moderació automàtica de comentaris de Twitter/X
- d) Robot cirurgià da Vinci
Entrega el resultat en format taula a l'aula virtual.
4. Mapa d'aplicació de la IA per sectors
4.1. Salut i medicina
La sanitat és un dels sectors on la IA té un impacte més transformador i també on els riscos són més alts:
Diagnòstic per imatge: Models de visió artificial (CNN) que analitzen radiografies, TAC i RM amb una precisió igual o superior als especialistes humans en tasques concretes. Google Health va demostrar el 2020 que la seva IA detectava el càncer de mama en mamografies amb menys falsos positius i negatius que els radiòlegs.
Medicina de precisió: Anàlisi genòmica per personalitzar tractaments. Foundation Medicine (Roche) usa IA per analitzar perfils genòmics tumorals i recomanar teràpies dirigides.
Descoberta de fàrmacs: AlphaFold 3 (DeepMind, 2024) prediu l'estructura de proteïnes i les seves interaccions amb molècules, accelerant la fase de descoberta de drogues de 5-10 anys a mesos en alguns casos.
Seguiment de pacients: Wearables i sensors IoT alimenten models predictius que alerten sobre episodis cardíacs o crisis d'asma hores abans que ocorrin.
4.2. Finances i banca
Detecció de frau: Sistemes com Mastercard Decision Intelligence analitzen cada transacció en menys de 50 mil·lisegons contra patrons de milers de milions de transaccions anteriors.
Scoring creditici: Models de ML substitueixen (o complementen) els sistemes de puntuació FICO tradicionals, incorporant dades alternatives (comportament de consum, xarxes socials —amb limitacions ètico-legals—).
Trading algorítmic: Fons com Renaissance Technologies o Two Sigma usen models estadístics i IA per operacions de alta freqüència (HFT) que executen milers d'operacions per segon.
Assessoria financera (Robo-advisors): Plataformes com Betterment o Wealthfront gestionen carteres d'inversió automàticament, personalitzant l'estratègia al perfil de risc de cada client.
4.3. Manufactura i logística
Manteniment predictiu: Sensors IoT + models de sèries temporals prediuen quan una màquina fallarà antes que ho faci. Siemens reporta una reducció del 30% en temps de parada no planificada.
Control de qualitat visual: Sistemes YOLO o modells similars detecten defectes imperceptibles a l'ull humà en línies de producció que corren a 10 metres per segon.
Optimització logística: Amazon usa IA per optimitzar les rutes de 750.000 robots de magatzem, la ubicació d'inventari (productes populars al centre del magatzem) i la previsió de demanda (comandes anticipades).
4.4. Educació
Tutoria intel·ligent: Sistemes com Khan Academy Khanmigo adapten el ritme i la dificultat als progressos de cada alumne, identificant exactament en quin concepte s'ha encallat.
Detecció d'abandó: Models que analitzen el comportament en plataformes e-learning (freqüència d'accés, temps de resposta, patrons d'error) i alerten el professorat quan un alumne és en risc d'abandonament.
Generació de contingut: LLMs que ajuden a crear exercicis adaptats al nivell de l'alumne, múltiples variants d'un problema o explicacions alternatives.
Reflexió professional
Com a futurs professionals IABD, el vostre valor no serà saber usar les eines d'IA (que tothom sabrà fer) sinó entendre les seves limitacions, saber quina eina és adequada per a cada problema i poder comunicar els riscos i beneficis als no tècnics. Aquesta visió crítica i transversal és el que diferencia un especialista IABD d'un usuari avançat.
5. Models d'automatització
5.1. RPA — Robotic Process Automation
L'RPA automatitza tasques repetitives i basades en regles que els humans realitzen en interfícies de programari, sense modificar els sistemes subjacents. Un robot RPA "veu" la pantalla de la mateixa manera que un humà i l'opera amb clics, formularis i extraccions de dades.
Característiques: - No requereix IA: opera sobre regles deterministes - Implementació ràpida (setmanes vs. mesos) - Fràgil davant canvis en la interfície de l'aplicació - Exemples: processar factures, copiar dades entre sistemes, generar informes periòdics
Eines principals: UiPath, Blue Prism, Automation Anywhere, Microsoft Power Automate
Casos d'ús típics: - Reconciliació comptable: comparar dades de dos sistemes ERP - Alta de nous empleats: crear comptes en múltiples sistemes (AD, Slack, Jira, etc.) - Processament de comandes: extreure dades d'emails i introduir-les al ERP
5.2. IPA — Intelligent Process Automation
L'IPA combina RPA amb tècniques d'IA (OCR, NLP, ML, visió artificial) per automatitzar processos que impliquen dades no estructurades o decisions complexes.
RPA = Automatitzar tasques estructurades
IPA = RPA + IA = Automatitzar tasques que requereixen "comprensió"
Components típics d'una solució IPA:
graph LR
DOC[Documents PDF-Emails-Imatges] --> OCR[OCR - Extraccio de text]
OCR --> NLP[NLP - Comprensio del contingut]
NLP --> ML[ML - Classificacio i decisio]
ML --> RPA[RPA - Execucio de l accio]
RPA --> OUT[Sistema de destinacio ERP-CRM]
Exemple real: Una asseguradora rep 10.000 sinistres al mes per email, PDF i fotografies. Un sistema IPA: 1. OCR extreu el text de PDFs i imatges 2. NLP identifica el tipus de sinistre, les parts involucrades i l'import reclamat 3. Un model de ML classifica el nivell de risc i decideix si cal revisió humana 4. RPA introdueix la reclamació al sistema de gestió de sinistres 5. Un LLM genera una resposta personalitzada al client en 3 idiomes
Estalvi estimat: de 15 minuts per sinistre (humà) a 30 segons (IPA), amb una taxa de revisió humana del 10% dels casos.
5.3. IA Generativa aplicada als negocis
L'IA generativa (GenAI) representa el salt qualitatiu més important dels darrers anys. A diferència de la IA predictiva (que classifica o prediu a partir de dades), la GenAI crea contingut nou: text, codi, imatges, àudio, vídeo.
Casos d'ús empresarials consolidats el 2025:
| Àrea | Cas d'ús | Exemple |
|---|---|---|
| Màrqueting | Generació de contingut | Jasper.ai per a posts de blog, copies publicitàries |
| Servei al client | Chatbots conversacionals avançats | Intercom Fin, Zendesk AI |
| Desenvolupament | Assistència al codi | GitHub Copilot, Cursor, Tabnine |
| Legal | Revisió de contractes | Harvey AI, Lexion |
| RRHH | Screening de candidats, onboarding | HireVue, Leena AI |
| Salut | Redacció de notes clíniques | Nuance DAX, Abridge |
| Educació | Tutoria personalitzada | Khan Academy Khanmigo, Duolingo Max |
Riescs de la GenAI empresarial
L'ús de LLMs en entorns empresarials presenta riscos específics que cal gestionar:
- Confidencialitat: si s'envien dades de l'empresa a APIs externes (OpenAI, Anthropic), cal revisar els termes de servei.
- Al·lucinació: els LLMs poden generar informació falsa però plausible. Cal sempre verificar les dades crítiques.
- Qualitat inconsistent: el mateix prompt pot donar resultats molt diferents. Cal establir processos de revisió.
- Dependència del proveïdor: construir processos crítics sobre APIs propietàries crea risc de dependència.
6. Raonament imprecís i lògica difusa
6.1. Limitacions de la lògica clàssica
La lògica clàssica treballa amb valors binaris (cert/fals, 0/1). Però el món real és ple d'incertesa i gradació. Preguntes com "fa molt fred?" o "aquest pacient és obès?" no admeten respostes binàries simples.
El matemàtic Lotfi Zadeh va proposar el 1965 la lògica difusa (fuzzy logic) com a extensió de la lògica clàssica que permet valors de pertinença entre 0 i 1 (no només 0 o 1).
6.2. Conjunts difusos i funcions de pertinença
En un conjunt clàssic, un element pertany o no pertany al conjunt. En un conjunt difús, l'element pertany amb un grau entre 0 i 1.
Exemple: el conjunt "temperatura alta" per a un sistema de climatització: - Lògica clàssica: temperatura alta = True si T > 25°C, False altrament - Lògica difusa: a 20°C, grau de pertinença = 0.2; a 25°C = 0.5; a 30°C = 0.9; a 35°C = 1.0
Les funcions de pertinença defineixen com calcular el grau de pertinença. Les més comunes són: - Triangular: màxim en un punt, decreix linealment a banda i banda - Trapezoïdal: màxim en un interval, decreix als extrems - Gaussiana: distribució en forma de campana
6.3. Variables lingüístiques
Una variable lingüística és una variable els valors de la qual no són números sinó paraules o etiquetes en linguística natural.
Exemple: el control d'un ventilador de refrigeració d'un servidor
Variable lingüística: TEMPERATURA
Valors lingüístics: {MOLT_FREDA, FREDA, MODERADA, CALENTA, MOLT_CALENTA}
Variable lingüística: VELOCITAT_VENTILADOR
Valors lingüístics: {ATURADA, LENTA, MODERADA, RAPIDA, MAXIMA}
Regles difuses:
SI temperatura és MOLT_CALENTA, LLAVORS velocitat és MAXIMA
SI temperatura és CALENTA, LLAVORS velocitat és RAPIDA
SI temperatura és MODERADA, LLAVORS velocitat és MODERADA
SI temperatura és FREDA, LLAVORS velocitat és LENTA
SI temperatura és MOLT_FREDA, LLAVORS velocitat és ATURADA
6.4. Sistema difús complet: fases
Un sistema de control difús consta de quatre fases:
- Fuzzificació: convertir els valors crisp (precisos) d'entrada en graus de pertinença
- Avaluació de regles: aplicar les regles IF-THEN usant operadors difusos (AND=mínim, OR=màxim, NOT=1-x)
- Agregació: combinar les sortides de totes les regles actives
- Defuzzificació: convertir el conjunt difus de sortida en un valor crisp precís (mètode del centroide)
Implementació en Python amb scikit-fuzzy:
# Instal·lació: pip install scikit-fuzzy
import numpy as np
import skfuzzy as fuzz
from skfuzzy import control as ctrl
# Definim les variables d'entrada i sortida
temperatura = ctrl.Antecedent(np.arange(0, 41, 1), 'temperatura')
velocitat = ctrl.Consequent(np.arange(0, 101, 1), 'velocitat')
# Definim les funcions de pertinença per a temperatura
temperatura['freda'] = fuzz.trimf(temperatura.universe, [0, 0, 20])
temperatura['moderada'] = fuzz.trimf(temperatura.universe, [15, 25, 35])
temperatura['calenta'] = fuzz.trimf(temperatura.universe, [30, 40, 40])
# Definim les funcions de pertinença per a velocitat del ventilador
velocitat['lenta'] = fuzz.trimf(velocitat.universe, [0, 0, 40])
velocitat['moderada'] = fuzz.trimf(velocitat.universe, [30, 50, 70])
velocitat['rapida'] = fuzz.trimf(velocitat.universe, [60, 100, 100])
# Definim les regles difuses
regla1 = ctrl.Rule(temperatura['freda'], velocitat['lenta'])
regla2 = ctrl.Rule(temperatura['moderada'], velocitat['moderada'])
regla3 = ctrl.Rule(temperatura['calenta'], velocitat['rapida'])
# Creem el sistema de control
sistema_control = ctrl.ControlSystem([regla1, regla2, regla3])
sistema = ctrl.ControlSystemSimulation(sistema_control)
# Exemple: temperatura = 30°C
sistema.input['temperatura'] = 30
sistema.compute()
print(f"Velocitat del ventilador: {sistema.output['velocitat']:.1f}%")
# Sortida esperada: aproximadament 65-75%
Aplicacions reals de la lògica difusa: - Control de rentadores automàtiques (Matsushita, 1990): determina el cicle de rentat segons la quantitat i el tipus de brutícia - Càmeres de fotos (Sony, Canon): sistema de enfocament automàtic - Trens d'alta velocitat Shinkansen: control de velocitat i confort de frenada - Sistemes de climatització d'edificis - Diagnòstic mèdic en sistemes experts
7. Sistemes basats en regles
7.1. Arquitectura d'un sistema basat en regles
Un sistema basat en regles (Rule-Based System o RBS) és un sistema que representa el coneixement com a conjunt de regles condicionals de la forma IF
Arquitectura típica:
┌─────────────────────────────────────────────────────┐
│ SISTEMA BASAT EN REGLES │
│ │
│ ┌─────────────────┐ ┌──────────────────────┐ │
│ │ BASE DE │ │ MOTOR D'INFERÈNCIA │ │
│ │ CONEIXEMENT │◄──►│ │ │
│ │ (Regles IF-THEN)│ │ • Forward Chaining │ │
│ └─────────────────┘ │ • Backward Chaining │ │
│ │ • Algorisme RETE │ │
│ ┌─────────────────┐ └──────────┬───────────┘ │
│ │ MEMÒRIA DE │ │ │
│ │ TREBALL │◄──────────────┘ │
│ │ (Fets actuals) │ │
│ └─────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────┐ │
│ │ INTERFÍCIE USUARI / EXPLICACIÓ │ │
│ └─────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────┘
7.2. Encadenament cap endavant (Forward Chaining)
En l'encadenament cap endavant (forward chaining o data-driven reasoning), el sistema part dels fets coneguts i aplica regles per derivar nous fets fins arribar a una conclusió.
Exemple de diagnòstic de xarxa:
Fets inicials:
- La xarxa no funciona
- El router té el LED de xarxa encès
- El switch té el LED apagat
Regles:
R1: SI (switch_apagat) LLAVORS conclusio = "Problema d'alimentacio del switch"
R2: SI (router_ok AND switch_apagat) LLAVORS accio = "Revisar alimentacio switch"
Execucio forward chaining:
1. Comprova R1: switch_apagat = TRUE → conclou "Problema d'alimentacio del switch"
2. Comprova R2: router_ok = TRUE AND switch_apagat = TRUE → suggereix "Revisar alimentacio"
7.3. Encadenament cap enrere (Backward Chaining)
En l'encadenament cap enrere (backward chaining o goal-driven reasoning), el sistema part d'un objectiu (hipòtesi) i treballa cap enrere per trobar les condicions que el suportarien.
Usat en Prolog i en molts sistemes experts mèdics. El sistema pregunta a l'usuari els fets necessaris per confirmar o refutar la hipòtesi.
7.4. CLIPS — C Language Integrated Production System
CLIPS és un sistema expert de propòsit general desenvolupat per la NASA el 1985, molt usat per a formació i prototipatge de sistemes basats en regles.
; Exemple CLIPS: Diagnòstic d'una averia de cotxe
; Definim plantilles de fets
(deftemplate averia
(slot simptoma))
; Definim les regles de diagnòstic
(defrule motor-no-arranca-bateria-baixa
(averia (simptoma "motor-no-arranca"))
(averia (simptoma "llums-febles"))
=>
(printout t "Diagnòstic: Probable bateria descarregada" crlf)
(printout t "Acció: Comprova la tensió de la bateria amb un voltímetre" crlf))
(defrule motor-no-arranca-starter-mort
(averia (simptoma "motor-no-arranca"))
(averia (simptoma "soroll-clic-repetitiu"))
=>
(printout t "Diagnòstic: Possible starter defectuós" crlf)
(printout t "Acció: Comprova el motor d'arrencada" crlf))
; Afegir fets i executar
(assert (averia (simptoma "motor-no-arranca")))
(assert (averia (simptoma "llums-febles")))
(run)
7.5. Drools — Motor de regles empresarial
Drools (Red Hat) és el motor de regles empresarial més usat a la indústria. S'integra amb Java i Spring Boot i permet gestionar milers de regles de negoci.
// Exemple de regla Drools per a aprovació de crèdit
rule "Aprovació automàtica crèdit baix risc"
when
$client : Client(
ingressosMensuals > 2000,
historialCreditici == "EXCEL-LENT",
ratioDeutePer100 < 30
)
$solicitud : SolicitudCredit(
importSolicitat < 10000,
client == $client
)
then
$solicitud.setEstat("APROVADA_AUTOMATICAMENT");
$solicitud.setTipusInteres(3.5);
update($solicitud);
System.out.println("Crèdit aprovat automàticament per a: " + $client.getNom());
end
rule "Revisió manual crèdit alt risc"
when
$client : Client(
ratioDeutePer100 >= 40
)
$solicitud : SolicitudCredit(
client == $client
)
then
$solicitud.setEstat("PENDENT_REVISIO_MANUAL");
$solicitud.setPrioritatRevisio("ALTA");
update($solicitud);
end
Miniactivitat AC5073 — Disseny de base de coneixement
Dissenya una base de coneixement per a un sistema expert senzill de la teva elecció. Ha de tenir:
- Un domini clar (diagnòstic IT, recomanació de plats, triatge mèdic bàsic, etc.)
- Mínim 10 fets bàsics
- Mínim 8 regles IF-THEN
- Almenys un exemple de forward chaining i un de backward chaining
Documenta el sistema en paper o Markdown indicant: domini, objectiu, fets, regles i un exemple d'execució pas a pas.
8. Exercici pràctic del tema
AC5074 — Comparativa de paradigmes i tria de model
Desenvolupa un document tècnic de 600-800 paraules que analitzi el següent cas:
Cas: Una empresa de distribució de productes farmacèutics vol automatitzar la gestió de comandes entrants que arriben per email, fax (escanejat a PDF) i portal web. El procés actual implica: llegir la comanda, verificar l'estoc, calcular el preu final (amb possibles descomptes per volum basats en regles de negoci complexes), generar l'albarà i enviar la confirmació al client.
Per a cadascun dels paradigmes/tecnologies següents, explica en quin aspecte del procés seria útil, per què i quines limitacions tindria: 1. RPA (Robotic Process Automation) 2. Sistema basat en regles (Drools) 3. Lògica difusa (per als descomptes) 4. LLM / IA Generativa (per a la lectura i comprensió de comandes per email) 5. Model de ML supervisat (opcional, si veus algun cas d'ús)
Conclou recomanant una arquitectura IPA que combini diverses d'aquestes tecnologies i justifica la teva elecció.
Consell per a l'exercici
No cal que implementis res en codi. L'objectiu és demostrar que saps identificar quin paradigma és adequat per a cada subproblema. Un bon enginyer d'IA sap quan NO usar aprenentatge automàtic i quan un sistema basat en regles és una solució millor, més barata i més explicable.