https://gall.dcinside.com/factorio/97530


위 글에서 이어짐


영상 보다보니까 재밌는게 많네ㅋㅋㅋ


======================================



2.2 건물의 회로제어를 통한 최적화 시도



이제 다른 참가들의 구성을 볼 차례임



- 유튜버 본인은 14번, 비교 대상은 35번 참가자


유튜버 본인을 포함해서 총 5명의 참가자가 레시피 전환 방식을 사용했음


레시피 전환을 통한 ups 관리를 할때 주의할점이 있는데



레시피를 전환할때 비용을 매우 많이 소모하기때문에 이를 적절하게 사용하는게 중요함


35번 참가자의 경우 레시피 전환 방식을 선택했지만 추가적으로 독특한 방식이 있는데




엔진 유닛을 생산할 때  단일 주조소에서 강철, 파이프, 톱니바퀴를 모두 생산하고 이를 3개의 투입기로 한번에 넣음




이렇게 하면 3개의 묶음투입기가 한번에 한가지의 재료를 넣게 되는데


이때 건물의 최대투입제한을 넘길 수 있음


*기존의 방법으로 같은 환경에서 실험 결과, 최대 투입 제한이 5개고 4개에서 투입기로 16개가 추가되서 = 20개정도가 최대임, 유튜버도 몰랐다고 함


이렇게 되면 레시피 전환 웨이브를 줄일 수 있지만, 결국 빠르게 생산-소비되는 재료이다 보니 레시피 전환이 자주 일어나게 됨



그 결과가




끝을 모르고 측정한계치(3500 업데이트 비용)를 넘어 튀어버리는 회로 제어 업데이트 비용


시도는 좋았지만 너무 자주 레시피가 바뀌어 최종적으로 베스트에 들진 못했음




실험 내용과 기존의 지식을 모두 반영한 결론 도출



최종적으로 영상에서는 최고의 ups 퍼포먼스를 위한 공장 설계 요소를 선택했음



1. 가능한 적은 수의 건물과 필요 이상의 과도한 비콘 설치하지 않기


2. 묶음 투입기의 활성화 조건을 >16개로 하거나 완벽한 비율로 맞춰 아예 회로 네트워크를 사용하지 않기


3. 벨트 위의 아이템이 움직이지 않을 때 집는 것이 소모되는 비용이 가장 적으며, 이를 위해 아이템을 계속 떨어트리는 행위를 하더라도 좋은 효율성을 보여줌

 

4. 흐름률에 따라 벨트 운송과 건물-건물 간 직접 투입 선택하기


화학팩은 전체적으로 적은 재료와 많은 시간을 필요로 하기 때문에 투입기가 자주 움직이지 않아 화학팩 재료들을 벨트로 운송시키고 3번과 연계하여 ups 최적화가 가능하지만


빨간칩을 만들때 구리전선을 벨트로 옮긴다거나, 생산과학팩의 철도를 벨트로 옮기는건 투입기가 벨트에서 집는 과정에 너무 많은 비용을 소모하기 때문에


이런 경우는 건물-건물 간 직접 투입으로 ups 비용을 최소화시켜야 함


5. 레시피 전환은 엔티티 업데이트 비용을 매우 많이 소모하기 때문에 SR래치 또는 중간에 상자를 두어 레시피 전환을 최소화



다음 영상은 최종적으로 좋은 ups를 보여준 7개의 청사진에 회로를 전혀 사용하지 않은 1개의 청사진을 추가하여 총 8개로 결승을 진행할 예정임

 

측정 시간은 36,000틱에서 108,000틱(1시간)으로 늘리고


각 청사진에서 좋은 부분을 골라 섞은 새로운 청사진도 테스트해볼 예정임




여담 (안읽어도 됨)



유튜버가 쓰는 방식과 최종적으로 1등을 기록한 설계는 '레시피를 전환하고 그 재료를 상자에 보관하여 레시피 전환 최소화와 투입기 활성화/비활성화를 통한 최적화'의 방식을 사용함


근데 문제가 한가지 있는데


