Professional Documents
Culture Documents
The transport sector is evolving rapidly with the aid of emerging technologies.
Companies such as Uber have successfully integrated advanced software with
user needs in transport, fulfilling more than a million rides per day. In this report,
we will focus on planning for a transport problem domain. The domain is a taxi
which will act on user requests, dropping them to their destination. However, we
are adding the idea of real-time ride sharing (carpooling), where the taxi also has
to account for multiple destinations and pick-up points. The taxis goal is to
complete the user requests efficiently (minimising distance travelled and time). If
two customers have similar pick-up and drop off destinations, the taxi can pick
up both and transport them simultaneously (if there is enough capacity for it) to
maximise its efficiency. In order to implement this, a planner could be extremely
useful, especially in terms of economic efficiency.
For our domain, we will have four customers (A,B,C) all with different pick up
(Pa,Pb,Pc) locations and destinations (Da,Db,Dc). The planner must consider
distances between each customer, their respective destinations and the cabs
start point. From this, the planner will find a route which minimises total distance
travelled when requests are no longer being made.
In the figure below, a hypothetical situation is presented in the diagram.
The
route
shown is optimal in terms of distance. In the example, the cab first picks up
customer B, then picks up the closest customer C, (since there is a capacity for
an extra customer). After this, B is dropped off at his location, and C at his.
Finally, the empty cab travels from destination C to pick up A and drop him off at
the set destination.
The predicates we have are cab, customer, carry, at and location. Our predicates
check whether there is a cab and a customer. We used a carry predicate which