<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.0 20120330//EN" "JATS-journalpublishing1.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">NEJSDS</journal-id>
<journal-title-group><journal-title>The New England Journal of Statistics in Data Science</journal-title></journal-title-group>
<issn pub-type="ppub">2693-7166</issn><issn-l>2693-7166</issn-l>
<publisher>
<publisher-name>New England Statistical Society</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">NEJSDS90</article-id>
<article-id pub-id-type="doi">10.51387/25-NEJSDS90</article-id>
<article-categories><subj-group subj-group-type="heading">
<subject>Methodology Article</subject></subj-group><subj-group subj-group-type="area">
<subject>Statistical Methodology</subject></subj-group></article-categories>
<title-group>
<article-title>LiMAP-Curvature: A Simple Model-Free Approach for Analysing Dose-Finding Studies</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Han</surname><given-names>Linxi</given-names></name><xref ref-type="aff" rid="j_nejsds90_aff_001"/>
</contrib>
<contrib contrib-type="author">
<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0001-8241-1302</contrib-id>
<name><surname>Deng</surname><given-names>Qiqi</given-names></name><xref ref-type="aff" rid="j_nejsds90_aff_002"/>
</contrib>
<contrib contrib-type="author">
<name><surname>He</surname><given-names>Zhangyi</given-names></name><email xlink:href="mailto:zhe1@georgeinstitute.org.uk">zhe1@georgeinstitute.org.uk</email><xref ref-type="aff" rid="j_nejsds90_aff_003"/><xref ref-type="corresp" rid="cor1">∗</xref><xref ref-type="fn" rid="j_nejsds90_fn_001">1</xref>
</contrib>
<contrib contrib-type="author">
<name><surname>Yu</surname><given-names>Feng</given-names></name><email xlink:href="mailto:feng.yu@bristol.ac.uk">feng.yu@bristol.ac.uk</email><xref ref-type="aff" rid="j_nejsds90_aff_004"/><xref ref-type="corresp" rid="cor1">∗</xref>
</contrib>
<aff id="j_nejsds90_aff_001">School of Mathematics, <institution>University of Bristol</institution>, Bristol, <country>UK</country></aff>
<aff id="j_nejsds90_aff_002">Biostatistics, <institution>ModernaTX Inc</institution>, Cambridge, Connecticut, <country>USA</country></aff>
<aff id="j_nejsds90_aff_003">Department of Epidemiology and Biostatistics, School of Public Health, <institution>Imperial College London</institution>, London, <country>UK</country>. E-mail address: <email xlink:href="mailto:zhe1@georgeinstitute.org.uk">zhe1@georgeinstitute.org.uk</email></aff>
<aff id="j_nejsds90_aff_004">School of Mathematics, <institution>University of Bristol</institution>, Bristol, <country>UK</country>. E-mail address: <email xlink:href="mailto:feng.yu@bristol.ac.uk">feng.yu@bristol.ac.uk</email></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>∗</label>Corresponding author.</corresp><fn id="j_nejsds90_fn_001"><label>1</label>
<p><italic>Present address</italic>: The George Institute for Global Health, Imperial College London, London W12 7RZ, UK</p></fn>
</author-notes>
<pub-date pub-type="ppub"><year>2025</year></pub-date><pub-date pub-type="epub"><day>10</day><month>9</month><year>2025</year></pub-date><volume>3</volume><issue>3</issue><fpage>265</fpage><lpage>271</lpage><supplementary-material id="S1" content-type="document" xlink:href="nejsds90_s001.pdf" mimetype="application" mime-subtype="pdf">
<caption>
<title>Supplementary Material</title>
<p>Supplementary Tables and Figures.</p>
</caption>
</supplementary-material><history><date date-type="accepted"><day>12</day><month>6</month><year>2025</year></date></history>
<permissions><copyright-statement>© 2025 New England Statistical Society</copyright-statement><copyright-year>2025</copyright-year>
<license license-type="open-access" xlink:href="http://creativecommons.org/licenses/by/4.0/">
<license-p>Open access article under the <ext-link ext-link-type="uri" xlink:href="http://creativecommons.org/licenses/by/4.0/">CC BY</ext-link> license.</license-p></license></permissions>
<abstract>
<p>MCP-Mod (Multiple Comparison Procedure-Modelling) is an efficient statistical method for the analysis of Phase II dose-finding trials, although it requires specialised expertise to pre-specify plausible candidate models along with model parameters. This can be problematic given limited knowledge of the agent/compound being studied, and misspecification of candidate models and model parameters can severely degrade its performance. To circumvent this challenge, in the work, we introduce LiMAP-curvature, a Bayesian model-free approach for the detection of the dose-response signal in Phase II dose-finding trials. LiMAP-curvature is built upon a Bayesian hierarchical framework incorporating information about the total curvature of the dose-response curve. Through extensive simulations, we show that LiMAP-curvature has comparable performance to MCP-Mod if the true underlying dose-response model is included in the candidate model set of MCP-Mod. Otherwise, LiMAP-curvature can achieve performance superior to that of MCP-Mod, especially when the true dose-response model drastically deviates from candidate models in MCP-Mod.</p>
</abstract>
<kwd-group>
<label>Keywords and phrases</label>
<kwd>Dose-finding trial</kwd>
<kwd>Dose-response signal detection</kwd>
<kwd>Model-free approach</kwd>
<kwd>Bayesian hierarchical model</kwd>
<kwd>Curvature prior</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="j_nejsds90_s_001">
<label>1</label>
<title>Introduction</title>
<p>Characterising the dose-response relationship and finding the right dose are important but challenging in the pharmaceutical drug development process. Nearly half of failures in Phase III trials result in part from a lack of understanding of the dose-response relationship in Phase II trials (<xref ref-type="bibr" rid="j_nejsds90_ref_009">Sacks et al.</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_009">2014</xref>). Over the last decade, the Multiple Comparison Procedure-Modelling (MCP-Mod) method, developed by <xref ref-type="bibr" rid="j_nejsds90_ref_001">Bretz et al.</xref> (<xref ref-type="bibr" rid="j_nejsds90_ref_001">2005</xref>), has been increasingly popular for Phase II trials as it can provide superior statistical evidence for dose selection.</p>
<p>MCP-Mod is a two-step approach that combines MCP principles and modelling techniques. In the first MCP step, it establishes a dose-response signal (Proof of Concept, PoC), and in the second Mod step, it estimates the dose-response curve and target doses of interest. MCP-Mod overcomes shortcomings of traditional approaches for dose-finding studies (see e.g. <xref ref-type="bibr" rid="j_nejsds90_ref_011">Ting</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_011">2006</xref>, for an excellent introduction). MCP-Mod requires the pre-specification of plausible candidate models and model parameters to capture model uncertainty, which however is primarily based on the limited knowledge of the agent/compound being studied, if it is available at all (<xref ref-type="bibr" rid="j_nejsds90_ref_004">Chen and Liu</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_004">2020</xref>). Misspecification of candidate models and model parameters in MCP-Mod may cause a loss in power and unreliable model selection (see <xref ref-type="bibr" rid="j_nejsds90_ref_010">Saha and Brannath</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_010">2019</xref>, and references therein).</p>
<p>Motivated by the limitations of MCP-Mod, non-parametric methods have gained popularity for detecting dose-response trends and estimating dose-response relationships in Phase II trials. These methods offer flexibility and adaptability to capture complex patterns in the data without imposing strong assumptions on the underlying functional form of the dose-response curve. <xref ref-type="bibr" rid="j_nejsds90_ref_012">West and Harrison</xref> (<xref ref-type="bibr" rid="j_nejsds90_ref_012">2006</xref>) introduced the normal dynamic linear model (NDLM), which leverages the flexibility of dynamic linear models to estimate the dose-response curve. By accommodating time-varying coefficients, NDLM can capture the dynamic nature of the dose-response relationship, allowing for more accurate and interpretable estimates. <xref ref-type="bibr" rid="j_nejsds90_ref_007">Kirby et al.</xref> (<xref ref-type="bibr" rid="j_nejsds90_ref_007">2009</xref>) applied cubic smoothing splines with generalised cross-validation for the smoothing parameter to estimate the dose-response curve.</p>
<p>However, these approaches still face challenges in incorporating prior knowledge about the curvature or shape of the dose-response curve. Determining the optimal level of smoothness or choosing the appropriate model can be subjective and dependent on the specific data at hand. To address these limitations, in this work, we develop a model-free Bayesian approach, which is a novel Bayesian hierarchical framework incorporating the total (in the <inline-formula id="j_nejsds90_ineq_001"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${L^{2}}$]]></tex-math></alternatives></inline-formula> sense) curvature of the dose-response curve as a prior parameter. Our approach avoids the requirement of a set of pre-specified candidate models. The responses at the given set of doses are estimated through maximum <italic>a posteriori</italic> (MAP), with which we construct a test statistic to establish PoC through simulations. We can then estimate the dose-response relationship with simple interpolation.</p>
<p>The remainder of this work is organised as follows. We describe in detail our MAP approach with a curvature prior, abbreviated LiMAP-curvature, in Section <xref rid="j_nejsds90_s_002">2</xref>. In Section <xref rid="j_nejsds90_s_003">3</xref>, we evaluate the operating characteristics of LiMAP-curvature through simulations and compare its performance to that of MCP-Mod and smoothing spline. We present concluding remarks and future directions in Section <xref rid="j_nejsds90_s_006">4</xref>.</p>
</sec>
<sec id="j_nejsds90_s_002" sec-type="methods">
<label>2</label>
<title>Methods</title>
<p>We consider a trial with a total of <inline-formula id="j_nejsds90_ineq_002"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$M+1$]]></tex-math></alternatives></inline-formula> distinct doses <inline-formula id="j_nejsds90_ineq_003"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${x_{0}},{x_{1}},\dots ,{x_{M}}$]]></tex-math></alternatives></inline-formula>, where <inline-formula id="j_nejsds90_ineq_004"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${x_{0}}$]]></tex-math></alternatives></inline-formula> represents placebo. We let <inline-formula id="j_nejsds90_ineq_005"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${N_{i}}$]]></tex-math></alternatives></inline-formula> be the number of patients in dose group <italic>i</italic> and <inline-formula id="j_nejsds90_ineq_006"><alternatives><mml:math>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$f(x)$]]></tex-math></alternatives></inline-formula> be the true dose-response function at dose <italic>x</italic>. We assume that <inline-formula id="j_nejsds90_ineq_007"><alternatives><mml:math>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$f(x)$]]></tex-math></alternatives></inline-formula> is defined on the interval <inline-formula id="j_nejsds90_ineq_008"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$[0,1]$]]></tex-math></alternatives></inline-formula> to align with the typical range of doses in pharmaceutical drug development where doses are often scaled or normalised within this range for convenience and comparability. For <inline-formula id="j_nejsds90_ineq_009"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi></mml:math><tex-math><![CDATA[$i=0,1,\dots ,M$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_nejsds90_ineq_010"><alternatives><mml:math>
<mml:mi mathvariant="italic">j</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$j=1,2,\dots ,{N_{i}}$]]></tex-math></alternatives></inline-formula>, we let <inline-formula id="j_nejsds90_ineq_011"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${Y_{ij}}$]]></tex-math></alternatives></inline-formula> be the response observed for patient <italic>j</italic> allocated to dose <inline-formula id="j_nejsds90_ineq_012"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${x_{i}}$]]></tex-math></alternatives></inline-formula>. We assume that 
<disp-formula id="j_nejsds90_eq_001">
<label>(2.1)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ϵ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {Y_{ij}}={\mu _{i}}+{\epsilon _{ij}},\]]]></tex-math></alternatives>
</disp-formula> 
where <inline-formula id="j_nejsds90_ineq_013"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\mu _{i}}=f({x_{i}})$]]></tex-math></alternatives></inline-formula> denotes the mean response at dose <inline-formula id="j_nejsds90_ineq_014"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${x_{i}}$]]></tex-math></alternatives></inline-formula>, and <inline-formula id="j_nejsds90_ineq_015"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">ϵ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub><mml:mover>
<mml:mrow>
<mml:mo stretchy="false">∼</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mover>
<mml:mi mathvariant="italic">N</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${\epsilon _{ij}}\stackrel{iid}{\sim }N(0,{\sigma ^{2}})$]]></tex-math></alternatives></inline-formula> denotes the error term for patient <italic>j</italic> in dose group <italic>i</italic>. For the sake of simplicity, we assume that the variance <inline-formula id="j_nejsds90_ineq_016"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${\sigma ^{2}}$]]></tex-math></alternatives></inline-formula> is known and constant across all dose groups. This assumption is commonly used in different areas, including MCP-Mod (<xref ref-type="bibr" rid="j_nejsds90_ref_001">Bretz et al.</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_001">2005</xref>), BMCPMod (<xref ref-type="bibr" rid="j_nejsds90_ref_005">Fleischer et al.</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_005">2022</xref>) and Bayesian meta-analysis (<xref ref-type="bibr" rid="j_nejsds90_ref_003">Burke et al.</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_003">2018</xref>). See <xref ref-type="bibr" rid="j_nejsds90_ref_005">Fleischer et al.</xref> (<xref ref-type="bibr" rid="j_nejsds90_ref_005">2022</xref>) for further discussion on the assumption on the standard deviation <italic>σ</italic>.</p>
<p>In MCP-Mod, a set of plausible candidate models is required. This constrains the possible set of dose-response curves. However, with limited knowledge of the agent/compounds in Phase II trials, it is more likely to mis-specify the set of candidate models. The procedure for specifying candidate models is also somewhat cumbersome. So we would like to avoid the pre-specification of possible models beforehand, but still want to impose a certain degree of smoothness on the dose-response curve. To this end, we introduce the <inline-formula id="j_nejsds90_ineq_017"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${L^{2}}$]]></tex-math></alternatives></inline-formula>-total curvature 
<disp-formula id="j_nejsds90_eq_002">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="italic">S</mml:mi>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" maxsize="2.45em" minsize="2.45em">(</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo largeop="true" movablelimits="false">∫</mml:mo></mml:mstyle>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msubsup>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>″</mml:mo>
</mml:mrow>
</mml:msup>
<mml:msup>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mspace width="0.1667em"/>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" maxsize="2.45em" minsize="2.45em">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" stretchy="false">/</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ Sf={\Bigg({\int _{{x_{0}}}^{{x_{M}}}}{f^{\prime\prime }}{(x)^{2}}\hspace{0.1667em}dx\Bigg)^{1/2}}\]]]></tex-math></alternatives>
</disp-formula> 
to measure how far the dose-response curve <inline-formula id="j_nejsds90_ineq_018"><alternatives><mml:math>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$f(x)$]]></tex-math></alternatives></inline-formula> is from being a straight line. The <inline-formula id="j_nejsds90_ineq_019"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${L^{2}}$]]></tex-math></alternatives></inline-formula>-total curvature is chosen as the prior parameter because it provides a mathematically tractable and interpretable measure of the smoothness of the dose-response curve. Specifically, it quantifies the global curvature by integrating the squared second derivative of the function, ensuring that the method captures overall trends in the data rather than being overly influenced by local deviations. We will impose a half-normal <inline-formula id="j_nejsds90_ineq_020"><alternatives><mml:math>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">γ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$HN({\gamma ^{2}})$]]></tex-math></alternatives></inline-formula> prior on <inline-formula id="j_nejsds90_ineq_021"><alternatives><mml:math>
<mml:mi mathvariant="italic">S</mml:mi>
<mml:mi mathvariant="italic">f</mml:mi></mml:math><tex-math><![CDATA[$Sf$]]></tex-math></alternatives></inline-formula> to give low prior probabilities to the dose-response relationship that is very curved, where the standard deviation <italic>γ</italic> controls the trade-off between the <inline-formula id="j_nejsds90_ineq_022"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${L^{2}}$]]></tex-math></alternatives></inline-formula>-total curvature of <inline-formula id="j_nejsds90_ineq_023"><alternatives><mml:math>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$f(x)$]]></tex-math></alternatives></inline-formula> and fidelity to data <inline-formula id="j_nejsds90_ineq_024"><alternatives><mml:math>
<mml:mi mathvariant="bold-italic">Y</mml:mi></mml:math><tex-math><![CDATA[$\boldsymbol{Y}$]]></tex-math></alternatives></inline-formula>. To capture an appropriate level of curvature and allow for optimal model performance, we assign a hyperprior for <italic>γ</italic> with a half-normal distribution <inline-formula id="j_nejsds90_ineq_025"><alternatives><mml:math>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">τ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$HN({\tau ^{2}})$]]></tex-math></alternatives></inline-formula>, which reflects our prior beliefs about the likely range of values for <italic>γ</italic> before observing any data. Smaller values of <italic>τ</italic> favour smoother curves, which may be appropriate when the dose-response relationship is expected to be close to linear. Larger values of <italic>τ</italic> allow for more curvature, which may be necessary when the dose-response relationship is highly non-linear. By incorporating a hyperprior, we introduce additional uncertainty and flexibility into the prior distribution of <inline-formula id="j_nejsds90_ineq_026"><alternatives><mml:math>
<mml:mi mathvariant="italic">S</mml:mi>
<mml:mi mathvariant="italic">f</mml:mi></mml:math><tex-math><![CDATA[$Sf$]]></tex-math></alternatives></inline-formula>, influencing the estimation of the dose-response curve. The specification of the standard deviation <italic>τ</italic> will be discussed in Section <xref rid="j_nejsds90_s_006">4</xref>.</p>
<p>Given the dose-response function <inline-formula id="j_nejsds90_ineq_027"><alternatives><mml:math>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$f(x)$]]></tex-math></alternatives></inline-formula> being available at <inline-formula id="j_nejsds90_ineq_028"><alternatives><mml:math>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$M+1$]]></tex-math></alternatives></inline-formula> distinct doses, for <inline-formula id="j_nejsds90_ineq_029"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$i=1,2,\dots ,M-1$]]></tex-math></alternatives></inline-formula>, we have 
<disp-formula id="j_nejsds90_eq_003">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="right left" columnspacing="0pt">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>″</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mtd>
<mml:mtd class="align-even">
<mml:mo stretchy="false">≈</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">(</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mspace width="1em"/>
<mml:mo>−</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">)</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[\begin{aligned}{}{f^{\prime\prime }}({x_{i}})& \approx 2\bigg(\frac{{\mu _{i+1}}-{\mu _{i}}}{({x_{i+1}}-{x_{i}})({x_{i+1}}-{x_{i-1}})}\\ {} & \hspace{1em}-\frac{{\mu _{i}}-{\mu _{i-1}}}{({x_{i}}-{x_{i-1}})({x_{i+1}}-{x_{i-1}})}\bigg)\end{aligned}\]]]></tex-math></alternatives>
</disp-formula> 
through the second-order central difference scheme (<xref ref-type="bibr" rid="j_nejsds90_ref_002">Burden et al.</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_002">2015</xref>), therefore the <inline-formula id="j_nejsds90_ineq_030"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${L^{2}}$]]></tex-math></alternatives></inline-formula>-total curvature <inline-formula id="j_nejsds90_ineq_031"><alternatives><mml:math>
<mml:mi mathvariant="italic">S</mml:mi>
<mml:mi mathvariant="italic">f</mml:mi></mml:math><tex-math><![CDATA[$Sf$]]></tex-math></alternatives></inline-formula> being approximated through numerical integration with 
<disp-formula id="j_nejsds90_eq_004">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="right left" columnspacing="0pt">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd class="align-even">
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo mathvariant="normal" fence="true" maxsize="2.45em" minsize="2.45em">(</mml:mo>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo largeop="true" movablelimits="false">∑</mml:mo></mml:mstyle>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:munderover>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">(</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mspace width="1em"/>
<mml:mo>−</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">)</mml:mo>
<mml:msup>
<mml:mrow/>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" maxsize="2.45em" minsize="2.45em">)</mml:mo>
<mml:msup>
<mml:mrow/>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" stretchy="false">/</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[\begin{aligned}{}{S_{\boldsymbol{\mu }}}& =2\Bigg({\sum \limits_{i=1}^{M-1}}\bigg(\frac{{\mu _{i+1}}-{\mu _{i}}}{({x_{i+1}}-{x_{i}})({x_{i+1}}-{x_{i-1}})}\\ {} & \hspace{1em}-\frac{{\mu _{i}}-{\mu _{i-1}}}{({x_{i}}-{x_{i-1}})({x_{i+1}}-{x_{i-1}})}\bigg){^{2}}\Delta {x_{i}}\Bigg){^{1/2}},\end{aligned}\]]]></tex-math></alternatives>
</disp-formula> 
where <inline-formula id="j_nejsds90_ineq_032"><alternatives><mml:math>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>+</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal" stretchy="false">/</mml:mo>
<mml:mn>2</mml:mn></mml:math><tex-math><![CDATA[$\Delta {x_{i}}=({x_{i+1}}-{x_{i-1}})/2$]]></tex-math></alternatives></inline-formula> for <inline-formula id="j_nejsds90_ineq_033"><alternatives><mml:math>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn></mml:math><tex-math><![CDATA[$i=2,3,\dots ,M-2$]]></tex-math></alternatives></inline-formula> with <inline-formula id="j_nejsds90_ineq_034"><alternatives><mml:math>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal" stretchy="false">/</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$\Delta {x_{1}}=({x_{2}}+{x_{1}})/2-{x_{0}}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_nejsds90_ineq_035"><alternatives><mml:math>
<mml:mi mathvariant="normal">Δ</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal" stretchy="false">/</mml:mo>
<mml:mn>2</mml:mn></mml:math><tex-math><![CDATA[$\Delta {x_{M-1}}={x_{M}}-({x_{M-1}}+{x_{M-2}})/2$]]></tex-math></alternatives></inline-formula>.</p>
<p>We let 
<disp-formula id="j_nejsds90_eq_005">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="bold-italic">Y</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">j</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo fence="true" stretchy="false">}</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ \boldsymbol{Y}=\{{Y_{ij}},i=0,1,\dots ,M,j=1,2,\dots ,{N_{i}}\}\]]]></tex-math></alternatives>
</disp-formula> 
and define our Bayesian hierarchical model to be 
<disp-formula id="j_nejsds90_eq_006">
<label>(2.2)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo stretchy="false">∣</mml:mo>
<mml:mi mathvariant="bold-italic">Y</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo stretchy="false">∝</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold-italic">Y</mml:mi>
<mml:mo stretchy="false">∣</mml:mo>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ p(\boldsymbol{\mu },\gamma \mid \boldsymbol{Y})\propto p(\boldsymbol{\mu },\gamma )p(\boldsymbol{Y}\mid \boldsymbol{\mu }),\]]]></tex-math></alternatives>
</disp-formula> 
where the prior 
<disp-formula id="j_nejsds90_eq_007">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo largeop="true" movablelimits="false">∏</mml:mo></mml:mstyle>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:munderover>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∣</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ p(\boldsymbol{\mu },\gamma )=p(\gamma ){\prod \limits_{i=0}^{M}}p({\mu _{i}})p({S_{\boldsymbol{\mu }}}\mid \gamma )\]]]></tex-math></alternatives>
</disp-formula> 
with 
<disp-formula id="j_nejsds90_eq_008">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="right left" columnspacing="0pt">
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∣</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo stretchy="false">∼</mml:mo>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">γ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">)</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo stretchy="false">∼</mml:mo>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">τ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" maxsize="1.19em" minsize="1.19em">)</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub><mml:mover>
<mml:mrow>
<mml:mo stretchy="false">∼</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
</mml:mrow>
</mml:mover>
<mml:mi mathvariant="italic">U</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mspace width="2.5pt"/>
<mml:mtext>for</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">M</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[\begin{aligned}{}& {S_{\boldsymbol{\mu }}}\mid \gamma \sim HN\big({\gamma ^{2}}\big),\hspace{2.5pt}\gamma \sim HN\big({\tau ^{2}}\big),\\ {} & {\mu _{i}}\stackrel{iid}{\sim }U(0,1)\hspace{2.5pt}\text{for}\hspace{2.5pt}i=0,1,\dots ,M,\end{aligned}\]]]></tex-math></alternatives>
</disp-formula> 
and the likelihood 
<disp-formula id="j_nejsds90_eq_009">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold-italic">Y</mml:mi>
<mml:mo stretchy="false">∣</mml:mo>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>=</mml:mo>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo largeop="true" movablelimits="false">∏</mml:mo></mml:mstyle>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:munderover>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo largeop="true" movablelimits="false">∏</mml:mo></mml:mstyle>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munderover>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo stretchy="false">∣</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ p(\boldsymbol{Y}\mid \boldsymbol{\mu })={\prod \limits_{i=0}^{M}}{\prod \limits_{j=1}^{{N_{i}}}}p({Y_{ij}}\mid {\mu _{i}}).\]]]></tex-math></alternatives>
</disp-formula>
</p>
<p>Suppose the standard deviation <italic>τ</italic> in the hyperprior for <italic>γ</italic> is pre-specified. The MAP estimates of all parameters in the model defined in Eq. (<xref rid="j_nejsds90_eq_006">2.2</xref>) can be obtained by maximising the corresponding log-likelihood 
<disp-formula id="j_nejsds90_eq_010">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="right left" columnspacing="0pt">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">ˆ</mml:mo></mml:mover>
<mml:mo mathvariant="normal">,</mml:mo><mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="italic">γ</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">ˆ</mml:mo></mml:mover>
</mml:mtd>
<mml:mtd class="align-even">
<mml:mo>=</mml:mo>
<mml:mo movablelimits="false">arg</mml:mo>
<mml:munder>
<mml:mrow>
<mml:mo movablelimits="false">max</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mo movablelimits="false">log</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo stretchy="false">∣</mml:mo>
<mml:mi mathvariant="bold-italic">Y</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mo stretchy="false">∝</mml:mo>
<mml:mo movablelimits="false">arg</mml:mo>
<mml:munder>
<mml:mrow>
<mml:mo movablelimits="false">max</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
</mml:mrow>
</mml:munder>
<mml:mo fence="true" maxsize="2.45em" minsize="2.45em">{</mml:mo>
<mml:mo>−</mml:mo>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo largeop="true" movablelimits="false">∑</mml:mo></mml:mstyle>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:munderover>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo largeop="true" movablelimits="false">∑</mml:mo></mml:mstyle>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">j</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">N</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:munderover>
<mml:msup>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">(</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mi mathvariant="italic">j</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo movablelimits="false">log</mml:mo>
<mml:mi mathvariant="italic">γ</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd"/>
<mml:mtd class="align-even">
<mml:mspace width="2.5pt"/>
<mml:mspace width="2.5pt"/>
<mml:mspace width="2em"/>
<mml:mspace width="1em"/>
<mml:mspace width="2em"/>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">(</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">γ</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">(</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="italic">γ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">τ</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo mathvariant="normal" fence="true" maxsize="2.03em" minsize="2.03em">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo fence="true" maxsize="2.45em" minsize="2.45em">}</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[\begin{aligned}{}\hat{\boldsymbol{\mu }},\hat{\gamma }& =\arg \underset{\boldsymbol{\mu },\gamma }{\max }\log p(\boldsymbol{\mu },\gamma \mid \boldsymbol{Y})\\ {} & \propto \arg \underset{\boldsymbol{\mu },\gamma }{\max }\Bigg\{-{\sum \limits_{i=0}^{M}}{\sum \limits_{j=1}^{{N_{i}}}}{\bigg(\frac{{Y_{ij}}-{\mu _{i}}}{\sigma }\bigg)^{2}}-2\log \gamma \\ {} & \hspace{2.5pt}\hspace{2.5pt}\hspace{2em}\hspace{1em}\hspace{2em}-{\bigg(\frac{{S_{\boldsymbol{\mu }}}}{\gamma }\bigg)^{2}}-{\bigg(\frac{\gamma }{\tau }\bigg)^{2}}\Bigg\}\end{aligned}\]]]></tex-math></alternatives>
</disp-formula> 
through a numerical optimisation algorithm like the Broyden–Fletcher–Goldfarb–Shanno (BFGS) method and its variants (see, e.g. <xref ref-type="bibr" rid="j_nejsds90_ref_008">Nocedal and Wright</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_008">1999</xref>, for more details).</p>
<p>To establish PoC, we propose a test statistic 
<disp-formula id="j_nejsds90_eq_011">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mo>=</mml:mo>
<mml:mo movablelimits="false">max</mml:mo>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo movablelimits="false">…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo fence="true" stretchy="false">}</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ T=\max \{{\mu _{1}}-{\mu _{0}},{\mu _{2}}-{\mu _{0}},\dots ,{\mu _{M}}-{\mu _{0}}\}\]]]></tex-math></alternatives>
</disp-formula> 
with hypotheses 
<disp-formula id="j_nejsds90_eq_012">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="right left" columnspacing="0pt">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd class="align-even">
<mml:mo>:</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mo stretchy="false">⋯</mml:mo>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="align-odd">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd class="align-even">
<mml:mo>:</mml:mo>
<mml:mo movablelimits="false">max</mml:mo>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo movablelimits="false">…</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo fence="true" stretchy="false">}</mml:mo>
<mml:mo mathvariant="normal">&gt;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">μ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[\begin{aligned}{}{H_{0}}& :{\mu _{1}}=\cdots ={\mu _{M}}={\mu _{0}}\\ {} {H_{1}}& :\max \{{\mu _{1}},{\mu _{2}},\dots ,{\mu _{M}}\}\gt {\mu _{0}}.\end{aligned}\]]]></tex-math></alternatives>
</disp-formula> 
We define a significance level <italic>α</italic> for a dose-response signal, such that the corresponding critical value <italic>c</italic> satisfies 
<disp-formula id="j_nejsds90_eq_013">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="double-struck">P</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mo mathvariant="normal">&gt;</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">∣</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal">&lt;</mml:mo>
<mml:mi mathvariant="italic">α</mml:mi>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ \mathbb{P}(T\gt c\mid {H_{0}})\lt \alpha .\]]]></tex-math></alternatives>
</disp-formula> 
For a given <italic>α</italic>, we compute the critical value <italic>c</italic> via simulation 
<disp-formula id="j_nejsds90_eq_014">
<alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="double-struck">P</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">T</mml:mi>
<mml:mo mathvariant="normal">&gt;</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo stretchy="false">∣</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo stretchy="false">≈</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">R</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mstyle displaystyle="true">
<mml:mo largeop="true" movablelimits="false">∑</mml:mo></mml:mstyle>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">R</mml:mi>
</mml:mrow>
</mml:munderover>
<mml:msub>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal">&gt;</mml:mo>
<mml:mi mathvariant="italic">c</mml:mi>
<mml:mo fence="true" stretchy="false">}</mml:mo>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ \mathbb{P}(T\gt c\mid {H_{0}})\approx \frac{1}{R}{\sum \limits_{r=1}^{R}}{1_{\{{T^{(r)}}\gt c\}}},\]]]></tex-math></alternatives>
</disp-formula> 
where <inline-formula id="j_nejsds90_ineq_036"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${T^{(r)}}$]]></tex-math></alternatives></inline-formula> is the test statistic computed from the data <inline-formula id="j_nejsds90_ineq_037"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="bold-italic">Y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${\boldsymbol{Y}^{(r)}}$]]></tex-math></alternatives></inline-formula> simulated under the null hypothesis <inline-formula id="j_nejsds90_ineq_038"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${H_{0}}$]]></tex-math></alternatives></inline-formula>, <italic>R</italic> is the total number of replicates, and <inline-formula id="j_nejsds90_ineq_039"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${1_{A}}$]]></tex-math></alternatives></inline-formula> is the indicator function equal to 1 if condition <italic>A</italic> holds and 0 otherwise.</p>
<p>Finally, the mean response estimates <inline-formula id="j_nejsds90_ineq_040"><alternatives><mml:math><mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold-italic">μ</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">ˆ</mml:mo></mml:mover></mml:math><tex-math><![CDATA[$\hat{\boldsymbol{\mu }}$]]></tex-math></alternatives></inline-formula> can be linearly interpolated (or using a more sophisticated interpolation scheme) to obtain an estimate of the dose-response curve <inline-formula id="j_nejsds90_ineq_041"><alternatives><mml:math>
<mml:mi mathvariant="italic">f</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$f(x)$]]></tex-math></alternatives></inline-formula>, which will also yield an estimate of the target dose of interest. In this work, we only perform simple linear interpolation as we shall focus on the PoC stage of dose-finding trials.</p>
</sec>
<sec id="j_nejsds90_s_003">
<label>3</label>
<title>Simulations</title>
<p>In this section, we assess the performance of LiMAP-curvature, in terms of power to detect dose-response signals as well as estimates of the dose-response curve and target doses of interest. We compare LiMAP-curvature to smoothing spline and MCP-Mod.</p>
<sec id="j_nejsds90_s_004">
<label>3.1</label>
<title>Simulation Settings</title>
<p>We simulate randomised, double-blind, placebo-controlled, parallel-group trials with patients being equally allocated to placebo (0) or one of four active doses (0.15, 0.50, 0.80 and 1). We take the placebo effect to be 0 and the maximum treatment effect to be 0.5, respectively. We vary the sample size per dose group in <inline-formula id="j_nejsds90_ineq_042"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:mn>10</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>20</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>30</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>40</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>50</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>60</mml:mn>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$\{10,20,30,40,50,60\}$]]></tex-math></alternatives></inline-formula>. We choose one of 12 dose-response shapes to be the true dose-response model, which are plotted in Figure <xref rid="j_nejsds90_fig_001">1</xref>. These models are selected to represent a wide range of realistic and theoretical scenarios commonly encountered in Phase II trials. The first six models include linear, Emax, exponential, quadratic, and logistic shapes, which are widely used in dose-finding studies and are part of the candidate model set in MCP-Mod. These models are well-established in the literature and reflect practical dose-response relationships (<xref ref-type="bibr" rid="j_nejsds90_ref_001">Bretz et al.</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_001">2005</xref>; <xref ref-type="bibr" rid="j_nejsds90_ref_004">Chen and Liu</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_004">2020</xref>; <xref ref-type="bibr" rid="j_nejsds90_ref_005">Fleischer et al.</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_005">2022</xref>). The remaining six models include variations of the candidate models (e.g., exponential2, power, and logistic2) as well as more distinct shapes like sigmoid Emax and beta. While most of these models are also commonly used in practice, the beta model is included as an extreme case to assess the performance of MCP-Mod when the true dose-response relationship significantly differs from the pre-specified candidate models. The corresponding parameters for these models are summarised in Supplemental Material, Table S1. We simulate each patient’s response according to Eq. (<xref rid="j_nejsds90_eq_001">2.1</xref>) with a standard deviation of <inline-formula id="j_nejsds90_ineq_043"><alternatives><mml:math>
<mml:mi mathvariant="italic">σ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$\sigma =1$]]></tex-math></alternatives></inline-formula>. For each of 72 combinations of parameters, consisting of sample size and dose-response shape, we run 10,000 simulated trials.</p>
<fig id="j_nejsds90_fig_001">
<label>Figure 1</label>
<caption>
<p>Dose-response shapes selected for the true dose-response model.</p>
</caption>
<graphic xlink:href="nejsds90_g001.jpg"/>
</fig>
<p>For each simulated trial, we run LiMAP-curvature to establish PoC and find the target doses of interest with a standard deviation of <inline-formula id="j_nejsds90_ineq_044"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">{</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>3</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>5</mml:mn>
<mml:mo fence="true" stretchy="false">}</mml:mo></mml:math><tex-math><![CDATA[$\tau \in \{1,3,5\}$]]></tex-math></alternatives></inline-formula> for the hyperprior <inline-formula id="j_nejsds90_ineq_045"><alternatives><mml:math>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">τ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$HN({\tau ^{2}})$]]></tex-math></alternatives></inline-formula>. To benchmark LiMAP-curvature against smoothing spline and MCP-Mod, we run smoothing spline through the <monospace>stats</monospace> package (version 3.6.2) in <monospace>R</monospace> and employ the generalised cross-validation to choose the smoothing parameter for smoothing spline (<xref ref-type="bibr" rid="j_nejsds90_ref_006">Green and Silverman</xref>, <xref ref-type="bibr" rid="j_nejsds90_ref_006">1993</xref>). We also run MCP-Mod through the <monospace>DoseFinding</monospace> package (version 1.0-4) in <monospace>R</monospace>, where we specify a fixed set of candidate models made up of linear, emax1, emax2, exponential1, quadratic1 and logistic1 (top six figures of Figure <xref rid="j_nejsds90_fig_001">1</xref>).</p>
</sec>
<sec id="j_nejsds90_s_005">
<label>3.2</label>
<title>Simulation Results</title>
<p>To evaluate the performance of LiMAP-curvature, smoothing spline and MCP-Mod, we plot receiver operating characteristic (ROC) curves for all true dose-response models for sample size 40 in Figure <xref rid="j_nejsds90_fig_002">2</xref>. The ROC curve is produced by plotting the true positive rate against the false positive rate across a range of critical values. The closer the ROC curve approaches the top left corner, the better the method performs overall. Although we do not compute confidence intervals for the ROC curve in this work, such intervals can be essential for assessing the uncertainty in the ROC curve estimates. Confidence intervals for the ROC curve can be calculated using bootstrapping methods. Specifically, this involves resampling the data with replacement and recalculating the ROC curve for each resample. This process generates a distribution of ROC curve estimates, from which percentiles can be taken to form confidence intervals around any point on the original ROC curve. See Supplemental Material, Figures S1–S5 for ROC curves for all other sample sizes. We also summarise their powers at 5% and 10% type I error rates in Supplemental Material, Table S2 and S3, respectively.</p>
<fig id="j_nejsds90_fig_002">
<label>Figure 2</label>
<caption>
<p>ROC curves of LiMAP-curvature, smoothing spline and MCP-Mod across different true dose-response models with the sample size of 40 patients per arm. The ROC curves of MCP-Mod in (a)–(f) are produced with the true dose-response model included in the candidate model set, and the ROC curves of MCP-Mod in (g)–(l) are produced with the true dose-response model not included in the candidate model set.</p>
</caption>
<graphic xlink:href="nejsds90_g002.jpg"/>
</fig>
<p>As illustrated in Figure <xref rid="j_nejsds90_fig_002">2</xref>, we find that LiMAP-curvature has better performance when the true dose-response relationship exhibits low curvature, e.g. linear, emax1, logistic1, logistic2 and sigEmax, achieving over 80% power at a type I error rate of 5%. Choosing an appropriate <italic>τ</italic> can further improve the performance of LiMAP-curvature. More specifically, LiMAP-curvature achieves better performance with a larger <italic>τ</italic> for the true dose-response curve that is more curved, e.g. quadratic1 and beta models. Otherwise, e.g. in logistic1 and power models, a smaller <italic>τ</italic> performs better. How to select an appropriate <italic>τ</italic> in practice will be discussed in Section <xref rid="j_nejsds90_s_006">4</xref>.</p>
<p>To benchmark the performance of LiMAP-curvature, smoothing spline and MCP-Mod, we consider two cases: 
<list>
<list-item id="j_nejsds90_li_001">
<label>1.</label>
<p>the true dose-response curve is one of the candidate models in MCP-Mod,</p>
</list-item>
<list-item id="j_nejsds90_li_002">
<label>2.</label>
<p>the true dose-response curve is not one of the candidate models in MCP-Mod.</p>
</list-item>
</list> 
Figures <xref rid="j_nejsds90_fig_002">2</xref>(a–f) compare the performance of LiMAP-curvature, smoothing spline and MCP-Mod for the first case, which is a fairly rare situation in practice. The resulting ROC curves are in favour of MCP-Mod as expected due to its utilisation of exact population parameter estimates in its candidate model set, but LiMAP-curvature with <inline-formula id="j_nejsds90_ineq_046"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>3</mml:mn></mml:math><tex-math><![CDATA[$\tau =3$]]></tex-math></alternatives></inline-formula> achieves comparable performance. We note that for the true dose-response curve with low curvature, e.g. linear, emax1 and logistic1, <inline-formula id="j_nejsds90_ineq_047"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$\tau =1$]]></tex-math></alternatives></inline-formula> yields better performance than when <inline-formula id="j_nejsds90_ineq_048"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>3</mml:mn></mml:math><tex-math><![CDATA[$\tau =3$]]></tex-math></alternatives></inline-formula>, resulting in a power gain of around 2–9% compared to MCP-Mod and around 8–11% compared to smoothing spline, all at 5% type I error rate.</p>
<p>Figures <xref rid="j_nejsds90_fig_002">2</xref>(g–l) compare the performance of LiMAP-curvature, smoothing spline and MCP-Mod for the second case. This is the situation we expect to encounter in practice. We see that with <inline-formula id="j_nejsds90_ineq_049"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>3</mml:mn></mml:math><tex-math><![CDATA[$\tau =3$]]></tex-math></alternatives></inline-formula>, LiMAP-curvature uniformly outperforms MCP-Mod, especially when the true dose-response model drastically deviates from the candidate model set in MCP-Mod such as sigEmax and beta models. In the latter case, LiMAP-curvature has a power gain of approximately 5–13% compared to MCP-Mod at a type I error rate of 5%. Some true dose-response models such as exponential2, quadratic2 and power models, are well captured by the candidate model set of MCP-Mod so that we see the similar performance of LiMAP-curvature and MCP-Mod. Even with an inappropriate choice of <italic>τ</italic>, LiMAP-curvature is still able to achieve significantly better performance, e.g. a power gained by approximately 2–3% over MCP-Mod at a 5% type I error rate. Moreover, compared to the smoothing spline, LiMAP-curvature consistently outperforms it, except for the beta model. LiMAP-curvature demonstrates a power gain of about 3–9% over smoothing spline at a 5% type I error rate.</p>
<table-wrap id="j_nejsds90_tab_001">
<label>Table 1</label>
<caption>
<p>Power values and their 95% confidence intervals for LiMAP-curvature, smoothing spline and MCP-Mod across different true dose-response models with the sample size of 40 patients per arm by controlling the type I error rate at 5%.</p>
</caption>
<table>
<thead>
<tr>
<td style="vertical-align: top; text-align: center; border-top: double">Model</td>
<td colspan="3" style="vertical-align: top; text-align: center; border-top: double">LiMAP-curvature</td>
<td style="vertical-align: top; text-align: center; border-top: double">Smoothing spline</td>
<td style="vertical-align: top; text-align: center; border-top: double">MCP-Mod</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin"/>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin"><inline-formula id="j_nejsds90_ineq_050"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:math><tex-math><![CDATA[$\tau =1$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin"><inline-formula id="j_nejsds90_ineq_051"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>3</mml:mn></mml:math><tex-math><![CDATA[$\tau =3$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin"><inline-formula id="j_nejsds90_ineq_052"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>5</mml:mn></mml:math><tex-math><![CDATA[$\tau =5$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin"/>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin"/>
</tr>
</thead>
<tbody>
<tr>
<td style="vertical-align: top; text-align: center">linear</td>
<td style="vertical-align: top; text-align: center">0.839 (0.832, 0.846)</td>
<td style="vertical-align: top; text-align: center">0.819 (0.811, 0.827)</td>
<td style="vertical-align: top; text-align: center">0.786 (0.778, 0.794)</td>
<td style="vertical-align: top; text-align: center">0.755 (0.740, 0.763)</td>
<td style="vertical-align: top; text-align: center">0.788 (0.780, 0.794)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">emax1</td>
<td style="vertical-align: top; text-align: center">0.884 (0.878, 0.890)</td>
<td style="vertical-align: top; text-align: center">0.799 (0.791, 0.807)</td>
<td style="vertical-align: top; text-align: center">0.777 (0.769, 0.785)</td>
<td style="vertical-align: top; text-align: center">0.768 (0.761, 0.775)</td>
<td style="vertical-align: top; text-align: center">0.791 (0.782, 0.799)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">emax2</td>
<td style="vertical-align: top; text-align: center">0.685 (0.676, 0.694)</td>
<td style="vertical-align: top; text-align: center">0.710 (0.701, 0.719)</td>
<td style="vertical-align: top; text-align: center">0.722 (0.720, 0.731)</td>
<td style="vertical-align: top; text-align: center">0.738 (0.726, 0.744)</td>
<td style="vertical-align: top; text-align: center">0.774 (0.766, 0.782)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">exponential1</td>
<td style="vertical-align: top; text-align: center">0.724 (0.715, 0.73)</td>
<td style="vertical-align: top; text-align: center">0.709 (0.701, 0.717)</td>
<td style="vertical-align: top; text-align: center">0.698 (0.689, 0.707)</td>
<td style="vertical-align: top; text-align: center">0.655 (0.643, 0.661)</td>
<td style="vertical-align: top; text-align: center">0.763 (0.755, 0.771)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">quadratic1</td>
<td style="vertical-align: top; text-align: center">0.547 (0.538, 0.557)</td>
<td style="vertical-align: top; text-align: center">0.652 (0.643, 0.660)</td>
<td style="vertical-align: top; text-align: center">0.676 (0.670, 0.685)</td>
<td style="vertical-align: top; text-align: center">0.622 (0.611, 0.629)</td>
<td style="vertical-align: top; text-align: center">0.678 (0.665, 0.684)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">logistic1</td>
<td style="vertical-align: top; text-align: center">0.886 (0.881, 0.892)</td>
<td style="vertical-align: top; text-align: center">0.851 (0.846, 0.858)</td>
<td style="vertical-align: top; text-align: center">0.827 (0.824, 0.834)</td>
<td style="vertical-align: top; text-align: center">0.795 (0.787, 0.803)</td>
<td style="vertical-align: top; text-align: center">0.867 (0.860, 0.872)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">exponential2</td>
<td style="vertical-align: top; text-align: center">0.804 (0.798, 0.812)</td>
<td style="vertical-align: top; text-align: center">0.774 (0.766, 0.782)</td>
<td style="vertical-align: top; text-align: center">0.747 (0.749, 0.753)</td>
<td style="vertical-align: top; text-align: center">0.711 (0.703, 0.719)</td>
<td style="vertical-align: top; text-align: center">0.777 (0.769, 0.785)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">quadratic2</td>
<td style="vertical-align: top; text-align: center">0.738 (0.742, 0.747)</td>
<td style="vertical-align: top; text-align: center">0.778 (0.770, 0.786)</td>
<td style="vertical-align: top; text-align: center">0.761 (0.753, 0.769)</td>
<td style="vertical-align: top; text-align: center">0.727 (0.715, 0.733)</td>
<td style="vertical-align: top; text-align: center">0.752 (0.744, 0.760)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">sigEmax</td>
<td style="vertical-align: top; text-align: center">0.889 (0.887, 0.895)</td>
<td style="vertical-align: top; text-align: center">0.878 (0.871, 0.885)</td>
<td style="vertical-align: top; text-align: center">0.858 (0.857, 0.865)</td>
<td style="vertical-align: top; text-align: center">0.832 (0.825, 0.839)</td>
<td style="vertical-align: top; text-align: center">0.830 (0.823, 0.837)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">power</td>
<td style="vertical-align: top; text-align: center">0.809 (0.801, 0.817)</td>
<td style="vertical-align: top; text-align: center">0.786 (0.778, 0.794)</td>
<td style="vertical-align: top; text-align: center">0.760 (0.757, 0.762)</td>
<td style="vertical-align: top; text-align: center">0.740 (0.731, 0.749)</td>
<td style="vertical-align: top; text-align: center">0.779 (0.774, 0.787)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center">logistic2</td>
<td style="vertical-align: top; text-align: center">0.891 (0.885, 0.891)</td>
<td style="vertical-align: top; text-align: center">0.863 (0.856, 0.870)</td>
<td style="vertical-align: top; text-align: center">0.843 (0.840, 0.850)</td>
<td style="vertical-align: top; text-align: center">0.812 (0.805, 0.820)</td>
<td style="vertical-align: top; text-align: center">0.826 (0.818, 0.834)</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin">betaMod</td>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin">0.271 (0.261, 0.276)</td>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin">0.532 (0.523, 0.541)</td>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin">0.562 (0.556, 0.570)</td>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin">0.555 (0.546, 0.564)</td>
<td style="vertical-align: top; text-align: center; border-bottom: solid thin">0.424 (0.415, 0.433)</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>We also evaluate and compare the performance in estimating the dose-response curve and target doses of interest, known as the minimum effective dose (MED). See Supplemental Material, Figures S6–S11 for the dose-response curves estimated using LiMAP-curvature, smoothing spline and MCP-Mod for various true dose-response models and sample sizes. The corresponding results for MED estimation are summarised in Supplemental Material, Table S4.</p>
</sec>
</sec>
<sec id="j_nejsds90_s_006">
<label>4</label>
<title>Discussion</title>
<p>In this work, we have introduced LiMAP-curvature, a novel Bayesian approach for establishing PoC and estimating the dose-response curve alongside target doses of interest in Phase II trials. LiMAP-curvature is “model-free”, in the sense that it does not require pre-specification of candidate dose-response models, which can influence the performance of MCP-Mod. It is built on a Bayesian hierarchical framework incorporating prior information on the <inline-formula id="j_nejsds90_ineq_053"><alternatives><mml:math>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">L</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${L^{2}}$]]></tex-math></alternatives></inline-formula>-total curvature of the dose-response curve.</p>
<p>We have shown through simulations that LiMAP-curvature has performance comparable to that of MCP-Mod in establishing PoC and estimating MED when the true dose-response model is included in the candidate model set of MCP-Mod, which is fairly rare in practice. When the true dose-response model deviates from the candidate model set of MCP-Mod, LiMAP-curvature has been demonstrated to outperform MCP-Mod. Furthermore, we note that LiMAP-curvature also outperforms smoothing spline in terms of power to detect dose-response signals in most cases. This indicates the advantages of LiMAP-curvature over the widely used non-parametric method of smoothing spline. The ability of LiMAP-curvature to consistently outperform both MCP-Mod and smoothing spline across various scenarios highlights its effectiveness and potential as a valuable tool in Phase II trial analysis.</p>
<p>To obtain optimal performance, MCP-Mod requires specialised expertise to pre-specify plausible candidate models and model parameters, but the knowledge of the agent/compounds being studied is usually limited. Compared to MCP-Mod, the only requirement for pre-specification in LiMAP-curvature is the standard deviation <italic>τ</italic> for the hyperprior <inline-formula id="j_nejsds90_ineq_054"><alternatives><mml:math>
<mml:mi mathvariant="italic">γ</mml:mi>
<mml:mo stretchy="false">∼</mml:mo>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mi mathvariant="italic">N</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">τ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$\gamma \sim HN({\tau ^{2}})$]]></tex-math></alternatives></inline-formula>, which encodes prior knowledge of how far the dose-response curve is from a straight line. With additional simulations with varying values of the standard deviation <italic>τ</italic> (see Supplemental Material, Figure S12 and Table S5), we recommend choosing</p>
<list>
<list-item id="j_nejsds90_li_003">
<label>1.</label>
<p><inline-formula id="j_nejsds90_ineq_055"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo stretchy="false">∈</mml:mo>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>2</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>4</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$\tau \in [2,4]$]]></tex-math></alternatives></inline-formula> if our prior knowledge is poor,</p>
</list-item>
<list-item id="j_nejsds90_li_004">
<label>2.</label>
<p><inline-formula id="j_nejsds90_ineq_056"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo mathvariant="normal">&lt;</mml:mo>
<mml:mn>2</mml:mn></mml:math><tex-math><![CDATA[$\tau \lt 2$]]></tex-math></alternatives></inline-formula> if we are confident that the curvature of the dose-response curve is weak,</p>
</list-item>
<list-item id="j_nejsds90_li_005">
<label>3.</label>
<p><inline-formula id="j_nejsds90_ineq_057"><alternatives><mml:math>
<mml:mi mathvariant="italic">τ</mml:mi>
<mml:mo mathvariant="normal">&gt;</mml:mo>
<mml:mn>4</mml:mn></mml:math><tex-math><![CDATA[$\tau \gt 4$]]></tex-math></alternatives></inline-formula> if we are confident that the curvature of the dose-response curve is strong.</p>
</list-item>
</list>
<p>A number of relevant issues for LiMAP-curvature deserve further research. One such extension involves integrating the sigmoid Emax model as the default response function within the LiMAP-curvature framework. The sigmoid Emax model is noted for its ability to approximate most common monotonic dose-response relationships, providing a robust framework for modelling complex dose-response relationships. However, the challenge lies in selecting appropriate prior distributions for the additional parameters introduced by the sigmoid Emax model, which requires careful consideration to ensure accurate and reliable dose-response estimation. Another important extension involves adapting LiMAP-curvature to handle a wider variety of endpoints and trial designs. The current version of LiMAP-curvature is limited to the analysis Phase II dose-finding trials with continuous endpoints, i.e. a single normally distributed homoscedastic response measured at the end of the trial. To expand its applicability, extensions to other common types of endpoints (e.g. binary, counts and survival endpoints) and trials (e.g. longitudinal dose-finding trials) require further investigation. Other directions of future research include the investigation of trial designs tailored to LiMAP-curvature and the development of statistical software implementing LiMAP-curvature.</p>
</sec>
<sec id="j_nejsds90_s_007">
<title>Disclosure Statement</title>
<p>The authors report there are no competing interests to declare.</p>
</sec>
<sec id="j_nejsds90_s_008">
<title>Disclaimer</title>
<p>The opinions expressed in this paper are solely those of the authors and not those of their affiliations. The authors’ affiliations do not guarantee the accuracy or reliability of the information provided herein.</p>
</sec>
</body>
<back>
<ref-list id="j_nejsds90_reflist_001">
<title>References</title>
<ref id="j_nejsds90_ref_001">
<mixed-citation publication-type="journal"><string-name><surname>Bretz</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Pinheiro</surname>, <given-names>J. C.</given-names></string-name> and <string-name><surname>Branson</surname>, <given-names>M.</given-names></string-name> <article-title>Combining multiple comparisons and modeling techniques in dose-response studies</article-title>. <source>Biometrics</source> <volume>61</volume>. <fpage>738</fpage>–<lpage>748</lpage> (<year>2005</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_002">
<mixed-citation publication-type="book"><string-name><surname>Burden</surname>, <given-names>R. L.</given-names></string-name>, <string-name><surname>Faires</surname>, <given-names>J. D.</given-names></string-name> and <string-name><surname>Burden</surname>, <given-names>A. M.</given-names></string-name> <source>Numerical Analysis</source>. <publisher-name>Cengage Learning</publisher-name>, <publisher-loc>Boston</publisher-loc> (<year>2015</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_003">
<mixed-citation publication-type="journal"><string-name><surname>Burke</surname>, <given-names>D. L.</given-names></string-name>, <string-name><surname>Bujkiewicz</surname>, <given-names>S.</given-names></string-name> and <string-name><surname>Riley</surname>, <given-names>R. D.</given-names></string-name> <article-title>Bayesian bivariate meta-analysis of correlated effects: Impact of the prior distributions on the between-study correlation, borrowing of strength, and joint inferences</article-title>. <source>Statistical Methods in Medical Research</source> <volume>27</volume>. <fpage>428</fpage>–<lpage>450</lpage> (<year>2018</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_004">
<mixed-citation publication-type="journal"><string-name><surname>Chen</surname>, <given-names>J.</given-names></string-name> and <string-name><surname>Liu</surname>, <given-names>T.</given-names></string-name> <article-title>Statistical considerations on implementing the MCP-Mod method for binary endpoints in clinical trials</article-title>. <source>Contemporary Clinical Trials Communications</source> <volume>19</volume> (<year>2020</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_005">
<mixed-citation publication-type="journal"><string-name><surname>Fleischer</surname>, <given-names>F.</given-names></string-name>, <string-name><surname>Bossert</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Deng</surname>, <given-names>Q.</given-names></string-name>, <string-name><surname>Loley</surname>, <given-names>C.</given-names></string-name> and <string-name><surname>Gierse</surname>, <given-names>J.</given-names></string-name> <article-title>Bayesian MCPMod</article-title>. <source>Pharmaceutical Statistics</source> <volume>21</volume>. <fpage>654</fpage>–<lpage>670</lpage> (<year>2022</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_006">
<mixed-citation publication-type="book"><string-name><surname>Green</surname>, <given-names>P. J.</given-names></string-name> and <string-name><surname>Silverman</surname>, <given-names>B. W.</given-names></string-name> <source>Nonparametric Regression and Generalized Linear Models: A Roughness Penalty Approach</source>. <publisher-name>CRC Press</publisher-name>, <publisher-loc>London</publisher-loc> (<year>1993</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_007">
<mixed-citation publication-type="journal"><string-name><surname>Kirby</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Colman</surname>, <given-names>P.</given-names></string-name> and <string-name><surname>Morris</surname>, <given-names>M.</given-names></string-name> <article-title>Adaptive modelling of dose-response relationships using smoothing splines</article-title>. <source>Pharmaceutical Statistics</source> <volume>8</volume>. <fpage>346</fpage>–<lpage>355</lpage> (<year>2009</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_008">
<mixed-citation publication-type="book"><string-name><surname>Nocedal</surname>, <given-names>J.</given-names></string-name> and <string-name><surname>Wright</surname>, <given-names>S. J.</given-names></string-name> <source>Numerical Optimization</source>. <publisher-name>Springer</publisher-name>, <publisher-loc>New York</publisher-loc> (<year>1999</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_009">
<mixed-citation publication-type="journal"><string-name><surname>Sacks</surname>, <given-names>L. V.</given-names></string-name>, <string-name><surname>Shamsuddin</surname>, <given-names>H. H.</given-names></string-name>, <string-name><surname>Yasinskaya</surname>, <given-names>Y. I.</given-names></string-name>, <string-name><surname>Bouri</surname>, <given-names>K.</given-names></string-name>, <string-name><surname>Lanthier</surname>, <given-names>M. L.</given-names></string-name> <etal>et al.</etal> <article-title>Scientific and regulatory reasons for delay and denial of FDA approval of initial applications for new drugs, 2000–2012</article-title>. <source>JAMA</source> <volume>311</volume>. <fpage>378</fpage>–<lpage>384</lpage> (<year>2014</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_010">
<mixed-citation publication-type="journal"><string-name><surname>Saha</surname>, <given-names>S.</given-names></string-name> and <string-name><surname>Brannath</surname>, <given-names>W.</given-names></string-name> <article-title>Comparison of different approaches for dose response analysis</article-title>. <source>Biometrical Journal</source> <volume>61</volume>. <fpage>83</fpage>–<lpage>100</lpage> (<year>2019</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_011">
<mixed-citation publication-type="book"><string-name><surname>Ting</surname>, <given-names>N.</given-names></string-name> <source>Dose Finding in Drug Development</source>. <publisher-name>Springer</publisher-name>, <publisher-loc>New York</publisher-loc> (<year>2006</year>)</mixed-citation>
</ref>
<ref id="j_nejsds90_ref_012">
<mixed-citation publication-type="book"><string-name><surname>West</surname>, <given-names>M.</given-names></string-name> and <string-name><surname>Harrison</surname>, <given-names>J.</given-names></string-name> <source>Bayesian Forecasting and Dynamic Models</source>. <publisher-name>Springer</publisher-name>, <publisher-loc>New York</publisher-loc> (<year>2006</year>)</mixed-citation>
</ref>
</ref-list>
</back>
</article>
