Graph theory applications