Opgaver. Henrik Bulskov Styltsvig. Efterår 2003



Relaterede dokumenter
Opgaver i Regelbaserede Ekspertsystemer

Henrik Bulskov Styltsvig

Henrik Bulskov Styltsvig

Sorteringsmaskinen. Hej med dig!

Sådan benytter du HOTLINEs ServiceDesk (SD)

På nedenstående billede skal du finde den figur som optræder nøjagtig 3 gange.

Rediger eller opret institutionsmedarbejder på en ungdomsuddannelse

Fredagseffekt en analyse af udskrivningstidspunktets betydning for patientens genindlæggelse

Releasebeskrivelse KMD Sag. Version Nyheder og ændringer i KMD Sag & KMD Sag EDH

Begrænsninger i SQL. Databaser, efterår Troels Andreasen

BILAG A SPØRGESKEMA. I denne At-vejledning præsenteres et kort spørgeskema med i alt 44 spørgsmål fordelt på otte skalaer.

Brugerguide Integration af erhvervsdata fra NN Markedsata til Microsoft Dynamics NAV 2015

Forskel på Infomedia og Copydan Tekst & Node?

Python 3 Matematik Programmerings kursus:

Forslag til løsning af Opgaver til ligningsløsning (side172)

Design ved normalisering

BOLIGØKONOMISK VIDENCENTER

Databasesystemer. Databaser, efterår Troels Andreasen. Efterår 2002

Om Jobkon til Samtalehåndbogen: Adgang til Jobkon

Vejledning til personlige funktioner på MIT DANSKE ARK ( eksklusive profil og cv) Indholdsfortegnelse:

Binære søgetræer. Nærmeste naboer Binære søgetræer Indsættelse Predecessor og successor Sletning Algoritmer på træer og trægennemløb.

Arduino kursus lektion 4:

Ligninger med reelle løsninger

Afstand fra et punkt til en linje

