블럭 장난감 제조 공정 최적화 AI경진대회

baseline 코드에서 왜 MOL의 개수가 12개로 되어있는지 궁금합니다.

2020.06.09 16:59 4,518 조회

안녕하세요.  2가지 행동을 정하는 문제에서  첫번째 Event를 선택하는 것에서는 Check 1 ~4 , Process 총 5개로 되어있는 것은 먼가 이해가 되는데,  두번째 MOL(0~5.5 , step=0.5)로 왜 12개로 되어있는지가 궁금합니다.


이것이 고정된 값인가요? 아니면 변경될 수 있는 값인가요?


감사합니다.


추가)

Mol (1,2,3,4)의 순열을 의미하는 건가요?  4P2 = 12

그리고 MOL을 0에서 5.5로 설정하는 이유가 먼지도 알 수 있을까요?

로그인이 필요합니다
0 / 1000
나단단단단단단단단단단단단단단단단단단단
2020.06.09 17:13

출력을 보시면 0부터 5.5까지 0.5를 간격으로 12단계로 이루어져 있습니다.

이는 출력을 argmax로 하기 때문에 인덱스값인 0부터 11을 절반으로 나눈 값이 출력값이 됩니다. 신경망의 출력 부분을 살펴보시면 이해가 조금 더 가실것 같습니다.

예를들면 10에 0.6을 곱하는 식으로 출력하게 되면 0부터 5.4까지 10스탭으로 이루어진 출력이 되겠죠.

5.5까지 출력한 이유는 아마도 5.8이 시간당으로 나누면 맥스값에 가깝기 때문에 그렇게 설정하신걸로 생각됩니다.

SRLEE
2020.06.09 17:37

답변 감사합니다! 그러면 궁금한 것이 있는데, 왜 추론하고 나온 argmax한 값을 그대로 사용하지 않을까요??

나단단단단단단단단단단단단단단단단단단단
2020.06.09 18:04

아마도 이산화된 출력값을 맞추기 위함이라 생각됩니다.

SRLEE
2020.06.09 18:30

line A랑 line B랑 같다고 가정하고,  get_score에서 out_2+out_3 에서 나오는 값이 만약에 5.5 , 5.5면 11과 같이 이산화된 출력값을 맞추기 위한 것이라고 생각해도될까요??

나단단단단단단단단단단단단단단단단단단단
2020.06.09 18:50

네 저도 말씀하신것과 같이 생각합니다.

SRLEE
2020.06.09 19:32

빠른 답변 주셔서 정말 감사합니다!

DACONIO
2020.06.09 17:14

MOL_A, MOL_B에 들어갈 투입 개수로 0, 0.5, 1.0, ..., 5.0, 5.5 중 하나를 택하기 위해 12로 설정되었습니다.
베이스라인 코드는 자유롭게 수정하여 사용 할 수 있습니다. 값을 변경해서 사용하셔도 무방합니다. 

SRLEE
2020.06.09 17:32

감사합니다. 그러면 혹시 이 부분을 바꾸면 get_score에 cal_schedule_part_2 부터 값이 변경될 것 같은데,  score 계산시 큰차이가 발생하지 않는 부분일까요?

DACONIO
2020.06.09 17:44

공정한 대회 운영을 위해 모델 성능과 관련된 사항에는 답변드리지 않으니 양해해 주시기 바랍니다.

SRLEE
2020.06.09 17:50

넵! 그러면 혹시 다른 질문을 드리자면, simulator에 get_score 랑 실제 계산할 시에 Score가 계산식이 다른 것 같은데, 이유를 알 수 있나요?

DACONIO
2020.06.09 17:54

get_score 함수는 단순 BLK 생산 부족분 합을 리턴합니다. 베이스라인에서는 이해를 돕고자 가장 간단한 형태의 목적함수를 사용했습니다.

SRLEE
2020.06.09 18:32

넵 답변주셔서 감사합니다!