Skip to main content

online-resource-scheduling

Design deterministic online scheduling policies from current observations. Use when assigning arriving work to limited resources without seeing future requests.

소스 정보

저장소
benchflow-ai/skillsbench
최근 소스 활동
2026년 5월 30일 04:55
감지된 SKILL.md 언어
영어
스타
1,830
포크
370

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
online-resource-scheduling
description
Design deterministic online scheduling policies from current observations. Use when assigning arriving work to limited resources without seeing future requests.
# Online Resource Scheduling Use this skill to build online schedulers that make deterministic decisions from the current observation only. ## Core Workflow Convert each observation into a temporary state, rank pending work, score feasible actions by weighted marginal cost, update the temporary state immediately, then replay the final action list before returning it. ```text actions = [] temporary_state = copy_resources(observation) for item in ranked_pending_items(observation): candidates = enumerate_feasible_actions(item, temporary_state) if not candidates: actions.append(defer_or_reject(item)) continue scored = [] for action in candidates: deltas = estimate_objective_deltas(action, temporary_state) score = sum(weights[k] * deltas[k] for k in deltas) scored.append((score, stable_tie_break(action), action)) chosen = min(scored)[-1] actions.append(chosen) apply(chosen, temporary_state) validate(actions, observation) return actions ``` ## Weighted Marginal Scoring When a task provides objective weights, use them to compare feasible actions. Avoid fixed rules such as "always first-fit", "always minimize fragmentation", or "always use the tightest slot". Those can be wrong when another objective component has a larger weighted effect. Suggested generic workflow: 1. Read visible objective weights. 2. For each pending item, enumerate feasible actions. 3. For each feasible action, estimate the change in each objective component. 4. Compute `weighted_marginal_score`. 5. Choose the feasible action with the lowest score. 6. Apply the action to temporary state before scoring later actions. ```text weighted_marginal_score = weight_1 * delta_component_1 + weight_2 * delta_component_2 + weight_3 * delta_component_3 + ... + deterministic_tie_break ``` Feasibility remains a hard filter. Only score feasible actions. Useful components might include resource activation cost, residual-capacity cost, waiting or lateness cost, rejection or unserved-work cost, and fragmentation or stranded-capacity cost. ## Unrelated Example In delivery planning, the shortest route is not always best. Suppose route distance has weight 1, but opening a new vehicle has weight 100. Sending a package on an already-open vehicle with 5 extra miles may be better than opening a new vehicle with only 1 extra mile: ```text weighted score = distance_weight * extra_distance + vehicle_weight * new_vehicle_used ``` The correct decision compares the weighted score, not distance alone. ## Practical Guidance - Use only information present in the current observation. - Prefer deterministic tie-breaking so repeated runs are reproducible. - If no feasible action exists, defer or reject rather than guessing. - Validate the complete action list, not just each action in isolation.
GitHub에서 보기