Nyhedsbrev til a-kasserne om ny bekendtgørelse om ophør med drift af selvstændig virksomhed (ny regel om udtræden på tro og love for medarbejdende

Få helt styr på NemID

Medarbejder - Løn og ansættelsesforhold (Rapport-ID: 46)

UANMODEDE HENVENDELSER (SPAM)

Dubletkontrol af kontaktpersoner

FIRST CARD EXECUTIVE

Information om TallyBee systemet 3. TBB2 & TBB6 Radioer 4. Mekanisk installation 5

SKI s rammeaftaler. Anja Piening Juridisk chef, SKI

Information Integration

SQL-opgaver 5 løsning

Økonomisk analyse. Danskernes sundhedsopfattelse af æg øges

Normalisering, del 2

Funktionel afhængighed

Variabel- sammenhænge

Skolemedarbejder 9. klasse. Brugervejledning Optagelse.dk

Trolling Master Bornholm 2016 Nyhedsbrev nr. 8

Fritidsjagtbevis Søg nyt fritidsjagtbevis, indberet fangst og forny dit fritidsjagtbevis

Ekstraordinær generalforsamling i Danske Andelskassers Bank A/S

Til stede: Peter Vestergaard, Charlotte Christoffersen, Mogens Frølund, Michael Jakobsen og Fleur Nauta

NY & FORBEDRET SIGNFLOW

formler og ligninger basis+g brikkerne til regning & matematik preben bernitt

Psykisk arbejdsmiljø og stress blandt medlemmerne af FOA

Programmering C. Casper Hermansen Klasse 2.7 Programmering C. Navn: Casper Hermansen. Klasse: 2.7. Fag: Programmering C

ER-modellen. Databaser, efterår Troels Andreasen. Efterår 2002

Vejle, den 29. oktober 2014

Vejledning - mitcfu.dk

Bogstavregning. Formler Reduktion Ligninger Bogstavregning Side 45

Fakturering kan foretages som en massefakturering eller for en enkelt ordre.

AU-HR Sharepoint Vejledning Medarbejder indplacering

STIL Styrelsen for It og Læring. Praktisk vejledning til skolerne

På besøget hos Køge Marina, Bådehavnen 2, 4600 Køge talte vi med havnemester Kenneth Højlund og en ansat havneassistent.

Brugerguide. Undervisere

Polynomier et introforløb til TII

Conventus brugervejledning

BRØK, DECIMALTAL OG PROCENT

Forslag til træningsøvelser U11 12

Pilot projekt - Fjernaflæste måler. Brian Truegaard Teamleder 2015

Ansøgervejledning for elever i 9. kl. Brugervejledning til Optagelse.dk

Transkript:

Regelbaserede ekspertsystemer Opgaver Henrik Bulskov Styltsvig Datalogiafdelingen, hus 42.1 Roskilde Universitetscenter Universitetsvej 1 Postboks 260 4000 Roskilde Telefon: 4674 2000 Fax: 4674 3072 www.dat.ruc.dk

Opgave 1 Lav et regelbaseret ekspertsystem. Vidensbasen er et lille bilen kan ikke starte eksempel. Systemet skal fungere ved at stille spørgsmål til brugeren der kan svare med enten ja eller nej. Henrik Bulskov Styltsvig 2

Opgave 1 - produktionsregler strøm(batteri) benzin tænding defect(starter) starte Henrik Bulskov Styltsvig 3

Opgave 1 - produktionsregler strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin Henrik Bulskov Styltsvig 4

Opgave 1 - produktionsregler strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk Henrik Bulskov Styltsvig 5

Opgave 1 - produktionsregler strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk klikker(starter) kører(starter) defekt(starter) Henrik Bulskov Styltsvig 6

Opgave 1 - produktionsregler strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk klikker(starter) kører(starter) defekt(starter) (elektrisk(benzinpumpe) ( strøm(benzinpumpe) stel(benzinpumpe)) ) (mekanisk(benzinpumpe) kører(benzinpumpe)) defekt(benzinpumpe) Henrik Bulskov Styltsvig 7

Opgave 1 - produktionsregler strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk klikker(starter) kører(starter) defekt(starter) (elektrisk(benzinpumpe) ( strøm(benzinpumpe) stel(benzinpumpe)) ) (mekanisk(benzinpumpe) kører(benzinpumpe)) defekt(tændkabler) defekt(benzinpumpe) defekt(strømfordeler) tænding Henrik Bulskov Styltsvig 8

Opgave 1 - eksempel strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk klikker(starter) kører(starter) defekt(starter) (elektrisk(benzinpumpe) ( strøm(benzinpumpe) stel(benzinpumpe)) ) (mekanisk(benzinpumpe) kører(benzinpumpe)) defekt(tændkabler) defekt(benzinpumpe) defekt(strømfordeler) tænding Henrik Bulskov Styltsvig 9

Opgave 1 - eksempel strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk klikker(starter) kører(starter) defekt(starter) (elektrisk(benzinpumpe) ( strøm(benzinpumpe) stel(benzinpumpe)) ) (mekanisk(benzinpumpe) kører(benzinpumpe)) defekt(tændkabler) defekt(benzinpumpe) defekt(strømfordeler) tænding Henrik Bulskov Styltsvig 10

Opgave 1 - eksempel strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk klikker(starter) kører(starter) defekt(starter) (elektrisk(benzinpumpe) ( strøm(benzinpumpe) stel(benzinpumpe)) ) (mekanisk(benzinpumpe) kører(benzinpumpe)) defekt(tændkabler) defekt(benzinpumpe) defekt(strømfordeler) tænding Henrik Bulskov Styltsvig 11

Opgave 1 - eksempel strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk klikker(starter) kører(starter) defekt(starter) (elektrisk(benzinpumpe) ( strøm(benzinpumpe) stel(benzinpumpe)) ) (mekanisk(benzinpumpe) kører(benzinpumpe)) defekt(tændkabler) defekt(benzinpumpe) defekt(strømfordeler) tænding Henrik Bulskov Styltsvig 12

Opgave 1 - eksempel strøm(batteri) benzin tænding defect(starter) starte tom(tank) benzitryk benzin defekt(benzinpumpe) stoppet(benzinfilter) stoppet(benzinslange) benzintryk klikker(starter) kører(starter) defekt(starter) (elektrisk(benzinpumpe) ( strøm(benzinpumpe) stel(benzinpumpe)) ) (mekanisk(benzinpumpe) kører(benzinpumpe)) defekt(tændkabler) defekt(benzinpumpe) defekt(strømfordeler) tænding Henrik Bulskov Styltsvig 13

Opgave 1 graffisk afbildning Henrik Bulskov Styltsvig 14

Opgave 1 eksempel Henrik Bulskov Styltsvig 15

Opgave 1 eksempel Henrik Bulskov Styltsvig 16

Opgave 1 eksempel Henrik Bulskov Styltsvig 17

Opgave 1 eksempel Kontroller tændkabler. Modstanden skal blive større, jo længere de er: Modstanden ligger typisk mellem 0,2 Kohm og 1,5 Kohm. Er tændkablerne i orden? Henrik Bulskov Styltsvig 18

Opgave 1 - repræsentation Henrik Bulskov Styltsvig 19

Opgave 1 - repræsentation Node { id = 2; parent = starte; desc = strøm(batteri); Henrik Bulskov Styltsvig 20

Opgave 1 - repræsentation Node { id = 2; parent = starte; desc = strøm(batteri); Node { id = 6; parent = strøm(batteri); question = Er der ikke strøm på batteriet? ; recommendation = Lad batteriet op eller køb et nyt. ; Henrik Bulskov Styltsvig 21

Opgave 1 - repræsentation Node { id = 2; parent = starte; desc = strøm(batteri); question = null; recommendation = null; Node { id = 6; parent = strøm(batteri); desc = Spørgsmål om strøm på batteriet ; question = Er der ikke strøm på batteriet? ; recommendation = Lad batteriet op eller køb et nyt. ; Henrik Bulskov Styltsvig 22

Opgave 1 - repræsentation PARENT RECOMMENDATION ID DESCRIPTION QUESTION Node PRIORITY * Node id : int parent : int desc : String question : String recommendation : String 1 strøm(batteri) benzin tænding defekt(starter) starte Henrik Bulskov Styltsvig 23

Opgave 1 dybde først søgning Henrik Bulskov Styltsvig 24

Opgave 1 - inferensmaskine Function SHELL(parentId) { Select all childern where parent = parentid while(nextchild) { if(childhasquestion) { answer = ask(question) if(answer = ja ) { print recommendation exit else SHELL(childId) Function ExpertSystem() { SHELL(0) print Kunne ikke løse problemet!!! ; Henrik Bulskov Styltsvig 25

Opgave 1 - inferensmaskine Function SHELL(parentId) { Select all childern where parent = parentid while(netchild) { if(childhasquestion) { answer = ask(question) if(answer = ja ) { print recommendation exit else SHELL(childId) Function ExpertSystem() { SHELL(0) print Kunne ikke løse problemet!!! ; Henrik Bulskov Styltsvig 26

Opgave 1 - inferensmaskine Function SHELL(parentId) { Select all childern where parent = parentid while(netchild) { if(childhasquestion) { answer = ask(question) if(answer = ja ) { print recommendation exit else SHELL(childId) Function ExpertSystem() { SHELL(0) print Kunne ikke løse problemet!!! ; Henrik Bulskov Styltsvig 27

Opgave 1 - inferensmaskine Function SHELL(parentId) { Select all childern where parent = parentid while(netchild) { if(childhasquestion) { answer = ask(question) if(answer = ja ) { print recommendation exit else SHELL(childId) Function ExpertSystem() { SHELL(0) print Kunne ikke løse problemet!!! ; Henrik Bulskov Styltsvig 28

Opgave 1 - inferensmaskine Function SHELL(parentId) { Select all childern where parent = parentid while(netchild) { if(childhasquestion) { answer = ask(question) if(answer = ja ) { print recommendation exit else SHELL(childId) Function ExpertSystem() { SHELL(0) print Kunne ikke løse problemet!!! ; Henrik Bulskov Styltsvig 29

Opgave 1 - inferensmaskine Function SHELL(parentId) { Select all childern where parent = parentid while(netchild) { if(childhasquestion) { answer = ask(question) if(answer = ja ) { print recommendation exit else SHELL(childId) Function ExpertSystem() { SHELL(0) print Kunne ikke løse problemet!!! ; Henrik Bulskov Styltsvig 30

Opgave 1 - inferensmaskine Function SHELL(parentId) { Select all childern where parent = parentid while(netchild) { if(childhasquestion) { answer = ask(question) if(answer = ja ) { print recommendation exit else SHELL(childId) Function ExpertSystem() { SHELL(0) print Kunne ikke løse problemet!!! ; Henrik Bulskov Styltsvig 31

Opgave 2 Udvid funktionaliteten i ekspertsystemtet fra opgave 1, således at der også udskrives information om hvordan løsningen blev fundet. Det vil sige de knuder der er involveret for at bevise hypotesen starte. Eksempel: Svar: Bilen kan ikke starte fordi tændkablerne er defekte. (defekt(tændkabler) tænding starte) Henrik Bulskov Styltsvig 32

Opgave 3 En dybde først søgning direkte op mod databasen betyder at der åbnes en cursor for hvert niveau i bevistræet. Dette kan være problematisk hvis dybden i bevistræet er meget stor. Derfor kan der benyttes en søgning der er en blanding mellem dybde først og bredde først, således at der kun benyttes én cursor, uanset dybden. Tilføj denne ændring til ekspertsystemet fra opgave 2 (1). Henrik Bulskov Styltsvig 33

Opgave 3 bredde først søgning Henrik Bulskov Styltsvig 34

Opgave 3 bredde/dybde søgning Henrik Bulskov Styltsvig 35