Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/GAP/pkg/design/htm/   (Algebra von RWTH Aachen Version 4.15.1©)  Datei vom 2.10.2024 mit Größe 13 kB image not shown  

Quelle  CHAP005.htm   Sprache: HTML

 
 products/Sources/formale Sprachen/GAP/pkg/design/htm/CHAP005.htm


<html><head><title>[design] 5 Matrices and efficiency measures for block designs</title></head>
<body text="#000000" bgcolor="#ffffff">
[<a href = "chapters.htm">Up</a>] [<a href ="CHAP004.htm">Previous</a>] [<a href ="CHAP006.htm">Next</a>] [<a href = "theindex.htm">Index</a>]
<h1>5 Matrices and efficiency measures for block designs</h1><p>
<P>
<H3>Sections</H3>
<oL>
<li> <A HREF="CHAP005.htm#SECT001">Matrices associated with a block design</a>
<li> <A HREF="CHAP005.htm#SECT002">The function BlockDesignEfficiency</a>
<li> <A HREF="CHAP005.htm#SECT003">Computing an interval for a certain real zero of a rational polynomial</a>
</ol><p>
<p>
In this chapter we describe functions to calculate certain matrices
associated with a block design, and the function <code>BlockDesignEfficiency</code>
which determines certain statistical efficiency measures of a 1-design.
<p>
We also document the utility function <code>DESIGN_IntervalForLeastRealZero</code>,
which is used in the calculation of E-efficiency measures, but has much
wider application.
<p>
<p>
<h2><a name="SECT001">5.1 Matrices associated with a block design</a></h2>
<p><p>
<a name = "SSEC001.1"></a>
<li><code>PointBlockIncidenceMatrix( </code><var>D</var><code> )</code>
<p>
This function returns the point-block incidence matrix <var>N</var> of the
block design <var>D</var>.  This matrix has rows indexed by the points of <var>D</var>
and columns by the blocks of <var>D</var>, with the <var>(i,j)</var>-entry of <var>N</var> being
the number of times point <var>i</var> occurs in <code></code><var>D</var><code>.blocks[</code><var>j</var><code>]</code>.
<p>
The returned matrix <var>N</var> is immutable. 
<p>
<pre>
gap> D:=DualBlockDesign(AGPointFlatBlockDesign(2,3,1));;
gap> BlockDesignBlocks(D);
[ [ 1, 2, 3, 4 ], [ 1, 5, 6, 7 ], [ 1, 8, 9, 10 ], [ 2, 5, 8, 11 ], 
  [ 2, 7, 9, 12 ], [ 3, 5, 10, 12 ], [ 3, 6, 9, 11 ], [ 4, 6, 8, 12 ], 
  [ 4, 7, 10, 11 ] ]
gap> PointBlockIncidenceMatrix(D);
[ [ 1, 1, 1, 0, 0, 0, 0, 0, 0 ], [ 1, 0, 0, 1, 1, 0, 0, 0, 0 ], 
  [ 1, 0, 0, 0, 0, 1, 1, 0, 0 ], [ 1, 0, 0, 0, 0, 0, 0, 1, 1 ], 
  [ 0, 1, 0, 1, 0, 1, 0, 0, 0 ], [ 0, 1, 0, 0, 0, 0, 1, 1, 0 ], 
  [ 0, 1, 0, 0, 1, 0, 0, 0, 1 ], [ 0, 0, 1, 1, 0, 0, 0, 1, 0 ], 
  [ 0, 0, 1, 0, 1, 0, 1, 0, 0 ], [ 0, 0, 1, 0, 0, 1, 0, 0, 1 ], 
  [ 0, 0, 0, 1, 0, 0, 1, 0, 1 ], [ 0, 0, 0, 0, 1, 1, 0, 1, 0 ] ]
</pre>
<p>
<a name = "SSEC001.2"></a>
<li><code>ConcurrenceMatrix( </code><var>D</var><code> )</code>
<p>
This function returns the concurrence matrix <var>L</var> of the block design <var>D</var>.
This matrix is equal to <var>NN<sup>T</sup></var>, where <var>N</var> is the point-block
incidence matrix of <var>D</var> (see <a href="CHAP005.htm#SSEC001.1">PointBlockIncidenceMatrix</a>) and 
<var>N<sup>T</sup></var> is the transpose of <var>N</var>. If <var>D</var> is a binary block design
then the <var>(i,j)</var>-entry of its concurrence matrix is the number of blocks
containing points <var>i</var> and <var>j</var>.
<p>
The returned matrix <var>L</var> is immutable.
<p>
<pre>
gap> D:=DualBlockDesign(AGPointFlatBlockDesign(2,3,1));;
gap> BlockDesignBlocks(D);
[ [ 1, 2, 3, 4 ], [ 1, 5, 6, 7 ], [ 1, 8, 9, 10 ], [ 2, 5, 8, 11 ], 
  [ 2, 7, 9, 12 ], [ 3, 5, 10, 12 ], [ 3, 6, 9, 11 ], [ 4, 6, 8, 12 ], 
  [ 4, 7, 10, 11 ] ]