이 설계를 사용했을 때 4~5시간 정도 지나면 화학팩 생산이 멈춰버림 (....??)


자기도 아직 문제를 모르겠다고 함




그리고 유튜버가 좀 강하게 비판한 부분이 있는데


지금 이렇게 ups 최적화 하려고 온몸비틀기를 하고 있는 와중에 문제가 되는 점이 있다고 함


바로 묶음 투입기가 항상 최대 스택의 크기를 제대로 활용하기 어렵다는 점임 



X. 최대투입제한 시스템에 대한 비판


위에서 언급한 '투입기 3개를 한번에 활성화시켜 최대 투입 제한을 넘기는' 것과도 살짝 연관되어 있음


전 글에서도 볼 수 있지만 꽤 많은 사람들이 묶음투입기를 16개로 온전히 사용하지 않고 굳이 8개로 제한시켜서 한번 할 일을 두번 하게 만드는 설계도를 구성했는데


실제로 묶음투입기를 16개로 설정해놓고 돌려보면 공장의 재료 수량이 '진동'하는 성향을 보이기 때문임




이건 최대투입제한 때문인데


영상에서는 일단 생산공정을 돌려놓아 최대한 '평소와 같은' 상태로 맞춰놓은 뒤, 녹은 철 공급을 중단했음


그럼 당연히 화학팩 공정 전체가 멈추겠지?


이때 화학팩을 만들던 조립기계를 살펴보면 24개, 40개, 4개, 20개 이런식으로 서로 다른 비율로 남아있음


다시 녹은 철을 공급하면 시간이 다시 지나서



- 다시 녹은 철을 공급한 뒤 특정 시점에 일시정지 시킨 부분


이렇게 모든 조립기계가 황 8, 빨간칩 8, 엔진유닛 4, 과학팩 12개의 비율로 맞춰짐



*생산성이 증가해서 꺼낼 물건은 많아지는데 최대투입제한 때문에 최종 생산량에 불균형이 생겨 대용량보다 묶투가 더 많이 집음에도 불구하고 제대로 활용하지 못하고 있다는 설명임 



이걸 해결하는 방법은 있는데 유튜버 본인이 설명하기도 너무 어렵고 디버깅도 너무 어렵고 공장은 복잡해지고 막상 이걸 쓰는사람이 이 메커니즘을 이해하지 못하면 공정이 아예 꼬여버림


암튼 그냥 힘듬 지루하고 현학적임


게다가 딱히 알고싶어하지도 않음



메가베이스 만드는 사람이야 ups에 신경쓴다고 하지만 대부분의 유저는 ups는 커녕 메가베이스도 안하는데


이렇게 장황하고 밑도끝도 없는 피드백을 누가 듣고싶어하겠음?


'당신의 투입기가 한번만 해도 되는 일을 두번 하기 때문에 당신은 손해를 보고 있습니다' 라는 말은 듣기도 힘들지만 반대로 하는 사람도 힘듬



한번에 12개를 옮기는 대용량 투입기보다 한번에 16개를 옮기는 묶음투입기가 더 좋은건 너무나도 당연해 보이나


이러한 상황때문에 제대로 사용을 못하고 있음



유튜버는 이걸 '품질로 인한 생산성 증대를 고려하지 않았기 때문'이라고 말하고 있고, 


1. 투입 한계가 생산성 보너스를 반영하거나


2. 제일 좋은건 모드 없이도 설정에서 직접 최대투입제한 승수(overload multiplier)를 변경할 수 있게 하는것


을 팩토리오 개발진 중 한명에게 전달했다고 함


다만 2.1에 이게 반영될지는 미지수




=======================================


네 암튼 이번 영상 번역과 요약을 대충 해보았는데


와 진짜 이사람 어떻게 이런 주제로 한시간동안 떠드는지;; 신기하네



이번 글들은 영상과 관련된 내용을 옮겨 적었을 뿐이라


ups 최적화와 관련된 일부 내용은 전 글 댓글에 있으니 직접 참고하길 바래용