\documentclass[border=5pt]{standalone}
\usepackage{tikz}
\usepackage{amsmath}
\usepackage{amssymb}

\begin{document}

\begin{tikzpicture}[thick, scale=0.65, every node/.style={scale=.6, line width=0.25mm, black, fill=white}]
    \usetikzlibrary{shapes}
    
    % pre recourse nodes
    \node[circle, draw,scale=0.9] (x1) at (-2, 1) {$X_1$};
    \node[circle, double, draw,scale=0.9] (x2) at (-1, 1) {$X_2$};
    \node[circle, draw,scale=0.9] (x3) at (-3, 0) {$X_3$};
    \node[circle, double, draw,scale=0.9] (x4) at (-2, 0) {$X_4$};
    \node[circle, double, draw,scale=0.9] (x5) at (-1, -1) {$X_5$};
    \node[circle, double, draw,scale=0.9] (x6) at (1, 1) {$X_6$};
    \node[circle, double, draw,scale=0.9] (x7) at (2, 1) {$X_7$};
    \node[circle, double, draw,scale=0.9] (x8) at (1, -1) {$X_8$};
    \node[draw,scale=1.3] (y) at (0, 0) {$Y$};

    % pre recourse relationships
    \draw[->] (x2) -- (x1);
    \draw[->] (x2) -- (y);
    \draw[->] (x3) -- (x4);
    \draw[->] (x4) -- (y);
    \draw[->] (x5) -- (y);
    \draw[->] (y) -- (x6);
    \draw[->] (x7) -- (x6);
    \draw[->] (x8) -- (x6);
    \draw[->] (x8) -- (x5);
    
    % intervention auxilary variables
    \node[draw=orange, ellipse, scale=0.9] (i1) at (-2, 2) {$\mathcal{I}_1$};
    \node[draw=green, ellipse, scale=0.9] (i2) at (-1, 2) {$\mathcal{I}_2$};
    \node[draw=green, ellipse, scale=0.9] (i3) at (-3, -2) {$\mathcal{I}_3$};
    \node[draw=green, ellipse, scale=0.9] (i4) at (-2, -2) {$\mathcal{I}_4$};
    \node[draw=green, ellipse, scale=0.9] (i5) at (-1, -2) {$\mathcal{I}_5$};
    \node[draw=red, ellipse, scale=0.9] (i6) at (1, 2) {$\mathcal{I}_6$};
    \node[draw=orange, ellipse, scale=0.9] (i7) at (2, 2) {$\mathcal{I}_7$};
    \node[draw=green, ellipse, scale=0.9] (i8) at (1, -2) {$\mathcal{I}_8$};
    
    \draw[->, orange] (i1) -- (x1);
    \draw[->, green] (i2) -- (x2);
    \draw[->, green] (i3) -- (x3);
    \draw[->, green] (i4) -- (x4);
    \draw[->, green] (i5) -- (x5);
    \draw[->, red] (i6) -- (x6);
    \draw[->, orange] (i7) -- (x7);
    \draw[->, green] (i8) -- (x8);
    
    \draw[-, dotted] (3, -2.5) -- (3, 2.5);
    
    % all variables observed
    \node[circle, double, draw,scale=0.9] (x1r) at (5, 1) {$X_1$};
    \node[circle, dotted, draw,scale=0.9] (x2r) at (6, 1) {$X_2$};
    \node[circle, draw,scale=0.9] (x3r) at (4, 0) {$X_3$};
    \node[circle, double, draw,scale=0.9] (x4r) at (5, 0) {$X_4$};
    \node[circle, double, draw,scale=0.9] (x5r) at (6, -1) {$X_5$};
    \node[circle, double, draw,scale=0.9] (x6r) at (8, 1) {$X_6$};
    \node[circle, double, draw,scale=0.9] (x7r) at (9, 1) {$X_7$};
    \node[circle, dotted, draw,scale=0.9] (x8r) at (8, -1) {$X_8$};
    \node[draw,scale=1.3] (yr) at (7, 0) {$Y$};

    % pre recourse relationships
    \draw[->] (x2r) -- (x1r);
    \draw[->] (x2r) -- (yr);
    \draw[->] (x3r) -- (x4r);
    \draw[->] (x4r) -- (yr);
    \draw[->] (x5r) -- (yr);
    \draw[->] (yr) -- (x6r);
    \draw[->] (x7r) -- (x6r);
    \draw[->] (x8r) -- (x6r);
    \draw[->] (x8r) -- (x5r);
    
    % intervention auxilary variables
    \node[draw=red, ellipse, scale=0.9] (i1r) at (5, 2) {$\mathcal{I}_1$};
    \node[draw=red, ellipse, scale=0.9] (i2r) at (6, 2) {$\mathcal{I}_2$};
    \node[draw=green, ellipse, scale=0.9] (i3r) at (4, -2) {$\mathcal{I}_3$};
    \node[draw=green, ellipse, scale=0.9] (i4r) at (5, -2) {$\mathcal{I}_4$};
    \node[draw=red, ellipse, scale=0.9] (i5r) at (6, -2) {$\mathcal{I}_5$};
    \node[draw=red, ellipse, scale=0.9] (i6r) at (8, 2) {$\mathcal{I}_6$};
    \node[draw=orange, ellipse, scale=0.9] (i7r) at (9, 2) {$\mathcal{I}_7$};
    \node[draw=red, ellipse, scale=0.9] (i8r) at (8, -2) {$\mathcal{I}_8$};
    
    \draw[->, red] (i1r) -- (x1r);
    \draw[->, red] (i2r) -- (x2r);
    \draw[->, green] (i3r) -- (x3r);
    \draw[->, green] (i4r) -- (x4r);
    \draw[->, red] (i5r) -- (x5r);
    \draw[->, red] (i6r) -- (x6r);
    \draw[->, orange] (i7r) -- (x7r);
    \draw[->, red] (i8r) -- (x8r);
    
\end{tikzpicture}

\end{document}