I'm trying to reproduce the following graph:
This is the actual result:

It is not exactly the same but acceptable, however, at a certain point, there are two nodes (MD, ND) overlapping. How can I position one of them half-way in order to avoid this? In addition, is this the best way to create a graph, or there is something better?
Here is my MWE:
%Begin with any document class:
\documentclass{standalone}
%Load the tkz-graph package:
\usepackage{tkz-graph}
%Specify a basic style:
\GraphInit[vstyle = Shade]
%Customize element styles as desired using standard TikZ syntax:
\tikzset{
LabelStyle/.style = { rectangle, rounded corners,
draw, minimum width = 2em,
fill = yellow!50,
text = red, font = \bfseries },
VertexStyle/.append style = { inner sep=5pt,
font = \Large\bfseries},
EdgeStyle/.append style = {->}%, bend left}
}
%Begin the document:
\begin{document}
%Start a tikzpicture environment:
\begin{tikzpicture}
%Set the distance between vertices. The default is 1 for 1 cm.
\SetGraphUnit{7}:
%Declare a first vertex FD:
\Vertex{FD}
%Set a vertex A to the west (WE) and C to the east (EA) relative to the vertex B (B):
\NO(FD){PD}
\SO(FD){TD}
\NOEA(PD){pFD}
\EA(PD){softFD}
\EA(softFD){PuD}
\EA(PuD){AFD}
\EA(FD){MFD}
\EA(MFD){DD}
\EA(DD){ADD}
\SO(MFD){MD}
\SO(MD){FFD}
%The following row is the overlapping node
%\EA(TD){ND}
\SO(FFD){TMFD}
\SO(DD){CoD}
\EA(CoD){ACoD}
\SO(CoD){CMD}
\SO(CMD){SFD}
%Draw edges between the vertices:
\Edge[](FD)(PD)
\Edge[](FD)(TD)
\Edge[](FD)(softFD)
\Edge[](FD)(PuD)
\Edge[](FD)(AFD)
\Edge[](FD)(MFD)
\Edge[](FD)(MD)
\Edge[](FD)(FFD)
\Edge[](FFD)(SFD)
\Edge[](FFD)(TMFD)
\Edge[](MD)(CoD)
\Edge[](MD)(CMD)
\Edge[](MFD)(CoD)
\Edge[](CoD)(ACoD)
\Edge[](MFD)(DD)
\Edge[](DD)(ADD)
\Edge[](PD)(pFD)
\Edge[](softFD)(pFD)
%Add loops, which are edges from a vertex to itself:
%\Loop[dist = 4cm, dir = NO, label = 5](A.west)
%\Loop[dist = 4cm, dir = SO, label = 6](C.east)
%Adjust the bend angle of the edges for the final two wider edges:
%\tikzset{EdgeStyle/.append style = {bend left = 50}}
%\Edge[label = 7](A)(C)
%\Edge[label = 8](C)(A)
%End the picture and the document:
\end{tikzpicture}
\end{document}
