Skip to content

Task-대피 완료 에이전트 Motion 계산 제외 #236

@muzygosu

Description

@muzygosu

Summary

대피 완료된 에이전트가 이후 Motion 시스템의 이동, 경로 전진, 공간 인덱스, 회피, 충돌 해소 계산에 계속 포함되어 100명 시나리오 후반부에도 불필요한 계산 비용이 남는 문제를 줄입니다.

Parent Issue

Area

Domain

Target Sprint

Later

Scope

  • ScenarioSimulationMotionSystem 내부에서 전체 시뮬레이션 엔티티 목록과 미대피 활성 엔티티 목록을 분리합니다.
  • EvacuationStatus.evacuated == true인 에이전트는 Motion hot path 계산에서 제외합니다.
  • 총원 집계, 완료 판정, T90/T95 키프레임 판단은 기존 전체 엔티티 기준을 유지합니다.
  • 출입구 큐, 흐름 용량, 경로 선택 알고리즘 등 시뮬레이션 모델 변경은 포함하지 않습니다.

Acceptance Criteria

  • 이미 대피 완료된 에이전트가 Motion 시스템의 이동/회피/충돌 해소 루프에 들어가지 않습니다.
  • 새로 대피 완료된 에이전트는 같은 프레임의 후속 Motion 계산에서 제외됩니다.
  • 시뮬레이션 완료 판정은 전체 에이전트 수 기준으로 유지됩니다.
  • safecrowd_domainsafecrowd_app 빌드가 통과합니다.

Architecture / Dependency Check

  • 변경은 src/domain 내부에 한정합니다.
  • domain은 Qt/application에 의존하지 않습니다.
  • engine 계층 API는 변경하지 않습니다.
  • include 경로와 기존 계층 방향 application -> domain -> engine을 유지합니다.

Verification Plan

  • cmake --build --preset build-engine-domain-debug --target safecrowd_domain
  • cmake --build --preset build-debug --target safecrowd_app
  • 동일 시나리오에서 대피 완료 후 active agent 수가 줄어드는 구간의 체감 성능 비교

Dependencies / Blockers

Repository Checks

  • I checked for an existing related issue or epic before creating this task.
  • I will keep the issue title aligned with the repository naming convention.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions