Teknik har alltid handlat om att bygga bättre, snabbare och smartare maskiner. Expertsystem omfamnar detta koncept genom att använda avancerad datorlogik för att skapa programvara som verkar ”tänka” och fatta beslut på egen hand. Traditionellt byggt på boolesk logik – logik som endast använder sanna eller falska värden – använder expertsystem komplexa algoritmer för att beräkna svar från en stor databas med information. Om datorn inte kan fastställa det korrekta svaret antas det inte att programmet är fel utan att kunskapsbasen inte innehåller tillräckligt med information om ämnet.
När en dator måste fatta ett beslut bryts allt ihop till en serie sanna eller falska påståenden. Om den är programmerad att lysa när en knapp trycks in, ställer man in den på sann och om man inte trycker på knappen ställs den till falsk. Falskt betyder inget ljus medan sant tänder ljuset. Detta är grunden för datorlogik.
Ett expertsystem tar dessa sanna och falska svar till en ny nivå. Genom att kombinera en serie sanna och falska svar försöker datorn avgöra hur den ska reagera på en viss situation. Det kan ändra sitt svar baserat på det specifika mönstret och antalet sanna och falska svar.
Tanken bakom dessa system är baserad på hur människor tänker. Människor kan lagra stora mängder ny kunskap och fatta beslut baserat på tidigare kunskap. Datorn är programmerad att ”tänka” och fatta beslut baserat på den kunskap som finns i dess databas och på dess tidigare erfarenheter. På ett sätt är det som om datorn ”lär sig” av sina tidigare framgångar och misslyckanden.
Det finns två huvudformer av expertsystem. Det traditionella expertsystemet använder boolesk logik för att fatta sina beslut. Ett expertsystem med luddig logik gör det å andra sidan inte. Den beräknar ett intervall av värden som ligger mellan enkla sanna eller falska svar för att avgöra i vilken grad ett påstående är mer sant eller mer falskt.
Fuzzy expertsystem är mer människolika än traditionella expertsystem på det sätt de ”tänker”. Dessa expertsystem får inte höra specifika svar på ett problem, utan snarare ett påstående från vilket de drar ytterligare slutsatser. Denna process är känd som slutledning.
Till exempel, om ett uttalande lyder ”Alla honkatter är randiga. Miss Kitty är en honkatt”, skulle suddiga expertsystem dra slutsatsen att eftersom alla honkatter är randiga och Miss Kitty är en honkatt, så måste Miss Kitty vara randig. Fuzzy logic kan också beräkna mer komplicerade värden, som att bestämma sannolikheten för att en specifik honkatt blir randig om bara en procentandel av honkatterna har ränder. Traditionella expertsystem skulle behöva mycket mer instruktion för att nå samma slutsatser.