Name	: Kenny Yuen	(kyuen@wolf, c473ai@entropy.ms)
	  Tak Yin Wang	(tywang@wolf, c473bs@entropy.ms)

2> Domain	: Air-Traveling-Plan (atp)

3> Program	: 
This domain is to help travel agents to schedule a travelling plan for
their customer.  Customer could specify his own needs like what cities
he wants to visit before going to the destination, how long he wants
to stay in the cities he visits, how much he wants to spend on the
trip, and at what time he wants to be in a specified city.  In real
life, customer has his own thought on how much he can spend on
travelling, so we want to find some schedules which could meet
customer's budget; at the same time, customer may like to stay in a
specific city for some time or on/for some specific date(time).

4> Hours of work: 35 hours (approx.)


5> Basically, atp is not similar to any existing Prodigy domains;
   however, some of the functions in functions.lisp are copied
   from the domain matrix-algebra such as sum, subtract and range-f.

6> The representation of time in our domain and schedworld is the
   same though we haven't looked at it before we start programming.

			---------------------

1a> 	In the real life problem, we have several uncertainties:
		1> Seats reserved might be cancelled by airlines.
		2> Flights might be postponed due to mechanic
		   problems, weather conditions or heavy air-traffic
		   at the airport.
		3> Flights might be delayed, besides the reasons 
		   stated in (2), due to breakdown of airlines'
		   computers or even bomb threats.

	Uncertainty always exists in life, and sometimes we are able
	to adapt with the uncertainty.  In the real life problem of 
	air travel planning, we would not be able to make weather 
	always good, avoid any breakdown of the computers, or stay 
	away from any conditions stated in (2) or (3).


	Besides uncertainty, it is not possible for prodigy to find
	the optimal solution for this domain.
	

1b>	Nothing much in our domain that would be difficult to
	build in Prodigy.

1c>	Feature :  It is useful in terms of finding a solution
		   by the means of searching, backtracking,
		   subgoaling.  When giving proper guidences
		   to the 'searcher' by the order of pre-
		   conditions, the help of the control rules,
		   Prodigy can find 'a' solution extensively
		   fast.
	Trace	:  It is quite useful because we could see what
		   prodigy is subgoaling on and to know what it
<		   has subgoaled on immediately.
	Analyze	:  It tells us where the operation fails.
	Discard	:  Without discard, there could be a lot of 
		   unnecassary trials.

1d>	I would add a state loop detection to Prodigy so
	that meaningless state looping can be eliminated.
 	Also, I would make the tracing clearer by ignoring 
	the tracing involves state cycle and prints out 
	how many cycles it has involved.
	
