The first one is the best.
To put it in simple English,
"having known" is used when you are talking about something in the past. For example, "YESTERDAY, having known that she would be here at 6:00 AM, I left the house a bit earlier."
"knowing X, Y" means "at this time I know that X is the case, therefore Y"
I hope that helps ^_^