gap> ConcurrenceMatrix(D);
[ [ 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0 ], 
  [ 1, 3, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1 ], 
  [ 1, 1, 3, 1, 1, 1, 0, 0, 1, 1, 1, 1 ], 
  [ 1, 1, 1, 3, 0, 1, 1, 1, 0, 1, 1, 1 ], 
  [ 1, 1, 1, 0, 3, 1, 1, 1, 0, 1, 1, 1 ], 
  [ 1, 0, 1, 1, 1, 3, 1, 1, 1, 0, 1, 1 ], 
  [ 1, 1, 0, 1, 1, 1, 3, 0, 1, 1, 1, 1 ], 
  [ 1, 1, 0, 1, 1, 1, 0, 3, 1, 1, 1, 1 ], 
  [ 1, 1, 1, 0, 0, 1, 1, 1, 3, 1, 1, 1 ], 
  [ 1, 0, 1, 1, 1, 0, 1, 1, 1, 3, 1, 1 ], 
  [ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 0 ], 
  [ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 3 ] ]
</pre>
<p>
<a name = "SSEC001.3"></a>
<li><code>InformationMatrix( </code><var>D</var><code> )</code>
<p>
This function returns the information matrix <var>C</var> of the block design <var>D</var>.
<p>
This matrix is defined as follows. Suppose <var>D</var> has <var>v</var> points and <var>b</var>
blocks, let <var>R</var> be the <var>vtimesv</var> diagonal matrix whose <var>(i,i)</var>-entry
is the replication number of the point <var>i</var>, let <var>N</var> be the point-block
incidence matrix of <var>D</var> (see <a href="CHAP005.htm#SSEC001.1">PointBlockIncidenceMatrix</a>), and let <var>K</var>
be the <var>btimesb</var> diagonal matrix whose <var>(j,j)</var>-entry is the length of
<code></code><var>D</var><code>.blocks[</code><var>j</var><code>]</code>. Then the <strong>information matrix</strong> of <var>D</var> is 
<var>C:=R-NK<sup>-1</sup>N<sup>T</sup></var>. If <var>D</var> is a 1-<var>(v,k,r)</var> design then this expression
for <var>C</var> simplifies to <var>rI-k<sup>-1</sup>L</var>, where <var>I</var> is the <var>vtimesv</var> identity
matrix and <var>L</var> is the concurrence matrix of <var>D</var> (see <a href="CHAP005.htm#SSEC001.2">ConcurrenceMatrix</a>).
<p>
The returned matrix <var>C</var> is immutable.
<p>
<pre>
gap> D:=DualBlockDesign(AGPointFlatBlockDesign(2,3,1));;
gap> BlockDesignBlocks(D);
[ [ 1, 2, 3, 4 ], [ 1, 5, 6, 7 ], [ 1, 8, 9, 10 ], [ 2, 5, 8, 11 ], 
  [ 2, 7, 9, 12 ], [ 3, 5, 10, 12 ], [ 3, 6, 9, 11 ], [ 4, 6, 8, 12 ], 
  [ 4, 7, 10, 11 ] ]
gap> InformationMatrix(D);
[ [ 9/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, 0, 0 ], 
  [ -1/4, 9/4, -1/4, -1/4, -1/4, 0, -1/4, -1/4, -1/4, 0, -1/4, -1/4 ], 
  [ -1/4, -1/4, 9/4, -1/4, -1/4, -1/4, 0, 0, -1/4, -1/4, -1/4, -1/4 ], 
  [ -1/4, -1/4, -1/4, 9/4, 0, -1/4, -1/4, -1/4, 0, -1/4, -1/4, -1/4 ], 
  [ -1/4, -1/4, -1/4, 0, 9/4, -1/4, -1/4, -1/4, 0, -1/4, -1/4, -1/4 ], 
  [ -1/4, 0, -1/4, -1/4, -1/4, 9/4, -1/4, -1/4, -1/4, 0, -1/4, -1/4 ], 
  [ -1/4, -1/4, 0, -1/4, -1/4, -1/4, 9/4, 0, -1/4, -1/4, -1/4, -1/4 ], 
  [ -1/4, -1/4, 0, -1/4, -1/4, -1/4, 0, 9/4, -1/4, -1/4, -1/4, -1/4 ], 
  [ -1/4, -1/4, -1/4, 0, 0, -1/4, -1/4, -1/4, 9/4, -1/4, -1/4, -1/4 ], 
  [ -1/4, 0, -1/4, -1/4, -1/4, 0, -1/4, -1/4, -1/4, 9/4, -1/4, -1/4 ], 
  [ 0, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, 9/4, 0 ], 
  [ 0, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, -1/4, 0, 9/4 ] ]
