제약 업계 기업들은 보관 온도에서 시간에 따른 제품 성능 변화를 측정하여 유통기한을 입증해야 합니다. 시험 시간을 단축하기 위해 고온에서도 시험을 진행하는 경우가 많습니다. 아레니우스는 1889년에 서로 다른 온도에서의 결과를 하나의 모델로 통합하는 방법을 제시했지만, 여전히 많은 기업들이 각 온도별로 데이터를 분석하고 있습니다. 데이터를 여러 모델로 분류하는 것은 비용 효율적이지 않기 때문입니다.
또한, 유통기한에 대한 지속적인 검증이 필요하며, 이때 모든 개별 측정값이 규격 범위 내에 있어야 한다는 조건이 흔히 적용됩니다. 그러나 측정 오차로 인해 이 기준을 충족하지 못하는 경우가 많습니다. 따라서, 초기 유통기한 연구에서 도출된 예측 범위 내에 측정값이 있어야 한다는 조건을 적용하는 것이 더 완화된 요구 사항일 수 있습니다.
JMP는 분해/비선형 경로/정률 플랫폼에서 아레니우스 방정식을 지원합니다. 그러나 이 플랫폼은 스튜던트화 잔차 플롯, 박스-콕스 변환, 랜덤 요인, 예측 구간과 같은 Fit Model 플랫폼의 뛰어난 기능 중 일부를 제공하지 않습니다.
이 프레젠테이션에서는 아레니우스 방정식을 테일러 전개를 통해 단 네 개의 항만으로 구성하여 최소제곱법 플랫폼에 입력하는 방법과 JMP 워크플로우를 통해 계산을 간소화하는 방법을 보여줍니다.
JMP 파트너로서 저희가 어떻게 고객사의 비용 절감, 특히 스마트 유통기한 계산 및 검증 과정에서 발생하는 부적합 사항 방지를 돕는지에 대해 말씀드릴 기회를 주셔서 감사합니다.
먼저, 저희 고객사에서 진행 중인 유통기한 연구, 특히 지속적인 검증 과정에서 발생한 몇 가지 문제점을 설명드리겠습니다. 유통기한 연구를 살펴보면, 일반적으로 3~4개의 배치(batch)를 대상으로 시간 경과에 따른 변화를 측정하여 유통기한을 설정합니다. 최종 농도는 시작 농도와 변화 추이에 따라 달라지는데, 모든 배치에서 변화 추이가 동일하기를 바랍니다.
하지만 종종 각 배치별로 초기 농도가 다른 경우가 있습니다. 이는 향후 생산되는 배치에 대한 지속적인 검증 과정에서 문제가 될 수 있는데, 초기 농도가 낮으면 유통기한 측정 시 규격 미달로 문제가 발생할 수 있기 때문입니다.
저희가 권장하는 방법은 유통기한을 배치 출하 시점의 요구사항으로 전환하는 것입니다. 즉, 유통기한 내에 규격에 부합하도록 하려면 시점 0에서의 값이 얼마여야 하는지를 정하는 것이죠. 이 부분은 나중에 다시 설명드리겠습니다.
선형 회귀 분석은 절대적인 척도로 수행되는 경우가 많지만, 열화는 상대적인 값입니다. 열화 값이 크다면 실제 열화율을 제대로 나타내는 것이 아닙니다. 해결책은 간단합니다. 회귀 분석을 수행하기 전에 데이터에 선형 대수(Ln)를 적용하면 됩니다.
피에르, 죄송하지만 잠시 말씀 좀 드려도 될까요? '줌에서 화면을 공유하고 있습니다'라는 버튼이 보이네요.
이제는 없어진 것 같아요.
작업 표시줄을 숨길 수 있는 방법이 있을까요? 너무 커서 마치 아래쪽에 작업 표시줄이 두 개 있는 것 같아요.
좋아, 다른 걸 시도해 보자. 이게 마음에 든다면, 이게 더 나을까?
훨씬 나아졌네요, 네.
지금 프레젠테이션 모드로 보여주고 있으니, 프레젠테이션 모드로 보여주는 게 좋을 것 같네요.
네, 좋아 보이네요.
계속 진행하기 전에 한번 시도해 볼게요. 왜냐하면 앞으로 JMP를 공유할 때 이렇게 할 거거든요. 그러면 제가 JMP 작업을 하는 동안 작업 표시줄이 보일 수도 있어요.
괜찮아요, 네, 그런 것 같아요.
그렇게 하는 게 맞을까요?
그렇게 합시다.
저는 파워포인트를 만들 때 프레젠테이션 모드로 합니다. 그게 더 효과적이라고 생각해요.
네, 완벽합니다. 감사합니다.
아무래도 처음부터 다시 시작해야 할 것 같네요.
다시 시작할게요. 죄송합니다.
약 2분 정도 걸리니까 큰 문제는 아니에요.
NNE의 JMP 파트너로서 저희가 어떻게 고객사들이 더 나은 유통기한 연구를 수행하고 특히 검증 과정에서 부적합 사항 발생 건수를 최소화할 수 있도록 지원하는지 말씀드릴 기회를 주셔서 감사합니다.
먼저, 유통기한 연구, 특히 지속적인 검증 과정에서 발생하는 문제점에 대해 간략히 설명드리겠습니다. 저희는 귀하께서 언급하신 유통기한이 여전히 유효한지 확인하기 위해 정기적으로 여러 배치에 대한 테스트를 진행하고 있습니다. 첫 번째 연구는 유통기한 추정 연구인데, 이때 유통기한을 설정하고 일반적으로 3~4개 배치를 선정하여 시간에 따른 변질을 관찰합니다. 이렇게 네 배치의 변질 정도를 측정하고, 이를 바탕으로 유통기한을 계산합니다.
하지만 시간이 지남에 따라 나타나는 농도 수준은 당연히 기울기에 따라 달라지는데, 이것이 바로 주요 목적, 즉 감소율입니다. 유통기한 연구에서는 농도가 중요한 요소이지만, 시작점 또한 중요합니다. 유통기한 예측 연구에서는 단 세 개 또는 네 개의 배치만 사용했고, 앞으로 다른 배치들을 통해 검증할 예정인데, 만약 검증 대상 배치들의 초기 농도가 유통기한 연구에 사용했던 배치들보다 낮다면, 비록 초기 농도가 낮다고 해서 감소율이 더 높지는 않더라도 검증 과정에서 문제가 발생할 수 있습니다.
저희 해결책은 유통기한 방정식을 요구 시간 단축을 위한 초기값, 즉 출시 한계값으로 변환하는 것입니다. 물론 이 출시 한계값은 유통기한에 필요한 값보다 높아야 하므로 변경의 여지가 생깁니다. 이렇게 하면 향후 생산되는 배치에 민감하지 않게 되는데, 출시 한계값을 충분히 높게 설정할 수 있기 때문입니다. 또한 많은 사람들이 시간에 따른 회귀 분석을 절대적인 척도로 수행하지만, 품질 저하는 상대적인 현상입니다. 회귀 분석을 수행하기 전에 데이터에 Ln 값을 적용하는 것을 강력히 권장합니다.
또한 많은 기업들이 측정 재현성 문제로 어려움을 겪고 있으며, 특히 유통기한 측정은 가장 어려운 경우입니다. 왜냐하면 당연히 각 배치별로 매우 다른 시점(일반적으로 수년 간격)에 측정해야 하기 때문입니다. 모든 것이 변하기 때문에 안정적인 측정 시스템이 없다면 회귀 곡선에 많은 노이즈가 발생합니다. 이러한 노이즈를 줄이려면 모델에 측정 시점을 랜덤 변수로 입력하는 것이 효과적입니다.
많은 기업들이 다양한 온도에서 유통기한을 측정하는 것을 자주 보는데, 이는 테스트 속도를 높일 수 있기 때문에 좋은 방법입니다. 하지만 이상하게도, 일반적으로 온도별로 모델링을 따로 하는 경우가 많습니다. 여러 온도에 걸쳐 모델링을 하는 경우는 매우 드뭅니다. 모든 온도를 설명하는 하나의 모델만 사용하는 것이죠. 물론, 저희는 여러 온도에 걸쳐 모델링을 할 것을 강력히 권장합니다. 그래야 더 다양한 온도 범위를 입력하여 잔차를 추정할 수 있기 때문입니다.
같은 맥락에서, 사람들이 온도를 모델링할 때, 각 온도마다 시간 0에서의 측정값이 필요하다는 것을 알 수 있습니다. 하지만 시간 0에서의 측정값은 시작값이기 때문에 실제로는 동일한 측정값을 사용하게 됩니다. 따라서 여러 온도에 걸쳐 모델을 구축할 때는 주의해야 합니다. 예를 들어, 잘못된 온도 값이 있는 경우처럼 동일한 관측값이 네 번 반복되지 않도록 해야 합니다.
온도 변화에 따른 모델링에서 가장 중요한 점은 한 온도에서만 데이터를 기록해야 한다는 것입니다. 그러면 어떤 온도에서 측정하든 상관없습니다. 왜냐하면 그 온도가 기준점이 되기 때문입니다. 이는 유통기한을 설정할 때 흔히 발생하는 문제입니다. 저희가 권장하는 해결책은 다음과 같습니다.
그다음 유통기한 검증을 할 때는, 특정 유통기한을 정해 놓고 정기적인 간격으로 그 유통기한이 여전히 유효한지 확인해야 합니다. 이를 위한 ICH 가이드라인이 있는데, JMP에도 포함되어 있습니다. 잠시 후에 자세히 설명드리겠습니다. 일반적으로 3~4개의 배치를 생산하고, 가장 품질이 낮은 배치의 기울기에 대한 신뢰 구간을 구하여 유통기한을 결정하는 방식입니다.
하지만 이는 다소 어려운 문제인데, 왜냐하면 처음 세 배치 중 첫 번째 배치를 확인했다고 가정해야 하기 때문입니다. 하지만 실제로는 그렇지 않은 경우가 많습니다. 바로 이러한 이유 때문에 ICH 방법을 권장하지 않습니다. ICH 방법은 검증 과정에서 문제를 야기하는 경우가 많기 때문입니다.
또한 많은 사람들이 관측값이 독립적이라고 가정하고 자유도를 n-1로 계산하기 때문에 기울기 표준 오차를 지나치게 낙관적으로 추정하는 경우가 종종 있습니다. 하지만 실제로는 동일한 분석 과정에서 여러 번 측정을 수행하는 경우가 많습니다. 분석 결과가 일대일로 차이가 나는 경우, 이는 독립적인 측정이 아니므로 유효 자유도를 조정하여 이를 보정해야 합니다. 단순히 측정값을 난수 요인으로 넣는 것만으로는 이러한 보정을 할 수 없습니다.
그러면 일반적으로 표준 오차가 약간 커지게 되는데, 이것이 문제로 여겨질 수도 있습니다. 하지만 실제로는 시작 값에 대한 요구 조건이 높아지므로 검증 실패 위험을 최소화할 수 있습니다.
마지막으로, 그리고 무엇보다 중요한 것은, 여전히 많은 회사들이 검증 단계에서 모든 측정값이 규격 범위 내에 있어야 한다고 주장한다는 점입니다. 하지만 측정 문제가 발생할 경우, 그리고 실제로 측정 문제는 항상 존재합니다. 이러한 경우, 측정 문제로 인해 유통기한이 규격 범위를 벗어날 수 있습니다. 저희가 권장하는 방법은 적절한 자유도를 가진 모델을 구축하는 것입니다. 이 모델은 유통기한 설정에 사용했던 동일한 데이터를 기반으로 구축해야 하며, 이를 통해 미래 관측값이 나타날 것으로 예상되는 예측 구간을 설정해야 합니다. 이 예측 구간은 일반적으로 규격 범위보다 약간 넓게 설정하여 오류 발생 위험을 최소화할 수 있습니다.
이제 JMP에서 해당 공식과 플랫폼을 찾는 방법을 간략하게 설명드리겠습니다. 하지만 발표 자료에서 공식을 바로 확인하실 수 있으므로, JMP에서 직접 시연하는 것이 더 흥미로울 것 같아 빠르게 진행하겠습니다. 먼저 릴리스 제한부터 살펴보겠습니다.
기울기와 기울기에 대한 표준 오차를 어떻게 변환하여 초기 방출 한계를 설정할까요? 예를 들어 시간이 지남에 따라 농도가 감소하는 물질이 있고, 하한 규격(Lower Specification Limit)이 있다고 가정해 보겠습니다. VSO의 안정성, 평가 및 최대 과학 지침을 따르면, 간단히 하한 규격에서 예상 기울기와 유통기한까지의 시간(즉, 유통기한 동안 농도가 얼마나 감소하는지)을 빼면 됩니다. 여기에 불확실성도 추가해야 하는데, 이는 기울기의 표준 오차와 초기 값의 측정 표준 편차에서 비롯됩니다.
실제로 우리는 이 공식을 그대로 사용하는데, 표준편차가 알려지지 않았기 때문에 정규분위수를 t분위수로 변환하는 것 외에는 차이가 없습니다. 측정 반복성의 추정치로는 모델에서 얻은 IMC 값을 사용합니다. 그 외에는 VSO 지침에 설명된 것과 정확히 동일합니다. 물론 모델을 구축하면 모델링 JMP에서 기울기를 얻고, 아래 공식을 기반으로 모델링 JMP에서 유효도를 얻고, 기울기에 대한 표준 오차와 잔차 오차를 얻게 됩니다.
이를 바탕으로 해당 값을 공식에 대입하면 하한 방출량을 구할 수 있습니다. 만약 병목 현상의 원인이 초기값 측정 시 발생하는 측정 노이즈라면, 초기값을 여러 번 측정하여 평균값을 구하면 N의 제곱근만큼 노이즈를 줄일 수 있습니다. 하지만 물론 이러한 측정은 분석적으로 매우 까다로워야 합니다.
다음으로, 시간에 따른 무게 변화를 모델링하려면 '모델 적합'을 선택하면 됩니다. 물론, 거기서 회귀 분석을 수행할 수 있습니다. 이때 결과에 '락(lock)'을 설정하는 것을 강력히 권장합니다. 반응 속도가 일정할 경우, 결과에 비례하는 선형적인 변화를 얻을 수 있기 때문입니다. 물론, 감소량이 작다면 락을 설정하지 않고도 모델링할 수 있습니다. 하지만 감소량의 크기에 상관없이 락을 설정하면 제대로 작동합니다.
온도 변화에 따른 모델링을 하려면 아레니우스 방정식을 사용해야 합니다. 이 방정식을 이용하면 활성화 에너지를 통해 다양한 온도에서의 분해 과정을 설명할 수 있습니다. 비선형 경로를 사용하는 분해 모델링 플랫폼은 JMP에서 잘 구현할 수 있으며, JMP를 사용하면 모든 온도에 걸친 모델을 구축할 수 있습니다. 이 플랫폼을 찾기만 하면 꽤 쉽게 만들 수 있습니다. 아마 맞을 텐데, 직접 찾아보셔야 할 겁니다. 잠시 후 JMP에서 시연해 보이겠습니다.
이를 바탕으로 모델 계수를 얻을 수 있습니다. 절편, 기울기, 활성화 에너지뿐만 아니라 표준 오차와 공분산도 얻을 수 있습니다. 이 값들을 종합하면 각 온도에서의 기울기와 각 온도에서의 기울기에 대한 표준 오차를 계산할 수 있습니다. 그런 다음 이 값을 하한 방출량에 대입하면 적정값을 알 수 있습니다.
이 모든 모델 매개변수, 표준 오차, 상관 관계는 JMP에서 간단히 얻을 수 있습니다. 하지만 이 값들을 제가 보여드린 방정식에 대입해야 합니다. 실제로 보기보다 간단하지는 않습니다.
이러한 이유로 아레니우스 방정식을 테일러 전개하는 것을 권장합니다. 테일러 전개를 하면 다항식으로 근사할 수 있기 때문입니다. 일반적으로 3차 다항식까지면 충분하며, 이를 위해서는 네 개의 서로 다른 온도가 필요합니다. 테일러 전개를 마친 후 모델 적합(Fit model) 기능을 사용하면 난수 변수를 추가할 수 있다는 장점이 있습니다. 앞서 언급했듯이 측정 시간을 난수 변수로 입력해야 합니다. 또한, 연구에 사용한 배치뿐만 아니라 향후 배치에서 발생할 수 있는 상황을 예측하기 위해 배치 자체도 난수 변수로 추가하는 것이 좋습니다. 물론, 이렇게 하면 모델 진단 기능도 향상됩니다.
아레니우스 온도를 적절하게 스케일링하여 관심 시점에서 0이 되도록 하면, 여기 있는 모든 항이 0이 되므로 사라집니다. 그러면 기울기와 표준 오차를 구하는 것이 매우 쉬워집니다. 모델의 시간 매개변수 앞에 있는 계수와 표준 오차만 있으면 되기 때문입니다. 이전 슬라이드에서 보여드린 것보다 훨씬 간단합니다.
3차 데이터 전개에 더해, 배치와 시간의 곱, 즉 배치와 시간 사이의 상호작용 항을 추가하여 배치에 따른 기울기가 나타나는지 확인할 수 있습니다. 바라건대 그런 경우는 없겠지만, 발생할 수도 있습니다. 더 나아가, 아레니우스 온도-시간 곱하기 배치 항을 추가하여 활성화 에너지가 배치에 따라 달라지는지 확인할 수도 있습니다. 이런 경우는 드물고, 물론 발생해서는 안 되지만, 가정을 세우기 전에 확인하는 것이 좋다고 생각합니다.
이제 JMP에서 어떻게 작동하는지 살펴보겠습니다. JMP로 화면을 전환하겠습니다. 여기에는 여러 온도와 시간에 걸쳐 여러 배치에 대해 연구한 사례가 있습니다. 먼저 결과를 살펴보겠습니다. 보시는 바와 같이 Ln 값이 표시된 결과가 나타납니다. 0개월부터 36개월까지 15, 25, 30, 40°C의 세 가지 온도에서 선형적인 관계를 보여야 합니다.
보시다시피 예상대로 온도가 높을수록 기울기가 가파르게 나타납니다. 이는 아레니우스 방정식으로 쉽게 설명할 수 있습니다. 각 배치(batch)는 각 시점에서 두 번씩 측정되었습니다. 또한 측정값이 매일 변동하는 일반적인 경우도 확인할 수 있습니다. 예를 들어, 3개월 차에 측정한 모든 값이 회귀 방정식 위에 있는 것을 볼 수 있는데, 이는 해당 날짜에 측정값이 실제보다 높게 나왔음을 나타냅니다. 반대로 9개월 차에는 측정값이 일반적으로 실제보다 낮게 나옵니다. 분명히 이 곡선은 측정 오차로 인해 오염되었습니다. 이는 매우 다양한 시점에서 측정이 이루어지기 때문에 흔히 발생하는 현상이며, 어떤 날에는 측정값이 다른 날보다 높게 나올 수 있습니다. 이러한 변동이 어떤 영향을 미치는지는 잠시 후에 살펴보겠습니다.
이제 모델링을 시작해 보겠습니다. JMP에서 열화 분석을 진행할 수 있습니다. 여기서는 온도를 통합할 수는 없지만, 온도별로 분석할 수 있습니다. 이는 ICH 가이드라인을 따르는 것입니다. 여기서는 15도에 대한 결과를 보여드리겠습니다. 유의수준 0.25에서 공통 기울기와 공통 절편을 가정할 수 있는지 여부를 확인하는 방식입니다. P값이 25 미만이면 절편과 기울기를 각각 다르게 설정해야 합니다. 예를 들어, 여기에서 15도에 대한 결과를 보면, ICH 가이드라인의 유의성 기준에 따라 공통 기울기를 가정할 수 있지만, 절편은 다르게 설정해야 합니다.
그런 다음 실제로 서로 다른 절편과 공통 기울기를 사용하여 각 회귀선에 공통 구간을 만들고, 그 다음 '배치'라는 단어를 사용하는데, 이 경우 '배치 B'입니다. 그런 다음 이 구간이 규격 한계, 즉 하한 규격 한계(Ln 척도)에 도달하는 지점을 나타내는데, 이것이 바로 유통기한이며, 이 경우 55개월입니다.
이 방법은 매우 간단하지만 몇 가지 문제가 있습니다. 첫째, 유의수준 0.25는 잘못된 유의성을 초래할 위험이 높습니다. 즉, 기울기가 달라야 한다고 잘못 판단할 수 있는데, 실제로는 그렇지 않을 수도 있다는 것입니다. 더 심각한 문제는 처음 세 배치 중 가장 품질이 낮은 배치만 고려한다는 점입니다. 최악의 배치가 처음 세 배치에 포함될 확률은 매우 낮습니다. 이는 향후 검증 과정에서 심각한 문제를 야기할 수 있습니다. 간단해 보일지라도 이 방법은 권장하지 않습니다.
물론, Fit 모델에서도 똑같은 모델을 만들 수 있습니다. 제가 여기서 보여드리는 것이 바로 그겁니다. 먼저 온도별로 모델을 만들고, 나중에 이를 결합할 겁니다. 여기서는 시간, 배치, 그리고 시간과 배치의 곱을 변수로 넣을 수 있는데, 이 경우에는 15도에 대한 변수입니다. 시간과 배치의 곱은 기울기가 배치에 따라 달라질 수 있다는 점을 고려하는 변수입니다. 따라서 공통된 기울기를 사용할 수 없습니다. 보시다시피 P값이 높게 나오는데, 저는 P값을 선호하지 않습니다. 표본 크기, 신호 대 잡음비 등에 매우 민감하기 때문입니다. 저는 표본 크기와 잡음 수준 등에 더 강건한 정보 기준을 선호합니다. 제가 선호하는 것은 아카이케 정보 기준(AIC)인데, 이는 로그 우도에 마이너스를 더한 값이므로 값이 낮을수록 좋습니다.
시간-배치 항을 제거하면 188에서 -193으로 떨어지는데, 이는 더 나은 모델이라는 의미입니다. 이제 공통 기울기를 사용할 수 있다는 것을 입증했습니다. 다음으로 배치 번호를 살펴보겠습니다. P값은 여전히 높은 쪽에 속하지만, 저는 P값을 사용하는 대신 정보 기준을 사용합니다. 배치 번호를 제거하면 100-3에서 -195로 떨어집니다. 계속 감소하고 있습니다. 이런 식으로 공통 절편을 사용할 수 있다는 것도 입증했습니다.
하지만 앞서 언급했듯이, 이 수치들은 서로 독립적이지 않으므로 주의해야 합니다. 지금은 JMP에 이 사실을 알려주지 않겠습니다. '모델 적합'에서 동일한 모델을 다시 실행하면 더 정확하게 분석할 수 있습니다. 차이점은 측정일을 랜덤 요인으로 추가한다는 것입니다. 이렇게 하면 같은 날짜의 측정값이 동일한 분석에서 나온 것이므로 그룹화된 측정값이라는 점을 보정할 수 있습니다. 이제 P값이 달라지는 것을 확인할 수 있습니다. 정보 기준을 다시 살펴보면 배치 번호와 시간을 곱한 값이 -207에서 -239로 떨어지는 것을 볼 수 있습니다. 더 나은 모델이며 공통 기울기를 정당화합니다. 하지만 배치 번호를 제거하면 어떻게 되는지 보겠습니다. 이전과 동일하게 측정일만 추가하면 -239입니다. 그런데 이제 -236으로 증가합니다. 이 값을 제거하면 안 됩니다. 즉, 공통 절편을 가정할 수 없다는 뜻입니다.
측정일을 입력해야 하는 이유를 잘 보여주는 예시입니다. 그렇지 않으면 측정값이 서로 독립적이지 않아 오해할 수 있습니다. 앞서 언급했듯이 온도에 따른 모델링은 비교적 간단합니다. 열화 데이터 분석으로 이동하여 비선형 부분을 입력하기만 하면 됩니다. 실제로 아레니우스 방정식이 내장되어 있어 네 가지 온도에서 공통 절편, 공통 기울기, 공통 활성화 에너지를 얻을 수 있습니다.
하지만 방금 보여드린 것처럼, 공통 기울기는 괜찮지만 공통 절편은 문제가 있습니다. 실제로는 절편은 분리하고 기울기는 분리해야 하는데, 여기서는 그렇게 할 수 없습니다. 대신 모든 배치에 대해 개별 매개변수를 사용하도록 설정할 수는 있습니다. 하지만 그렇게 하면 절편과 기울기가 분리되고, 이 경우에는 활성화 에너지가 공통이 되는데, 이는 타당하다고 생각합니다.
하지만 여기서는 공통된 기울기와 개별적인 절편을 동시에 갖는 것은 사실상 불가능합니다. 하지만 JMP에는 해결책이 있습니다. 비선형 플랫폼으로 이동하면 직접 피팅 방정식을 만들 수 있습니다. 거기서는 아레니우스 정리를 이용하여 보시는 바와 같이 공통된 활성화 에너지와 공통된 기울기를 가지면서도 개별적인 절편을 갖는 것이 가능합니다. 따라서 이는 실현 가능합니다.
하지만 여기서 어려운 점은 무작위 요인을 포함시킬 수 없다는 것입니다. 측정값이 독립적이지 않기 때문에 보정하기가 어렵습니다. 배치 또한 무작위 요인으로 포함할 수 없습니다. 일반적으로 필요한 배치 특성을 설명하는 모델을 만드는 것 자체가 어렵습니다.
이를 위해 저희는 모델 적합(Fit model)을 사용하고, 보시는 것처럼 아레니우스 방정식의 테일러 전개를 입력합니다. 1차, 2차, 3차까지 모두 적용하고, 각기 다른 절편에 대해 배치 번호를 입력하며, 기울기가 달라질 수 있는 경우를 고려하기 위해 배치 번호와 시간을 곱한 항도 입력합니다. 물론, 그런 경우가 없기를 바라지만, 최악의 경우 배치에 따라 활성화 에너지가 달라지는 것을 보정하기 위해 아레니우스 시간에 배치 번호를 곱한 항도 입력할 수 있습니다. 이는 다소 특이한 상황일 수 있습니다.
하지만 AICc를 보면, 처음에는 이 값을 선택하지 않고 -730으로 나옵니다. 얼마나 운이 좋은 걸까요? 값이 떨어지면서 -67까지 내려갑니다. 더 나은 모델이 된 거죠. 이제 저는 공통 활성화 에너지를 사용할 수 있다는 것을 입증했습니다. 동일한 배치 번호와 시간을 곱하면 P값은 경계선에 있습니다. 하지만 다시 아카이케 분류기를 보면, 값이 계속 떨어지는 것을 볼 수 있습니다. 이제 저는 공통 기울기를 사용할 수 있다는 것도 입증할 수 있는데, 이는 물론 아주 좋은 결과입니다. 이 모델에서도 이러한 작업을 수행할 수 있습니다.
보시는 바와 같이, 저는 측정일을 랜덤 효과로 추가했습니다. 이는 적합 모델(Fit model)에서 쉽게 할 수 있기 때문입니다. 분해 플랫폼(Degradation platform)에서는 이것이 불가능합니다.
보시다시피 기울기를 계산하는 방법은 여러 가지가 있습니다. 저는 여기서 다양한 방법이 하한 방출량에 어떤 영향을 미치는지 확인해 보았습니다. 이 작은 스크립트를 실행해 보시면 온도, 온도, 그리고 임의 시간을 고려한 다양한 계산 방법을 확인할 수 있습니다. 이 분해 플랫폼은 개별적인 경우, 비선형적인 경우 등 모든 것을 포함하며, 임의 시간을 고려하지 않은 테일러 해석과 임의 시간을 고려한 테일러 해석도 있습니다.
여기서는 모델에서 얻은 기울기와 표준 기울기를 입력합니다. 여기서 한 번의 측정으로 배치 출하를 진행할 경우 하한 출하 한계가 얼마인지 확인할 수 있습니다. 저희가 권장하는 방법인 임의 시간을 사용한 테일러 전개 방식이 가장 높은 출하 한계 중 하나를 제공한다는 것을 알 수 있습니다. 물론 출하 한계가 높을수록 추후 진행 중인 검증 과정에서 문제가 발생할 위험이 줄어듭니다. 모든 배치의 초기값이 약 10.09여야 합니다. 그렇지 않으면 유통기한까지 제품이 제대로 작동하는지 확신할 수 없습니다.
임의의 시간을 15도 간격으로만 적용해 보면, 15도 간격의 데이터가 결합되지 않는다는 요구 조건이 충족되어 방출 한계치가 더 높아지는 것을 알 수 있습니다. 이는 개별 모델을 구축함으로써 자유도가 줄어들기 때문입니다. 실제로 온도 전반에 걸쳐 모델을 구축하면 더 낮은 방출 한계치를 얻을 수 있으며, 이 한계치 또한 신뢰할 수 있습니다. 오른쪽에서 볼 수 있듯이, 초기 측정값을 두 개만 사용하고 배치 방출을 통해 측정 노이즈를 억제하면 방출 한계치를 더욱 낮출 수 있습니다. 10개를 사용하면 훨씬 더 낮출 수 있습니다. 초기 측정 횟수는 몇 회가 적당할까요?
배치 출하 승인은 물론 측정 오차에 따라 달라지며, 이는 병목 현상의 원인이 됩니다. 하지만 어떤 측정 방법을 사용하는지가 결과에 큰 영향을 미칩니다. 측정 오차를 보정하지 않으면 실제 생산된 제품의 출하 승인 한도가 너무 낮아져 추후 검증 과정에서 문제가 발생할 수 있습니다.
예를 들어 유통기한 설정과 같이 배치별 특성을 전반적으로 설명하려면 배치를 무작위 변수로 추가해야 합니다. 저는 배치와 측정일을 모두 무작위 변수로 추가했습니다. 이렇게 하면 제 연구에 사용한 세 가지 배치뿐만 아니라 모든 배치를 전반적으로 설명할 수 있습니다. 그런 다음 프로파일러로 이동합니다. 저는 아레니우스 온도 40.272, 즉 섭씨 15도로 설정했습니다. 여기에서 유통기한 상태를 확인할 수 있습니다. 이 회사는 24개월의 유통기한을 보장한다고 주장합니다. 모든 배치에 대한 일반적인 그래프를 보면 유통기한 범위 내에 안정적으로 유지되는 것을 알 수 있습니다. 이 회사는 15도에서 최소 24개월의 유통기한을 보장한다는 것을 입증하는 데 아무런 문제가 없습니다.
보시다시피 저는 단측 알파 값을 5%로 설정했습니다. 한쪽으로 치우친 경우에만 문제가 발생하기 때문입니다. 하지만 개별 측정값이 어디에 위치할지 예측하고 싶다면, 이 그래프는 두 직선의 위치만 보여주기 때문에, 동일한 모델을 다시 실행하여 정확한 결과를 얻을 수 있습니다. 알파 값을 단측 0.135%로 변경하면 모든 것을 ±3 시그마 범위 내에서 설명할 수 있습니다. 아래쪽 그래프는 여전히 동일하게 나타납니다. 물론 알파 값을 높이면 분포가 약간 넓어집니다. 이제 아래쪽에 예측 한계를 보여드리겠습니다.
아쉽게도 버전 17에서는 프로파일러에 예측 한계를 표시할 수 없습니다. 잠시 후 버전 18 얼리 어댑터를 보여드리겠습니다. 아직 출시되지는 않았지만 곧 지원될 예정입니다. 동일한 모델을 실행해 보면, 버전 18의 가장 큰 장점은 프로파일러에서 신뢰 한계(일명 '다크 웨이')뿐만 아니라 예측 한계 또는 개별 신뢰 한계도 확인할 수 있다는 점입니다. 이를 통해 각 관측값이 해당 배치 제품의 유효 기간 동안 어느 정도 값을 가질 것으로 예상할 수 있는지 알 수 있습니다. 예를 들어, 하한 사양보다 약간 낮은 값을 예상할 수 있습니다.
지속적인 검증을 위해서는 예측 구간 내에 결과가 있어야 한다는 요구사항을 설정하는 것이 좋습니다. 이 예측 구간은 규격 한계보다 약간 넓게 설정하는 것이 바람직합니다. 이렇게 하면 측정 오류로 인한 부적합 발생을 방지할 수 있습니다.
유통기한 관리 및 검증에는 여러 가지 함정이 있다는 것을 이미 아셨을 겁니다. 하지만 JMP는 이러한 함정을 해결하고 정확하게 작업을 수행할 수 있도록 도와주는 훌륭한 도구를 제공합니다. 이제 마무리하면서, 제가 처음에 언급했던 내용들을 다시 한번 보여드리겠습니다. 고객사에서 유통기한을 관리할 때는, 유통기한을 출하 기한으로 변환할 것을 강력히 권장합니다. 출하 기한을 설정하면 향후 생산될 모든 배치 제품이 유통기한을 준수할 것이라는 확신을 가질 수 있기 때문입니다.
물론, 모든 모델은 선형(Ln) 데이터로 구현해야 합니다. 모델 대화 상자에서 잠금(Lock)을 선택하면 선형 회귀 분석 결과가 나타납니다. 모델에서 시간을 랜덤 변수로 포함시키세요. 그러면 모든 날짜의 측정값이 동일하지 않을 가능성을 보정할 수 있습니다. 아레니우스 방정식의 테일러 전개를 이용하면 온도에 따른 모델을 쉽게 구축할 수 있습니다. 그리고 당연히 중복된 데이터가 없도록 주의해야 합니다. 시간 0 지점은 하나의 온도에서만 입력해야 합니다.
그리고 유통기한 검증을 진행할 때는 ICH 방법을 권장하지 않습니다. 왜냐하면 이 방법은 처음 세 번의 측정 중 최악의 결과를 가정하는데, 실제로는 그렇지 않은 경우가 많기 때문입니다. 또한, 방출 한계를 계산할 때 기울기의 기준값과 자유도를 정확하게 설정하는 것이 매우 중요합니다. 독립적인 측정값이 없는 경우, 단순히 n-1만으로는 부족합니다. 분석값을 무작위 변수로 포함시켜야 합니다.
마지막으로, 그리고 무엇보다 중요한 것은, 진행 중인 검증에 대한 명세를 작성해 주시기 바랍니다. 해당 명세는 유통기한 설정에 사용된 배치에 대한 예측 구간과 일치해야 합니다. 경청해 주셔서 감사합니다. JMP를 활용하여 유통기한 관리를 매우 효율적으로 수행하는 방법에 대한 영감을 얻으셨기를 바랍니다. 대단히 감사합니다.