• No results found

3.3 Hardness of Traffic Crossing

3.3.2 Final Mechanism for Variable Representation

This section presents the detailed mechanism for representing each variable of the formula. Recall from the simplified mechanism given in Section 3.3.1 that

each variable zi is represented by a pair of value vehicles, which travel downward in a coordinated manner along two vertical lines that are separated by a distance of one unit, and each can endure a delay in the interval [0, 1]. The movement of each pair of value vehicles is constrained by a pair of helper vehicles, which travel together horizontally, are separated vertically by the unit distance, and are placed so that they intersect the value vehicles’ paths. Their goal positions, start times, and end times are all set so that they must interact with the value vehicles. All of these vehicles are of length 1− ε, for a constant 0 < ε < 12 to be specified later.

To correct the error mentioned in Section3.3.1, for each value/helper vehicle group, an additional set of smaller vehicles is created whose purpose is to prevent other vehicles from stopping in the intersection. These vehicles are of length ε and are allowed no delay (by setting tak− t`k =kpak− pk`k/δmax). Thus, their motion is constrained to travel at full speed until reaching their goal positions. There is one such ε-vehicle for each of the vehicles (value and helper) described above.

More formally, one can define the requisite vehicles for representing a generic variable by first defining a reference point (x, y), and positive axes to the right and down for x and y, respectively. Let (x, y− ε) and (x + 1, y − ε) denote the positions of the leading points of a value vehicle pair (v1, v10) at time t (see Fig. 3.6). Next, define a value ∆ as a function of the number of variables and clauses in the original Boolean formula and set the value vehicles’ goal positions to (x, y − ε + ∆) and (x + 1, y− ε + ∆), respectively. The value of ∆ is set so that the value vehicles travel

far enough to accommodate the necessary gadgets for each clause.

Place a helper vehicle pair (u01, u1) at (x, y) and (x, y + 1), respectively, set their

goal positions to (x + 2, y) and (x + 2, y + 1), their start times to t, and their deadlines to t + 3. Similarly, place another helper vehicle pair (w01, w1) at (x, y + ∆− 1) and (x, y + ∆), respectively, set their goal positions to (x + 2, y + ∆− 1) and (x + 2, y + ∆), their start times to t + ∆− 1, and their deadlines to t + 2 + ∆ (here, ∆ is added to account for the arrival time of the value vehicles).

(a) (b)

Figure 3.6: (a/b) Value vehicles taking on opposing values, allowing for valid paths for the helper vehicles. (See the remarks at the start of Section 3.3.1 on figure layouts.)

Finally, for each intersection between pairs of vehicles, four vehicles of length ε are created, one for each vehicle crossing the intersection. These ε-vehicles will prevent their matching vehicle (either value or helper) from delaying inside the intersection (see Fig. 3.7). For the value vehicles, place two ε-vehicles at (x + 0.5, y− 0.5 + ε) and (x + 0.5, y− 1.5 + ε), set their goal positions to (x + 0.5, y + 2.5 + ε + ∆) and (x + 0.5, y + 1.5 + ε + ∆), their start times to t + ∆, and their deadlines to t + 3 + ∆.

Notice these deadlines allow for no delay in the motion of the ε-vehicles.

Similarly, for the helper vehicles (u01, u1), place two ε-vehicles at (x−0.5, y +0.5) and (x− 1.5, y + 0.5), set their goal positions to (x + 2.5, y + 0.5) and (x + 1.5, y + 0.5),

their start times to t, and their deadlines t + 3. Two similar ε-vehicles are created for the helper vehicles (w01, w1), only ∆ units lower so that they lie between the vehicle pair.

(a) (b)

x+

y+ vi vi0 vi v0i

u0i ui

u0i ui

Invalid Invalid

Figure 3.7: If both value vehicles select the same delay policy, then there is no valid speed profile for one of the helper vehicles, as in figure (a), or a collision occurs, as in figure (b) when vi must delay to avoid ui and collides with an ε-vehicle.

Lemma 3.3.2. Given the pairs (v1, v10), (u01, u1), (w10, w1), and the ε-vehicles as defined above, the value vehicles v1 and v10 must each adopt one of the following two movement policies:

(a) delay for exactly one unit of time and then move beyond the paths of (u01, u1) at speed δmax (i.e., delay-first); or

(b) move beyond the paths of (w10, w1) at δmax without delay (i.e., delay-last).

Additionally, v1 and v10 may not select the same policy.

Proof. First, notice that for a value vehicle there are two perpendicular ε-vehicles with which it will interact. These vehicles, set between the helper vehicles, have no freedom of movement and so force the value vehicle to either delay for one time

unit before encountering them or to pass by them at full speed without delay (see Fig. 3.8). A corollary to this is the fact that the spacing between vehicles is tight, so that even a small delay before encountering the ε-vehicles requires the value vehicle to stop until its accumulated delay is exactly one time unit before it can successfully pass.

1

Figure 3.8: A value vehicle is limited to one of two movement options by the fully constrained ε-vehicles.

Second, if the value vehicle is to delay before reaching the ε-vehicles, it must actually delay before reaching the helper vehicles, as there is not enough room between the epsilon and helper vehicles in which to wait. Next, because v1 and u01 begin within a vehicle’s length of the point at which their paths cross, they will collide if neither one delays. Instead, they must choose different movement profiles so that one delays first, allowing the other to pass.

Finally, notice that a delay of v10 necessitates a similar delay of u01. This is because it takes one time unit for u01 to reach the point at which their paths intersect.

If v10 was to delay one time unit yet u01 was to leave immediately, they would reach this point together and collide.

Given that u01 must delay if v10 does, and v1 cannot enact the same movement

policy that u01 does, it must be the case that both value vehicles cannot choose to delay for one time unit at this point. A similar dependency exists between the value vehicles and u1, though this dependency prevents v1 and v01 from both leaving immediately and continuing forward at constant speed.

The logic above also holds for the second helper pair, (w10, w1), constraining the value vehicles to opposing movement policies until they have moved beyond the paths of these helper vehicles. This also prevents the value vehicles from swapping movement policies, i.e., altering their Boolean values. To do so would require the lagging vehicle (i.e., the vehicle that adopted the delay-first policy) to speed up while the lead vehicle slows down. However, given the constraints placed on the vehicles, they are already traveling at the speed limit δmax, so the lagging vehicle may not go any faster.