할당 많은 학생들의 많은 학교에 따라 용량
-
29-09-2020 - |
문제
가 설정 학교의 좌표가(S).나는 또한 집합 지역의 좌표 중심(N).
내가 얼마나 많은 아이들은 각 지역에,그리고 그들로 분류되거나 기본,중 또는 고등학교입니다.그래서,즉,
N = [(locationN1, primary:3, middle:10, high:4), (locationN2, primary:10, middle:17, high:7), ...]
내가 알고있는 방법을 많은 명소에서 사용할 수 있는 각 학교,형식으로 되:
S = [(locationS1, primary:20, middle:5, high:2), (locationS2, primary:12, middle:7, high:8), ...]
나의 목표가 일치하는 많은 학생들로 가능한 학교 내에서 특정 반경.그것은 가능하다(매우 가능성이 높)내 계산 일부 학생들이 학교이 덜합니다.
내가 원하는:를 식별하는 이웃이 있는 학교 미만 어린이와 어떻게 많습니다.
현재 내 계획:
- 목록 모든 페어링 및 해당 사이의 거리 학교와 지역 내에서 반경
- 기 위해 거리로부터 최상
- 우선 순위에 따라 거리
- 루프 인근에서 순서의 외관(각 지역 여러 번 나타날 수 있 연결해 주는 학교 내에서 정의 반경)
- 을 채우 해당 학교에서 아이들과 지역
- 제 촬영 명소 학교에서 용량
- 다음으로 이동하는 지역 학교의 페어링,...
예를 들어:
말를 받은 다음 주문하는:
기 위해=[(neighborhood_2,school_7,distance1),(neighborhood_5,school_2,distance2),(neighborhood_2,school_2,distance3),(neighborhood_2,school_3,distance4)...]
그런 다음,school_7 을 받는 아이들에 neighborhood_2.지 모든 어린이에서 neighborhood_2 에서 찍은 수 있습에서 school_7.
그런 다음,school_2 받은 학생들에서 neighborhood_5.지금 가정 school_2 전체 중학교에 대한 용량입니다.
그런 다음,neighborhood_2 여전히있는 학생들 파견,그래서를 보내려고 그들을 school_2.기본 및 고등학교,문제 없습니다,그들은 지금 모든 전달됩니다.하지만 중학교가 가득 찼습니다.
그런 다음 우리는 다음에 이동 페어링 및 school_3 져 나머지는 중학교에서 학생들 neighborhood_2.한 경우에는 distance4 했다 보다 높은 제한이 반경이 중학교 학생들로 분류 된 것교-이하지 않기 때문에 다른 쌍을 사용할 수 있습니다.
는 경우,또한 neighborhood_4 은 oit 의 제한이 반경에 대한 어떤 학교든 아이들은 고려 학교이 덜합니다.
1)나는 알고리즘 정확합니까?
2)의 이름은 무엇이 문제인가?가 많은 많은 포인트 매칭,capacitated 할당 문제 또는"유효"일부 시설의 위치 문제이지만,이는 특정 변종에 대한 몇 가지 이유(아마도 가난한 검색 기술)
3)나는 어떻게 효율적이거나,그것은 매우 합리적 이 방법은?(효율은 나의 주요 관심사,그러나 쉽게 수정사항을 환영합니다)
4)나 외에 다른 옵션 거리 분류?기술적으로,나의 케이스에서,거리가 훨씬 중요하지 않 우선 순위를 부여하기 위해,그것의 더 많은 무작위(또는 말 박람회)할당으로 예를 들면 시간의 받은 응용 프로그램(unknown)데이터.그래서 나는 방법이 표시 가능성이 100%를 할당을 위한 근처에 매우 가까운 학교 amd 무리의 학교-미만 어린이에 farrher 지역,아직되지 않을 수 있습(지)진정한 실제 생활에서.
해결책
이 표현할 수 있습의 문제로 찾기 최대치로서 양자 그래프:각각의 아이가 하나 왼쪽에 꼭지점,각 슬롯 학교에서 올바른 정점,그리고 거기 가장자리를 사이에 두 개의 정점을 경우 그들이 일치할 수 있습니다.
귀하의 경우에,당신이 그것을 해결할 수 있다 더 효율적으로 사용 최대 흐름.게 작업을 세부 사항입니다.