</pre>
<p>
<p>
<h2><a name="SECT002">5.2 The function BlockDesignEfficiency</a></h2>
<p><p>
<a name = "SSEC002.1"></a>
<li><code>BlockDesignEfficiency( </code><var>D</var><code> )</code>
<li><code>BlockDesignEfficiency( </code><var>D</var><code>, </code><var>eps</var><code> )</code>
<li><code>BlockDesignEfficiency( </code><var>D</var><code>, </code><var>eps</var><code>, </code><var>includeMV</var><code> )</code>
<p>
Let <var>D</var> be a 1-<var>(v,k,r)</var> design with <var>v>1</var>, let <var>eps</var> be a positive
rational number (default: <var>10<sup>-6</sup></var>), and let <var>includeMV</var> be a boolean
(default: <code>false</code>).  Then this function returns a record <var>eff</var> containing
information on statistical efficiency measures of <var>D</var>. These measures
are defined below.  See <a href="biblio.htm#Extrep"><cite>Extrep</cite></a>, <a href="biblio.htm#BaCa"><cite>BaCa</cite></a> and <a href="biblio.htm#BaRo"><cite>BaRo</cite></a>
for further details.  All returned results are computed using exact
algebraic computation.
<p>
The component <code></code><var>eff</var><code>.A</code> contains the A-efficiency measure for <var>D</var>,
<code></code><var>eff</var><code>.Dpowered</code> contains the D-efficiency measure of <var>D</var> raised to the
power <var>v-1</var>, and <code></code><var>eff</var><code>.Einterval</code> is a list <var>[a,b]</var> of non-negative
rational numbers such that if <var>x</var> is the E-efficiency measure of <var>D</var>
then <var>alexleb</var>, <var>b-ale</var><var>eps</var>, and if <var>x</var> is rational then <var>a=x=b</var>.
Moreover <code></code><var>eff</var><code>.CEFpolynomial</code> contains the monic polynomial over the
rationals whose zeros (counting multiplicities) are the canonical
efficiency factors of the design <var>D</var>.  If <code></code><var>includeMV</var><code>=true</code> then
additional work is done to compute the MV- (also called E<var>'-) efficiency
measure, and then <code></code><var>eff</var><code>.MV</code> contains the value of this measure. (This
component may be set even if <code></code><var>includeMV</var><code>=false</code>, as a byproduct of
other computation.)
<p>
We now define the canonical efficiency factors and the A-, D-, E-,
and MV-efficiency measures of a 1-design. 
<p>
Let <var>D</var> be a 1-<var>(v,k,r)</var> design with <var>vge2</var>, let <var>C</var> be the information
matrix of <var>D</var> (see <a href="CHAP005.htm#SSEC001.3">InformationMatrix</a>), and let <var>F:=r<sup>-1</sup>C</var>.
The eigenvalues of <var>F</var> are all real and lie in the interval <var>[0,1]</var>.
At least one of these eigenvalues is zero: an associated eigenvector is
the all-<var>1</var> vector. The remaining eigenvalues <var>delta<sub>1</sub>ledelta<sub>2</sub>le
cdotsledelta<sub>v-1</sub></var> of <var>F</var> are called the <strong>canonical efficiency
factors</strong> of <var>D</var>. These are all non-zero if and only if <var>D</var> is connected
(that is, the point-block incidence graph of <var>D</var> is a connected graph).
<p>
If <var>D</var> is not connected, then the A-, D-, E-, and MV-efficiency measures
of <var>D</var> are all defined to be zero.  Otherwise, the <strong>A-efficiency
measure</strong> is <var>(v-1)/sum<sub>i=1</sub><sup>v-1</sup>1/delta<sub>i</sub></var> (the harmonic mean
of the canonical efficiency factors), the <strong>D-efficiency measure</strong>
is <var>(prod<sub>i=1</sub><sup>v-1</sup>delta<sub>i</sub>)<sup>1/(v-1)</sup></var> (the geometric mean of
the canonical efficiency factors), and the <strong>E-efficiency measure</strong> is
<var>delta<sub>1</sub></var> (the minimum of the canonical efficiency factors).
<p>
If <var>D</var> is connected, and the MV-efficiency measure is required,
then it is computed as follows. Let <var>F:=r<sup>-1</sup>C</var> be as before,
and let <var>P:=v<sup>-1</sup>J</var>, where <var>J</var> is the <var>vtimesv</var> all-1 matrix. Set
<var>M:=(F+P)<sup>-1</sup>-P</var>, making <var>M</var> the ``Moore-Penrose inverse'' of <var>F</var> (see
<a href="biblio.htm#BaCa"><cite>BaCa</cite></a>). Then the <strong>MV-efficiency measure</strongof <var>D</var> is the minimum
value (over all <var>i,jin{1,...,v}</var>, <var>inot=j</var>) of
<var>2/(M<sub>ii</sub>+M<sub>jj</sub>-M<sub>ij</sub>-M<sub>ji</sub>)</var>.
<p>
<pre>
gap> D:=DualBlockDesign(AGPointFlatBlockDesign(2,3,1));;
gap> BlockDesignBlocks(D);
[ [ 1, 2, 3, 4 ], [ 1, 5, 6, 7 ], [ 1, 8, 9, 10 ], [ 2, 5, 8, 11 ], 
  [ 2, 7, 9, 12 ], [ 3, 5, 10, 12 ], [ 3, 6, 9, 11 ], [ 4, 6, 8, 12 ], 
  [ 4, 7, 10, 11 ] ]
gap> BlockDesignEfficiency(D);
rec( A := 33/41, 
  CEFpolynomial := x_1^11-9*x_1^10+147/4*x_1^9-719/8*x_1^8+18723/128*x_1^7-106\
47/64*x_1^6+138159/1024*x_1^5-159813/2048*x_1^4+2067201/65536*x_1^3-556227/655\
36*x_1^2+89667/65536*x_1-6561/65536, Dpowered := 6561/65536, 
  Einterval := [ 3/4, 3/4 ] )
gap> BlockDesignEfficiency(D,10^(-4),true);
rec( A := 33/41, 
  CEFpolynomial := x_1^11-9*x_1^10+147/4*x_1^9-719/8*x_1^8+18723/128*x_1^7-106\
47/64*x_1^6+138159/1024*x_1^5-159813/2048*x_1^4+2067201/65536*x_1^3-556227/655\
36*x_1^2+89667/65536*x_1-6561/65536, Dpowered := 6561/65536, 
  Einterval := [ 3/4, 3/4 ], MV := 3/4 )
</pre>
<p>
<p>
<h2><a name="SECT003">5.3 Computing an interval for a certain real zero of a rational polynomial</a></h2>
<p><p>
We document a DESIGN package utility function used in the calculation
of the <code>Einterval</code> component above, but is more widely applicable.
<p>
<a name = "SSEC003.1"></a>
<li><code>DESIGN_IntervalForLeastRealZero( </code><var>f</var><code>, </code><var>a</var><code>, </code><var>b</var><code>, </code><var>eps</var><code> )</code>
<p>
Suppose that <var>f</var> is a univariate polynomial over the rationals, <var>a</var>,
<var>b</var> are rational numbers with <var><var>a</var>le<var>b</var></var>, and <var>eps</var> is a positive
rational number.
<p>
If <var>f</var> has no real zero in the closed interval <var>[<var>a</var>,<var>b</var>]</var>, then this
function returns the empty list.  Otherwise, let <var>alpha</var> be the least
real zero of <var>f</var> such that <var><var>a</var>lealphale<var>b</var></var>. Then this function
returns a list <var>[c,d]</var> of rational numbers, with <var>clealphaled</var>
and <var>d-cle<var>eps</var></var>. Moreover, <var>c=d</var> if and only if <var>alpha</var> is rational
(in which case <var>alpha=c=d</var>).
<p>
<pre>
gap> x:=Indeterminate(Rationals,1);                     
x_1
gap> f:=(x+3)*(x^2-3);
x_1^3+3*x_1^2-3*x_1-9
gap> L:=DESIGN_IntervalForLeastRealZero(f,-5,5,10^(-3));
[ -3, -3 ]
gap> L:=DESIGN_IntervalForLeastRealZero(f,-2,5,10^(-3));
[ -14193/8192, -7093/4096 ]
gap> List(L,Float);             
[ -1.73254, -1.73169 ]
gap> L:=DESIGN_IntervalForLeastRealZero(f,0,5,10^(-3));
[ 14185/8192, 7095/4096 ]
gap> List(L,Float);           
[ 1.73157, 1.73218 ]
gap> L:=DESIGN_IntervalForLeastRealZero(f,0,5,10^(-5));
[ 454045/262144, 908095/524288 ]
gap> List(L,Float);                  
[ 1.73204, 1.73205 ]
gap> L:=DESIGN_IntervalForLeastRealZero(f,2,5,10^(-5));
[  ]
</pre>
<p>
<p>
[<a href = "chapters.htm">Up</a>] [<a href ="CHAP004.htm">Previous</a>] [<a href ="CHAP006.htm">Next</a>] [<a href = "theindex.htm">Index</a>]
<P>
<address>design manual<br>November 2024
</address></body></html>

100%


¤ Dauer der Verarbeitung: 0.34 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.