welcome: please sign in
location: FinalProblemDescriptions / HydraulicLeaking

Hydraulic System Planning - 2 (Hydraulic Leaking)

Problem Description

A simplified version of the hydraulic system on a space shuttle consists of a directed graph, G, such that:

Tanks can be full or empty. Valves can be open or closed. Some of the valves may be leaking. A state of G is specified by the set of full tanks, the set of open valves, and the set of leaking valves. 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 <N1,N2> only if N1 is pressurized. (Note, a leaking valve can be opened, and all valves are assumed to be all closed in their initial state.)

Problem: Given a graph G together with a initial state of G and a set of jets j1...jn, a shuttle controller needs to find a shortest plan among those using the least number of leaking valves. Write a program which automates this process.

Predicates

Input format

The graph should be described by the collection of ground atoms:

The state description uses atoms:

The goal(s) to achieve:

Output format

In output, a sequence of atoms of the form

means to open valve v at time step t. The switches should occur at onsecutive time steps beginning from 0.

Example(s)

INPUT

tank(t111). tank(t112). tank(t113).
jet(j1). jet(j2). jet(j3).
junction(p1). junction(p2). junction(p3). junction(p4). junction(p5). junction(p6).
valve(v1).  valve(v2).  valve(v3).  valve(v4).  valve(v5).
valve(v6).  valve(v7).  valve(v8).  valve(v9).  valve(v10).
valve(v11). valve(v12). valve(v13).
numValves(13).
link(t111, p1, v1).  link(p1, p2, v2).  link(p2, j1, v3).
link(t112, p3, v4).  link(p4, p3, v5).  link(p4, j2, v6).
link(t113, p5, v7).  link(p5, p6, v8).  link(p6, j3, v9).
link(p1, p3, v10). link(p3, p5, v11).
link(p4, p2, v12). link(p6, p4, v13). 
full(t111).  leaking(v2).  goal(j1).

OUTPUT

switchon(v1,0). switchon(v3,6). switchon(v8,3). switchon(v10,1). 
switchon(v11,2). switchon(v12,5). switchon(v13,4).

Notes and Updates

With respect to the version of this problem as of the 2nd ASP Competition, there can be more than one goal per instance. Note that valves are assumed to be all closed in their initial state.

It is important to point out that the Competition's instance family is such that each individual goal subgraph is disjoint (a tank can reach at most one goal).

Author(s)

ASP Competition 2011: FinalProblemDescriptions/HydraulicLeaking (last edited 2011-04-01 11:20:43 by CarmenSantoro)