```python
def gen_plan(state: DrawState, pos: list, size: float, offsets: list):
    import math

    x, y = pos
    num_sides = 5
    angle = 2 * math.pi / num_sides

    # Calculate the vertices of the pentagon
    base_vertices = [
        [x + size * math.cos(i * angle), y + size * math.sin(i * angle)]
        for i in range(num_sides)
    ]

    # Add offsets to each vertex
    perturbed = [
        [px + dx, py + dy]
        for (px, py), (dx, dy) in zip(base_vertices, offsets)
    ]

    # Create draw_line actions
    actions = []
    for i in range(num_sides):
        x0, y0 = perturbed[i]
        x1, y1 = perturbed[(i + 1) % num_sides]  # Wrap around to close the pentagon
        actions.append(Action("draw_line", [x0, y0, x1, y1]))

    return actions

def gen_initial_guess(initial: DrawState):
    return {
        "pos": [0.32, 0.24],  # Center of the drawing board (cm)
        "size": 0.1,          # Pentagon side length (cm)
        "point_offsets": [[0., 0.]] * 5  # 2D point offsets for the pentagon (5 points)
    }
```