\tikzstyle{instruct}=[font=\small, text justified, rectangle,draw,fill=yellow!50]
\tikzstyle{first_col}=[rectangle, text justified, draw,fill=gray!50]
\tikzstyle{second_col}=[scale=0.55, circle, draw,fill=red!50]
\tikzstyle{test}=[font=\small, text justified, diamond, aspect=2.5,thick,
draw=blue,fill=yellow!50,text=blue]
\tikzstyle{es}=[font=\small, text justified, rectangle,draw,rounded corners=4pt,fill=cyanind!25]

\node[es] (liste) at (0,4) {Provide a collection to partition};
\node[instruct, text width=5cm, below = 0.45cm of liste] (1-collection) {Fit colBiSBM};
\node[first_col, right = 0.5cm of 1-collection] (1-col-obj) {};
\node[instruct, text width=5cm, below = 0.45cm of 1-collection] (dissimi) {Compute a dissimilarity matrix of the collection};
\node[instruct, text width=5cm, below = 0.45cm of dissimi] (2-sous-collection) {Split the \emph{collection into 2 sub-collections} and fit colBiSBMs};
\node[second_col, right = 0.25cm of 2-sous-collection] (1-sec-col-obj) {1};
\node[second_col, right = 0.25cm of 1-sec-col-obj] (1-sec-col-obj) {2};
\node[test,below = 0.45cm of 2-sous-collection, scale=0.5] (BICL-test) {$\sum_{i=1}^{2} (\text{BIC-L}(\tikz[baseline=-0.25cm]{\node[second_col] {i};} )) > \text{BIC-L}(\tikz[baseline=-0.25cm]{\node[first_col] {};})$?};
\node[es, right = 0.55cm of BICL-test] (sortie) {Return \tikz{\node[rectangle, draw, fill=gray!50, rounded corners=0pt] {};}};
\node[es, left = 0.45cm of dissimi, text width = 2cm] (recursion) {Repeat on \tikz{\node[second_col] {1};} and \tikz{\node[second_col] {2};} };

\tikzstyle{suite}=[->,>=stealth,thick,rounded corners=4pt]
\draw[suite] (liste) -- (1-collection);
\draw[suite] (1-collection) -- (dissimi);
\draw[suite] (dissimi) -- (2-sous-collection);
\draw[suite] (2-sous-collection) -- (BICL-test);
\draw[suite] (BICL-test) -| node[near start, above, fill=none] {Yes} (recursion);
\draw[suite] (recursion.east) -- (dissimi.west);
\draw[suite] (BICL-test) -- node[near start, above, fill=none] {No} (sortie);
