Let $n$ be an integer greater than or equal to $2$. There is a regular hexagon $ABCDEF$ with side length $n$, which is divided into equilateral triangles with side length $1$ as shown in the left figure. We simply call the vertices of an equilateral triangle as vertex. 
A piece is placed in the center of a regular hexagon $ABCDEF$. For each of the vertices $P$ inside $ABCDEF$ (not including the perimeter), an arrow is drawn toward $4$ vertices four of the six vertices connected to $P$ by an edge of length $1$. When a piece is placed on the vertex $P$, this piece can be moved to any of the four vertices which the arrow is drawn. Regarding side $PQ$, even if a piece can be moved from vertex $P$ to vertex $Q$, it is not necessarily possible to move a piece from vertex $Q$ to vertex $P$.
Then, show that there exists an integer $k$ such that it can be moved the piece to vertices on the perimeter of the regular hexagon $ABCDEF$ in $k$ moves regardless of how the arrows are drawn and find the smallest possible value of $k$.

[asy]
unitsize(0.3 cm);

pair[] A, B, C, D, E, F;
int i;
pair trans = (18,-4);

A[0] = 8*dir(120);
B[0] = 8*dir(180);
C[0] = 8*dir(240);
D[0] = 8*dir(300);
E[0] = 8*dir(0);
F[0] = 8*dir(60);

for (i = 1; i <= 7; ++i) {
  A[i] = interp(A[0],B[0],i/8);
  B[i] = interp(B[0],C[0],i/8);
  C[i] = interp(C[0],D[0],i/8);
  D[i] = interp(D[0],E[0],i/8);
  E[i] = interp(E[0],F[0],i/8);
  F[i] = interp(F[0],A[0],i/8);
}

draw(A[0]--B[0]--C[0]--D[0]--E[0]--F[0]--cycle);

for (i = 0; i <= 5; ++i) {
  draw(rotate(60*i)*(A[0]--(A[0] + 3*dir(-60))));
  draw(rotate(60*i)*(A[1]--(A[1] + 3*(1,0))));
  draw(rotate(60*i)*(A[1]--(A[1] + 3*dir(300))));
  draw(rotate(60*i)*(A[2]--(A[2] + 4*(1,0))));
  draw(rotate(60*i)*(F[6]--(F[6] + 4*dir(240))));
  draw(rotate(60*i)*(F[7]--(F[7] + 3*dir(240))));
  draw(rotate(60*i)*(F[7]--(F[7] + 3*dir(300))));
  draw(rotate(60*i)*((A[1] + 3*(1,0))--(A[1] + 6*(1,0))), dotted);
  draw(rotate(60*i)*((A[2] + 4*(1,0))--(A[2] + 6*(1,0))), dotted);
}

for (i = 0; i <= 2; ++i) {
  draw(rotate(60*i)*(3*dir(60)--3*dir(240)));
}

for (i = 0; i <= 5; ++i) {
  draw(rotate(60*i)*(((2,0) + dir(60))--((-2,0) + dir(120))));
  draw(rotate(60*i)*((3,0)--(5,0)), dotted);
  draw(rotate(60*i)*(((2,0) + dir(60))--((4,0) + dir(60))), dotted);
	draw(rotate(60*i)*(((2,0) + dir(-60))--((4,0) + dir(-60))), dotted);	
}

label("$A$", A[0], NW);
label("$B$", B[0], W);
label("$C$", C[0], SW);
label("$D$", D[0], SE);
label("$E$", E[0], dir(0));
label("$F$", F[0], NE);

draw(shift(trans)*scale(1.3)*((-3,0)--(9,0)));
draw(shift(trans)*scale(1.3)*((-3*dir(60))--(9*dir(60))));
draw(shift(trans)*scale(1.3)*(((6,0) + 3*dir(-60))--((6,0) + 9*dir(120))));
draw(shift(trans)*scale(1.3)*(3*dir(120)--3*dir(300)));
draw(shift(trans)*scale(1.3)*((6*dir(60) + (-3,0))--(6*dir(60) + (3,0))));
draw(shift(trans)*scale(1.3)*(((6,0) + 3*dir(60))--((6,0) - 3*dir(60))));
draw(shift(trans)*scale(1.3)*((-2,0)--(2,0)), linewidth(1.5*bp), Arrows(4));
draw(shift(trans)*scale(1.3)*(2*dir(60)--2*dir(240)), linewidth(1.5*bp), Arrows(4));
draw(shift(trans)*scale(1.3)*((6,0)--(8,0)), linewidth(1.5*bp), Arrow(4));
draw(shift(trans)*scale(1.3)*((6,0)--((6,0) + 2*dir(60))), linewidth(1.5*bp), Arrow(4));
draw(shift(trans)*scale(1.3)*((6,0)--((6,0) + 2*dir(240))), linewidth(1.5*bp), Arrow(4));
draw(shift(trans)*scale(1.3)*((6,0)--((6,0) + 2*dir(300))), linewidth(1.5*bp), Arrow(4));
draw(shift(trans)*scale(1.3)*(6*dir(60)--(6*dir(60) + (2,0))), linewidth(1.5*bp), Arrow(4));
draw(shift(trans)*scale(1.3)*(6*dir(60)--(6*dir(60) + 2*dir(120))), linewidth(1.5*bp), Arrow(4));
draw(shift(trans)*scale(1.3)*(6*dir(60)--(6*dir(60) + (-2,0))), linewidth(1.5*bp), Arrow(4));
draw(shift(trans)*scale(1.3)*(6*dir(60)--(6*dir(60) + 2*dir(240))), linewidth(1.5*bp), Arrow(4));
[/asy]
We need to show that there exists an integer \( k \) such that a piece can be moved to vertices on the perimeter of the regular hexagon \( ABCDEF \) in \( k \) moves regardless of how the arrows are drawn, and find the smallest possible value of \( k \).

1. **Define the structure and notation:**
   - Let \( O \) be the center of the hexagon.
   - For \( 1 \le i \le n \), let \( A_i \) be the point on segment \( OA \) with \( OA_i = i \), and define \( B_i, \ldots, F_i \) similarly.
   - Let \( P_i \) be the boundary of the regular hexagon \( A_iB_i \ldots F_i \).

2. **Lower Bound Analysis:**
   - Ensure that the only arrows from \( P_i \) which point to \( P_{i+1} \) emanate from the corners of \( P_i \), and none of them point to a corner of \( P_{i+1} \), for all \( 1 \le i \le n-1 \).
   - We need one move to get from \( O \) to \( P_1 \).
   - At least two moves are required to get from a corner of \( P_i \) to a corner of \( P_{i+1} \) for all \( 1 \le i \le n-2 \).
   - At least one move is needed to get from \( P_{n-1} \) to \( P_n \).

3. **Upper Bound Analysis:**
   - Assign a score to each point as follows:
     - The score of \( O \) is zero.
     - Let \( X \) lie on a side of \( P_i \) and let the distance from \( X \) to the nearest corner of \( P_i \) on that side be \( d \).
     - The score of \( X \) is \( 2i - d - 1 \).
   - A straightforward case analysis shows that we can always move to a point whose score is strictly higher, unless we have already reached \( P_n \).
   - Since the highest score within \( O, P_1, P_2, \ldots, P_{n-1} \) is \( 2n - 3 \), the desired result follows.

4. **Conclusion:**
   - Combining the lower and upper bound analysis, we conclude that the smallest possible value of \( k \) is \( 2n - 2 \).

The final answer is \( \boxed{ 2n - 2 } \).