The logic of knowledge (epistemic logic) is a formalism that is intended to enable reasoning about what agents in a multiagent system know. The semantics of epistemic logic are given in terms of "possible worlds". For example, if I thought that there was one possible world (state of affairs) where it was raining in Liverpool, and another where it was not raining in Liverpool, then you would say I did not know whether or not it was raining in Liverpool. If, however, in all the states of affairs that I considered possible, it was raining in Manchester, then according to possible worlds semantics, you would say I knew it was raining in Manchester. The idea of this project is to develop a graphical tool for drawing these knowledge structures pictorially, and then for checking whether or properties are true in these structures.
Main reference: R.Fagin, J.Y.Halpern, Y.Moses, and M.Y.Vardi. Reasoning About Knowledge MIT Press 1995.
The RoboCup robot-soccer initiative is a hugely successful international initiative intended to support the development of robotics by setting the goal of having a team of robot agents that will be able to beat a human team within 50 years. This is a very challenging initiative because it not only requires robots that are very (VERY!) agile and capable, but also because it will require the robots to be able to coordinate their activities with other members of their team. As well as a physical robots league, RoboCup have a simulator league, which allows programs to play instead of robots, in a simulated environment. The simulator can be downloaded for free. The idea of this project is to develop robotic soccer playing agents using the JAM system. JAM (Java Agent Model) is a software system for building agents. If more than one student undertakes this project, we can run a competition to see who did the best implementation.
The idea of this project is to implement trading agents for the trading agent competition (TAC). The idea of the TAC is that we have software agents which attempt to buy components of a travel package in a simulated real-time marketplace. Prices in the market fluctuate with varying demand (so if there is high demand, prices will tend to rise; low demand, and prices will tend to fall). Demand is determined by the other software agents, which are also attempting to buy travel packages. You want to build an agent that gets the best deal.
If multiple students undertake this project, we can have a competition to see who delivers the best result. Project requires Java programming.
I want a comparison shopping agent, which will find me the best deal possible on Apple Mac hardware, software, and peripherals. I will issue a query to your comparison shopping agent, and it will then issue this query to a number of online Apple Mac shops. The results of these parallel searches will be presented to me in an orderly and systematic way. The idea of a comparison shopping agent is very similar to Froogle, the Google comparison shopping system.
The aim of this project is to develop a tool for intelligent WWW search. The main function of the tool is to help users to refine their search terms (i.e., the keywords they use when doing a search). The basic idea is as follows. You will develop a tool that, like a search engine, allows a user to enter some search terms. Your tool will then behave as follows:
The project will be implemented in Java, and will involve programming using the java.net classes (e.g., the URL class).
<question> <text> What is the best agent architecture? </text> <possible-answer> <label>A</label> <text>TouringMachines</text> </possible-answer> <possible-answer> <label>B</label> <text>InterRap</text> </possible-answer> <possible-answer> <label>C</label> <text>The Procedural Reasoning System</text> </possible-answer> <correct-answer>C</correct-answer> </question>
I would like this system to be available via the WWW. I would envisage it being written in PHP, or possible PERL.