= Hydraulic Planning = <> == Problem description == A simplified version of the hydraulic system on a space shuttle consists of a directed graph, G, such that: * Nodes of this graph are labeled as tanks,jets, or junctions. * Every link between two nodes is labeled by a valve. * There are no paths in G between any two tanks. * For every jet there always is a path in G from a tank to this jet. Tanks can be full or empty. Valves can be open or closed. Some of the valves can be stuck in the close position. A state of G is specified by the set of full tanks, the set of open valves, and the set of valves stuck in the closed position. A node of G is called pressurized in state S if it is a full tank or if there exists a path from some full tank of G to this node such that all the valves on the edges of this path are open. We assume that in a state S a shuttle controller can open a valve V2 corresponding to a directed link only if N1 is pressurized and not stuck. Problem: Given a graph G together with an initial state and a jet j, a shuttle controller needs to find a shortest sequential plan to pressurize j. Write a program which automates this process. == Input Format == The graph should be described by the collection of ground atoms: * tank(t): t is a tank * jet(j): j is a jet * junction(p): p is a junction * valve(v): v is a valve * link(n1, n2, v): v is the valve on the pipe connecting node n1 and n2. * numValves(n): n is the total number of valves in the graph The state description uses atoms: * full(t) iff tank t is full. A tank is empty if it is not mentioned to be full in the input. * stuck(v): valve v is stuck The goal to achieve: * goal(j): jet j needs to be pressurized == Output Format == A sequence of atoms of the form * switchon(v, t). which means an action to open valve v at time step t, where t is an integer. The switches should occur at consecutive time steps beginning from 0. (Note that, in contrast to the original description, the order of atoms in the output does not matter.) == Example == == Comment == This problem took part in the Second ASP Competition and was proposed by Michael Gelfond, Ricardo Morales and Yuanlin Zhang. == Author(s) == * Francesco Calimeri * University of Calabria, Italy * Maria Carmela Santoro * University of Calabria, Italy