If you have the option to go with some kind of model, toys, etc. that allow you to see it, that's best.
If you don't, here's some options:
1) Two layers, two colors
On your map, use two colors of markers - one is the upper level, one is the lower level. For your mini's, you'll want something like colored rubber bands, flags or to stack them on top of a base/token indicating which ones are up top/lower down.
2) Breakout map
This only works if you don't have too much overlapping area - you can put the upper areas parallel and further out on the same grid map to the lower areas. I've used this for a fight on a series of platforms/construction scaffolding, and it worked well enough.
3) Parallel maps
Get several separate map grids, each one representing a different level.
This works best if there's a lot of overlapping areas, where people might run/climb up and down, but not where they'll be fighting, shooting arrows, etc. between floors very often. You want to keep the action on a single map and not have a mini on one map shooting ranged attacks at someone down stairs, which means running over to the other map and seeing how they line up.
All of these require you, and your group have good spacial visualization and communications skills, otherwise you just end up with people MORE confused. Usually terrain made even of cardboard or legos, works best for visualization and for more people keeping track of their positioning.
I use graph theory. All you need to do is to have NPCs (and/or places) as nodes and plots as arcs. You can even use something like GraphViz to visualise the graph you created. In general, the more complex the graph, the more potentially complex the plot.
Each link could have a cost associated with it that depends on how hard whatever the arc represent is to find out from the PCs's point of view. Or rather what you think is the difficulty in getting that particular thread. This can be highly subjective and difficult to do as all the information you pass to the players has the same colour! They do not know what is really important and what is not. Then you can do some "shortest path" calculations to see how reachable an end node is from any other nodes.
A limitation of this method is that it is very static -- unless you have a nice little script that you can update for all nodes/arcs as your PCs will do things that the NPCs will need to react to.
Best Answer
Here are a couple of points to consider: