public static void InterpretOutput(ThinkingAgent agent, IWorld world, Vector2D output)
        {
            var centerOfGravity =
                world.Sheep.Select(x => x.Position).Center();

            var vCentered = new Vector2D(
                centerOfGravity.X - agent.Position.X,
                centerOfGravity.Y - agent.Position.Y);

            var vCenteredLength = vCentered.Length;

            var sin = vCentered.Y / vCenteredLength;
            var cos = vCentered.X / vCenteredLength;

            if (double.IsNaN(sin))
            {
                sin = 0.0;
            }

            if (double.IsNaN(cos))
            {
                cos = 1.0;
            }

            var vRotated = new Vector2D(
                output.X * cos - output.Y * sin,
                output.X * sin + output.Y * cos);

            agent.decision = vRotated;
            agent.Move();
        }