Zásadný rozdiel medzi myslením človeka a vykonávaním tradičných počítačových procesov je v tom, že myslenie človeka je založené na poznatkoch. Tradičné software pracujú na základe údajov a algoritmov. Algoritmické programy majú presne stanovené postupy príkazov a testov, určujúce presne za akých okolností, čo a s ktorými údajmi vykonať. Ak sa podarí nájsť takéto presne stanovené postupy ako vykonávať prácu s údajmi a zostaviť výsledné programy, dá sa problém riešiť tradičnými spôsobmi využitia výpočtovej techniky. Takýmto spôsobom sa dajú riešiť komplikované numerické výpočty pri databázových, informačných a automatizovaných systémoch riadenia technologických procesov. Ak sa nedá nájsť algoritmický postup, využívajú sa znalostné systémy na riešenia problému, ktoré chceme riešiť výpočtovou technikou .
V poslednom období sa čoraz viac objavujú v komerčných aplikáciách príklady využívania inteligentných technológií, pod ktorými rozumieme využívanie prostriedkov umelej inteligencie.
Počítačový systém hľadajúci riešenie problému v rozsahu určitého súboru tvrdení alebo istého zoskupenia znalostí, ktoré boli dané expertom pre danú špeciálnu oblasť sa nazývajú expertné systémy. Expertný systém je realizovaný rozsiahlou sústavou kooperujúcich programov, ktorých činnosť sa opiera o špecifické údajové štruktúry. Sú schopné kvalitou svojej činnosti rovnocenne nahradiť kvalifikovanú činnosť expertov v odboroch ich špecializácie. Jednotlivé programové celky tejto sústavy sú prvkami funkčne vymedzených a svojím poslaním odlišných modulov, ktorých vzájomné väzby vytvárajú architektúru znalostného systému.