Contents
Domain Illustration Methods Conclusions |
Domain
The music business is vastly becoming one of the biggest industries in our society today. A driving force of this industry is live concerts. This domain is an internet ticket agent called DOTA who will interact with the user to either find a specific concert they are looking for or to provide the user with different concerts they might be interested in. The agent will use an extensive knowledge base that will enable it to cross reference different musical artists and genres. While DOTA is a fully functioning search agent , where DOTA really shines is when it is used to help the user find a concert using some information the user provides. DOTA uses this information to search through its database and find concerts that match what the user wants. But it does not stop there. DOTA allows extended intereaction, where it takes responses from the user as starting points to more results. It tries to find even more concerts that the user might enjoy.
Illustration Below are some searching illustrations of what DOTA can do. |-? where(live).
| ?- allconcerts(nj).
| ?- date(cher).
| ?- location(irving_plaza).
Below are some illustrations of when DOTA is used to help choose a concert: | ?- choose_concert(ny,alternative,twomonths).
Here are the concerts that match your preferences: fat_boy_slim will be playing at hammerstein_ballroom on dec_17_1999
| ?- likes(pretenders).
I will now check to see if anymore concerts match your prefrences.
fat_boy_slim will be playing at hammerstein_ballroom on dec_17_1999
Methodds At the base of DOTA you have both constraint satisfaction and
set interaction. I tried setting up the KB
Another interesting method that was used was when DOTA tries to give the user more choices that the user might not have thought about. This revolves around the border predicate and the likes(X) relation: likes(X):- border(X,G) ,
This enables DOTA to look at other genres of music when giving its choices.
I very much enjoyed on working on this project and definitly came across some pitfalls on the way. I found that to set up the KB base for this project, ALOT of time and effort needs to be given to it. Besides the task of entering all the information in, the border relationship of different genres and performers needs to be done. Another pitfall I incountered was the presents of cycles. I found myself stuck in many loops because of the intereaction between the constraints and the KB. I was not able to provide the user with the possibility of looking at more then one state at a time because of this. All in all i feel that DOTA does do something worthwhile and interesting. It provides an easy way of finding out what concerts are playing and for finding concerts one might not even see if looking on their own. |