“Make the schedule better” sounds like a clear goal until two people disagree about what better means. One wants balanced workload. Another wants continuity. A third needs a particular skill on every job.
First decide what is allowed
Begin with the conditions that make an assignment permissible in your operating model. A required skill, a defined availability window or a deliberately fixed assignment gives the planner a boundary. Those conditions are different from preferences about a good outcome.
Use concrete examples. Rather than “respect availability,” specify whether work must fit entirely within an availability window and what happens to work that cannot be assigned. Ambiguity in the rule becomes ambiguity in the result.
Then describe the trade-offs
Valid plans can still be very different. One may distribute work more evenly; another may keep a familiar resource on recurring work. Decide which measures matter, over what period, and how conflicting preferences should be treated.
“Balance workload” is not a complete objective. You need to decide whether you are balancing hours, job counts, intensity or another measure, and which resources should be compared.
Make room for an impossible problem
Sometimes the inputs cannot produce a plan that satisfies every requirement. There may not be enough qualified capacity in the available period. Define how the application communicates that situation and what the planner can change.
Leaving work visibly unassigned may be more useful than quietly weakening a requirement. The appropriate behaviour depends on your operating model, but it should be an explicit decision.
Keep a human owner for the rules
A model turns decisions into repeatable logic. It does not remove the need for domain expertise. Give important rules an owner, test representative cases and revisit assumptions when the operation changes. A useful planning model is explainable to the people responsible for its outcomes.