\documentclass[tikz,border=5pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[every node/.style={align=center}]
\draw (-6.625,-5.5) -- (-6.625,5.5) -- (6.625,5.5) -- (6.625,-5.5) -- cycle [fill=black!5];
\node (UUULLL) at (-6,4.5) {\,};
\node (UUULL) at (-4,4.5) {\,};
\node (UUUL) at (-2,4.5) {\,};
\node (UUUC) at (0,4.5) {\,};
\node (UUUR) at (2,4.5) {\,};
\node (UUURR) at (4,4.5) {\,};
\node (UUURRR) at (6,4.5) {\,};
\node (UULLL) at (-6,3.0) {\,};
\node (UULL) at (-4,3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (UUL) at (-2,3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (UUC) at (0,3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (UUR) at (2,3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (UURR) at (4,3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (UURRR) at (6,3.0) {\,};
\node (ULLL) at (-6,1.5) {\,};
\node (ULL) at (-4,1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (UL) at (-2,1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (UC) at (0,1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (UR) at (2,1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (URR) at (4,1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (URRR) at (6,1.5) {\,};
\node (LLL) at (-6,0.0) {\,};
\node (LL) at (-4,0.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (L) at (-2,0.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (C) at (0,0.0) [draw, circle, thick, fill=black, scale=0.3] {\,};
\node (R) at (2,0.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (RR) at (4,0.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (RRR) at (6,0.0) {\,};
\node (DLLL) at (-6,-1.5) {\,};
\node (DLL) at (-4,-1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DL) at (-2,-1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DC) at (0,-1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DR) at (2,-1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DRR) at (4,-1.5) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DRRR) at (6,-1.5) {\,};
\node (DDLLL) at (-6,-3.0) {\,};
\node (DDLL) at (-4,-3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DDL) at (-2,-3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DDC) at (0,-3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DDR) at (2,-3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DDRR) at (4,-3.0) [draw, circle, thick, fill=black!5, scale=0.3] {\,};
\node (DDRRR) at (6,-3.0) {\,};
\node (DDDLLL) at (-6,-4.5) {\,};
\node (DDDLL) at (-4,-4.5) {\,};
\node (DDDL) at (-2,-4.5) {\,};
\node (DDDC) at (0,-4.5) {\,};
\node (DDDR) at (2,-4.5) {\,};
\node (DDDRR) at (4,-4.5) {\,};
\node (DDDRRR) at (6,-4.5) {\,};
\draw (UULLL) edge[->,thick,color=red] node[above] {$a$} (UULL)
(UULL) edge[->,thick,color=red] node[above] {$a$} (UUL)
(UUL) edge[->,thick,color=red] node[above] {$a$} (UUC)
(UUC) edge[->,thick,color=red] node[above] {$a$} (UUR)
(UUR) edge[->,thick,color=red] node[above] {$a$} (UURR)
(UURR) edge[->,thick,color=red] node[above] {$a$} (UURRR);
\draw (ULLL) edge[->,thick,color=red] node[above] {$a$} (ULL)
(ULL) edge[->,thick,color=red] node[above] {$a$} (UL)
(UL) edge[->,thick,color=red] node[above] {$a$} (UC)
(UC) edge[->,thick,color=red] node[above] {$a$} (UR)
(UR) edge[->,thick,color=red] node[above] {$a$} (URR)
(URR) edge[->,thick,color=red] node[above] {$a$} (URRR);
\draw (LLL) edge[->,thick,color=red] node[above] {$a$} (LL)
(LL) edge[->,thick,color=red] node[above] {$a$} (L)
(L) edge[->,thick,color=red] node[above] {$a$} (C)
(C) edge[->,thick,color=red] node[above] {$a$} (R)
(R) edge[->,thick,color=red] node[above] {$a$} (RR)
(RR) edge[->,thick,color=red] node[above] {$a$} (RRR);
\draw (DLLL) edge[->,thick,color=red] node[above] {$a$} (DLL)
(DLL) edge[->,thick,color=red] node[above] {$a$} (DL)
(DL) edge[->,thick,color=red] node[above] {$a$} (DC)
(DC) edge[->,thick,color=red] node[above] {$a$} (DR)
(DR) edge[->,thick,color=red] node[above] {$a$} (DRR)
(DRR) edge[->,thick,color=red] node[above] {$a$} (DRRR);
\draw (DDLLL) edge[->,thick,color=red] node[above] {$a$} (DDLL)
(DDLL) edge[->,thick,color=red] node[above] {$a$} (DDL)
(DDL) edge[->,thick,color=red] node[above] {$a$} (DDC)
(DDC) edge[->,thick,color=red] node[above] {$a$} (DDR)
(DDR) edge[->,thick,color=red] node[above] {$a$} (DDRR)
(DDRR) edge[->,thick,color=red] node[above] {$a$} (DDRRR);
\draw (DDDLL) edge[->,thick,color=blue] node[right] {$b$} (DDLL)
(DDLL) edge[->,thick,color=blue] node[right] {$b$} (DLL)
(DLL) edge[->,thick,color=blue] node[right] {$b$} (LL)
(LL) edge[->,thick,color=blue] node[right] {$b$} (ULL)
(ULL) edge[->,thick,color=blue] node[right] {$b$} (UULL)
(UULL) edge[->,thick,color=blue] node[right] {$b$} (UUULL);
\draw (DDDL) edge[->,thick,color=blue] node[right] {$b$} (DDL)
(DDL) edge[->,thick,color=blue] node[right] {$b$} (DL)
(DL) edge[->,thick,color=blue] node[right] {$b$} (L)
(L) edge[->,thick,color=blue] node[right] {$b$} (UL)
(UL) edge[->,thick,color=blue] node[right] {$b$} (UUL)
(UUL) edge[->,thick,color=blue] node[right] {$b$} (UUUL);
\draw (DDDC) edge[->,thick,color=blue] node[right] {$b$} (DDC)
(DDC) edge[->,thick,color=blue] node[right] {$b$} (DC)
(DC) edge[->,thick,color=blue] node[right] {$b$} (C)
(C) edge[->,thick,color=blue] node[right] {$b$} (UC)
(UC) edge[->,thick,color=blue] node[right] {$b$} (UUC)
(UUC) edge[->,thick,color=blue] node[right] {$b$} (UUUC);
\draw (DDDR) edge[->,thick,color=blue] node[right] {$b$} (DDR)
(DDR) edge[->,thick,color=blue] node[right] {$b$} (DR)
(DR) edge[->,thick,color=blue] node[right] {$b$} (R)
(R) edge[->,thick,color=blue] node[right] {$b$} (UR)
(UR) edge[->,thick,color=blue] node[right] {$b$} (UUR)
(UUR) edge[->,thick,color=blue] node[right] {$b$} (UUUR);
\draw (DDDRR) edge[->,thick,color=blue] node[right] {$b$} (DDRR)
(DDRR) edge[->,thick,color=blue] node[right] {$b$} (DRR)
(DRR) edge[->,thick,color=blue] node[right] {$b$} (RR)
(RR) edge[->,thick,color=blue] node[right] {$b$} (URR)
(URR) edge[->,thick,color=blue] node[right] {$b$} (UURR)
(UURR) edge[->,thick,color=blue] node[right] {$b$} (UUURR);
\end{tikzpicture}
\end{document}