(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-07
(45)【発行日】2022-06-15
(54)【発明の名称】主観評価装置及びプログラム
(51)【国際特許分類】
G06F 7/00 20060101AFI20220608BHJP
G09B 19/00 20060101ALI20220608BHJP
G06F 7/58 20060101ALI20220608BHJP
【FI】
G06F7/00
G09B19/00 Z
G06F7/58
(21)【出願番号】P 2018147962
(22)【出願日】2018-08-06
【審査請求日】2021-07-06
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】100147485
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100161148
【氏名又は名称】福尾 誠
(72)【発明者】
【氏名】杉本 岳大
(72)【発明者】
【氏名】大出 訓史
(72)【発明者】
【氏名】北島 周
【審査官】豊田 真弓
(56)【参考文献】
【文献】特開2015-60537(JP,A)
【文献】特開2003-330705(JP,A)
【文献】特開2009-151429(JP,A)
【文献】特開2017-91113(JP,A)
【文献】特開2013-178294(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 7/00
G09B 19/00
G06F 7/58
(57)【特許請求の範囲】
【請求項1】
並び順のランダムな評価対象を提示する主観評価装置であって、
並び順のランダムな数列を複数本生成する数列生成部と、
複数の評価対象を前記数列に基づいて並べ替える評価対象並べ替え部と、
前記評価対象並べ替え部により並べ替えられた評価対象を提示する評価対象提示部と、を備え、
前記数列生成部は、
それぞれ順列が異なる数列を複数本発生する数列発生部と、
前記数列を記録する数列記録部と、
前記数列記録部に記録されている数列から選択された数列である基準数列と、前記数列記録部に記録されている数列から選択した1本以上の数列である被検出数列との間で、部分的に並び順が共通する数列である共通部分数列を検出する共通部分数列検出部と、
前記共通部分数列検出部によって共通部分数列を検出されなかった被検出数列の中から1本以上の数列を選択して出力するとともに、当該数列を前記基準数列に追加する数列選択出力部と、
を備えることを特徴とする、主観評価装置。
【請求項2】
請求項1に記載の主観評価装置であって、
前記数列選択出力部は、被検出数列のうち、前記共通部分数列の長さが閾値を超えるもの、又は前記共通部分数列の出現回数が閾値を超えるものを除外し、残った被検出数列の中から1本以上の数列を選択することを特徴とする主観評価装置。
【請求項3】
請求項1又は2に記載の主観評価装置であって、
前記数列発生部は、前記共通部分数列検出部が、前記被検出数列の全てに共通部分数列を検出した場合に、新たに数列を発生して前記数列記録部の数列を更新するか、あるいは、前記数列選択出力部が数列を出力するごとに、新たに数列を発生して前記数列記録部の数列を更新することを特徴とする主観評価装置。
【請求項4】
請求項1から3に記載の主観評価装置であって、
前記共通部分数列検出部は、前記基準数列と前記被検出数列との間で前記共通部分数列を検出した場合には、前記基準数列と前記被検出数列との並び順の重複度を求め、
前記数列選択出力部は、前記重複度が最小である数列を選択して出力することを特徴とする主観評価装置。
【請求項5】
請求項4に記載の主観評価装置であって、
前記共通部分数列検出部は、前記共通部分数列の長さl、及び長さlの共通部分数列の出現回数m
lをパラメータとした、次式に示す評価関数E
【数1】
を用いて前記重複度を算出することを特徴とする主観評価装置。
【請求項6】
請求項4又は5に記載の主観評価装置であって、
前記数列生成部は、
前記共通部分数列検出部が出力する検出結果と被検出数列を受け取り、前記共通部分数列が検出されない被検出数列、あるいは前記重複度が閾値以下の被検出数列が複数本ある場合には、該被検出数列を被編集距離測定数列として選択する被編集距離測定数列選択部と、
前記基準数列と前記被編集距離測定数列との間の編集距離を測定する編集距離測定部と、をさらに備え、
前記数列選択出力部は、前記編集距離が最大の被編集距離測定数列を選択して出力することを特徴とする主観評価装置。
【請求項7】
請求項6に記載の主観評価装置であって、
前記編集距離測定部は、前記編集距離の操作を、1数字、又はブロック単位の数字ごとの置換と移動のみを対象として行うことを特徴とする主観評価装置。
【請求項8】
コンピュータを、請求項1から7のいずれか一項に記載の主観評価装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、並び順のランダムな評価対象を提示する主観評価装置及びプログラムに関する。
【背景技術】
【0002】
複数の評価対象を主観評価する場合、評価者ごとの試行における評価対象の並び順は、順序効果を排除する目的で、何らかのランダム化手法を用いて評価者ごとに並び替える必要がある(例えば、非特許文献3,4参照)。実際の主観評価の手法について記された文献においても、評価対象の並び順をランダム化することが推奨されている(例えば、非特許文献1,2,5参照)。
【先行技術文献】
【非特許文献】
【0003】
【文献】Recommendation ITU-R BS.1116-3、2015
【文献】Recommendation ITU-R BS.1534-3、2015
【文献】トーガーソン他、「ランダム化比較試験の設計」、日本評論社、2010
【文献】丹後、「無作為化比較試験」、朝倉書店、2003
【文献】渡辺、「オーディオ信号の劣化の評価法」、2007、音響学会誌第63巻、pp.686-692
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来、主観評価装置におけるランダム化の手続きは、Excel(登録商標)に付属するrand関数を利用するなど、計算機のランダム化機能を応用することが多かった。しかし、これらのランダム化アルゴリズムは疑似乱数を利用した仕組みであり、部分的な並び順のランダム性まで保証するものではない。例えば、数列[1 2 3 4 5]と[3 4 5 1 2]とは異なるが、並び順[1 2]と[3 4 5]は双方で共通している。そのため、計算機が出力した並び順を目視して確認し、並び順に偏りがないかを確認する必要があった。しかしながら、実験実施者によるランダム度合いの評価や特定の並び順の除外は、特定のバイアスが掛かる可能性があり、公正な実験デザインとは言えない場合も出てくる。また、評価対象の個数や試行回数が多い場合は、実験実施者が全ての並び順を管理することは現実的に不可能であり、これらの手法によるランダム化には限界があった。
【0005】
かかる事情に鑑みてなされた本発明の目的は、評価対象の並び順のランダム性を評価することで、並び順がランダム化された評価対象を自動的に提示することが可能な主観評価装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0006】
上記課題を解決するため、本発明に係る主観評価装置は、並び順のランダムな評価対象を提示する主観評価装置であって、並び順のランダムな数列を複数本生成する数列生成部と、複数の評価対象を前記数列に基づいて並べ替える評価対象並べ替え部と、前記評価対象並べ替え部により並べ替えられた評価対象を提示する評価対象提示部と、を備え、前記数列生成部は、それぞれ順列が異なる数列を複数本発生する数列発生部と、前記数列を記録する数列記録部と、前記数列記録部に記録されている数列から選択された数列である基準数列と、前記数列記録部に記録されている数列から選択した1本以上の数列である被検出数列との間で、部分的に並び順が共通する数列である共通部分数列を検出する共通部分数列検出部と、前記共通部分数列検出部によって共通部分数列を検出されなかった被検出数列の中から1本以上の数列を選択して出力するとともに、当該数列を前記基準数列に追加する数列選択出力部と、を備えることを特徴とする。
【0007】
さらに、本発明に係る主観評価装置において、前記数列選択出力部は、被検出数列のうち、前記共通部分数列の長さが閾値を超えるもの、又は前記共通部分数列の出現回数が閾値を超えるものを除外し、残った被検出数列の中から1本以上の数列を選択することを特徴とする。
【0008】
さらに、本発明に係る主観評価装置において、前記数列発生部は、前記共通部分数列検出部が、前記被検出数列の全てに共通部分数列を検出した場合に、新たに数列を発生して前記数列記録部の数列を更新するか、あるいは、前記数列選択出力部が数列を出力するごとに、新たに数列を発生して前記数列記録部の数列を更新することを特徴とする。
【0009】
さらに、本発明に係る主観評価装置において、前記共通部分数列検出部は、前記基準数列と前記被検出数列との間で前記共通部分数列を検出した場合には、前記基準数列と前記被検出数列との並び順の重複度を求め、前記数列選択出力部は、前記重複度が最小である数列を選択して出力することを特徴とする。
【0010】
さらに、本発明に係る主観評価装置において、前記共通部分数列検出部は、前記共通部分数列の長さl、及び長さlの共通部分数列の出現回数m
lをパラメータとした、次式に示す評価関数E
【数1】
を用いて前記重複度を算出することを特徴とする。
【0011】
さらに、本発明に係る主観評価装置において、前記数列生成部は、前記共通部分数列検出部が出力する検出結果と被検出数列を受け取り、前記共通部分数列が検出されない被検出数列、あるいは前記重複度が閾値以下の被検出数列が複数本ある場合には、該被検出数列を被編集距離測定数列として選択する被編集距離測定数列選択部と、前記基準数列と前記被編集距離測定数列との間の編集距離を測定する編集距離測定部と、をさらに備え、前記数列選択出力部は、前記編集距離が最大の被編集距離測定数列を選択して出力することを特徴とする。
【0012】
さらに、本発明に係る主観評価装置において、前記編集距離測定部は、前記編集距離の操作が1数字、又はブロック単位の数字ごとの置換と移動のみを対象とすることを特徴とする。
【0013】
さらに、本発明に係る主観評価装置において、前記数列発生部は、予め除外すべき数列又は共通部分数列を入力し、該数列の発生を禁止することが望ましい。
【0014】
さらに、本発明に係る主観評価装置において、前記数列発生部は、発生対象の数をカテゴリー別に複数のグループに分類し、層別ランダム化、及び適応的ランダム化の少なくとも一方を用いて数列を発生させることが望ましい。
【0015】
また、上記課題を解決するため、本発明に係るプログラムは、コンピュータを、上記主観評価装置として機能させることを特徴とする。
【発明の効果】
【0016】
本発明によれば、並び順がランダム化された評価対象を自動的に提示することが可能になる。
【図面の簡単な説明】
【0017】
【
図1】本発明の第1の実施形態に係る主観評価装置の構成例を示すブロック図である。
【
図2】本発明の第1の実施形態に係る主観評価装置の数列生成部の構成例を示すブロック図である。
【
図3】本発明の第1の実施形態に係る主観評価装置の共通部分数列検出部における検出例を示す図である。
【
図4】本発明の第1の実施形態に係る主観評価装置の共通部分数列検出部における共通部分数列検出用の疑似MATLABコードを示す図である。
【
図5】
図4に示した疑似MATLABコードによる検出結果を示す図である。
【
図6】本発明の第1の実施形態に係る主観評価装置の共通部分数列検出部における重複度の検出例を示す図である。
【
図7】本発明の第2の実施形態に係る主観評価装置の構成例を示すブロック図である。
【
図8】本発明の第2の実施形態に係る主観評価装置の数列生成部の構成例を示すブロック図である。
【
図9】本発明の第2の実施形態に係る主観評価装置の編集距離測定部が測定するブロック編集距離の測定例を示す図である。
【
図10】本発明の第2の実施形態に係る主観評価装置における数列生成の動作例を示すフローチャートである。
【発明を実施するための形態】
【0018】
以下、本発明の実施形態について、図面を参照して詳細に説明する。
【0019】
(第1の実施形態)
図1は、本発明の第1の実施形態に係る主観評価装置の構成例を示す図である。主観評価装置1は、並び順のランダムな評価対象を評価者に提示する装置であり、数列生成部10と、評価対象記録部20と、評価対象並べ替え部30と、評価対象提示部40と、評価結果記録部50とを備える。
【0020】
評価対象記録部20は、主観評価の対象となる複数の評価対象(例えば、文書データ、画像データ、音声データなど)を記録する。
【0021】
数列生成部10は、数列の長さl、及び必要な数列の本数x(x≧1)を入力し、並び順のランダムな長さlの数列をx本生成し、評価対象並べ替え部30に出力する。詳細については後述する。
【0022】
評価対象並べ替え部30は、評価対象記録部20から複数の評価対象を取得し、取得した複数の評価対象を、数列生成部10により生成された数列に基づいて並べ替え、並べ替えた評価対象を評価対象提示部40に出力する。例えば、評価対象記録部20から取得した評価対象がA,B,C,D,Eの5つで、数列生成部10により生成された数列が[3 1 5 2 4]であった場合には、A,B,C,D,Eをそれぞれ3,1,5,2,4番目に並べ替える。あるいは、A,B,C,D,Eにそれぞれ1~5を付与し、数列生成部10により生成された数列の順に並べ替えてもよい。その場合、数列生成部10により生成された数列が[3 1 5 2 4]であった場合には、評価対象はC,A,E,B,Dの順に並び替えられる。
【0023】
評価対象提示部40は、評価対象並べ替え部30により並べ替えられた評価対象を評価者に提示する。例えば、評価対象が文書データ又は画像データである場合には、評価対象をディスプレイに表示し、評価対象が音声データである場合には、評価対象をスピーカから出力する。評価対象提示部40は、評価対象を1つずつ評価者に提示し、評価者は評価対象を1つずつ評価する。
【0024】
評価結果記録部50は、評価者による評価対象の評価結果を記録する。
【0025】
次に、数列生成部10について詳細に説明する。
【0026】
図2は、数列生成部10の構成例を示す図である。数列生成部10は、数列発生部11と、数列記録部12と、共通部分数列検出部13と、数列選択出力部14とを備える。
【0027】
数列発生部11は、数列の長さ(数字の個数、ここではn)と必要な数列の本数xを入力し、それぞれ順列が異なる数列を複数本発生する。数列の発生には、既知の疑似乱数生成アルゴリズムを用いることができる。例えば、数列発生部11は、発生対象の数をカテゴリー別に複数のグループに分類し、層別ランダム化、及び適応的ランダム化(最小化)の少なくとも一方を用いて数列を発生させる。これらのランダム化手法を用いることで、複数カテゴリー間での選択頻度のバランスを取るとともに、同一のカテゴリーに選択が集中しないように制御することができるため、ランダム化に好適である。
【0028】
また数列発生部11は、予め除外すべき数列又は共通部分数列を入力しておくことにより、該数列の発生を禁止することも可能である。このようにすることで、評価対象記録部20での記録順が既知の場合に、主観評価上、偏った結果につながりやすい評価対象の並び順(差の小さい群や特定のカテゴリーに属する群の連続)を避けることができるため、ランダム化に好適である。
【0029】
数列記録部12は、数列発生部11により発生された、x本の長さnの数列を記録する。
【0030】
共通部分数列検出部13は、数列記録部12に記録されている数列から無作為に1本の数列を選択して数列記録部12から消去して基準数列とするとともに、当該基準数列を数列生成部10から出力する。そして、基準数列と、数列記録部12に記録されている数列から任意に選択された1本以上の被検出数列との間で、部分的に並び順が共通する数列(以下、「共通部分数列」という。)を検出し、数列選択出力部14に出力する。
【0031】
数列選択出力部14は、共通部分数列検出部13によって共通部分数列が検出されなかった被検出数列が存在する場合には、共通部分数列が検出されなかった被検出数列の中から1本以上の数列を選択して出力する。
【0032】
数列選択出力部14は、被検出数列のうち、共通部分数列の長さが閾値を超えるもの、及び/又は、共通部分数列の出現回数が閾値を超えるものを除外し、残った被検出数列の中から1本以上の数列を選択して出力してもよい。例えば、共通部分数列検出部13によって共通部分数列を検出されなかった被検出数列が1本のみである場合、数列選択出力部14は、共通部分数列を検出されなかった被検出数列を出力するとともに、共通部分数列を検出された被検出数列のうち、共通部分数列の長さ及び出現回数が閾値以下の被検出数列を出力するようにしてもよい。
【0033】
また、共通部分数列検出部13は、基準数列と被検出数列との間で共通部分数列が検出された場合には、基準数列と被検出数列との間の、並び順の重複度(数字の隣接頻度)を算出するようにしてもよい。
【0034】
共通部分数列検出部13が重複度を算出する場合には、数列選択出力部14は、被検出数列の中から重複度の小さい順に1本以上の数列を選択して出力する。
【0035】
共通部分数列検出部13が、被検出数列の全てに共通部分数列を検出した場合には、数列発生部11は新たに数列を発生し、共通部分数列検出部13によって共通部分数列が検出されなくなるまで、数列記録部12の数列を更新するようにしてもよい。同様に、重複度が閾値を超える場合には、数列発生部11は新たに数列を発生し、数列記録部12の数列を更新するようにしてもよい。
【0036】
また、数列発生部11は、数列選択出力部14が数列を出力するごとに、新たに数列を発生し、数列記録部の数列を更新するようにしてもよい。
【0037】
共通部分数列検出部13は、基準数列格納部131と、被検出数列格納部132と、検出部133とを備える。
【0038】
初回限定の処理として、基準数列格納部131は、数列記録部12に記録されている任意の数列aiを取得し、数列記録部12から数列aiを削除した上で、基準数列とし格納するとともに、数列生成部10から出力する。
【0039】
被検出数列格納部132は、数列記録部12に記録されている数列ai以外の数列の中から任意の本数の数列を取得し、被検出数列として格納する。
【0040】
検出部133は、基準数列と被検出数列との間の共通部分数列を総当たりで検出し、検出結果を数列選択出力部14に出力する。
【0041】
検出部133は、共通部分数列を検出した場合には、基準数列と前記被検出数列との並び順の重複度(数字の隣接頻度)を算出し、重複度を各被検出数列に紐づけて数列選択出力部14に出力してもよい。具体的には、共通部分数列の長さl、及び長さlの共通部分数列の本数(出現回数)mlを記憶する。そして、長さlの共通部分数列に関する評価関数Elを、式(1)に示すようにl及びmlをパラメータとして定義することにより、重複度を算出する。
【0042】
【0043】
図3に、一組の数列に関する共通部分数列検出部13の検出例を示す。ここでは基準数列[1 2 3 4 5 6 7 8 9 10]と、被検出数列[3 4 5 6 9 1 2 10 7 8]について、共通部分数列の長さごとに検出された回数を記録し、評価関数E
lを定義する。この例では、基準数列と被検出数列との間に、長さl=4の共通部分数列[3 4 5 6]が存在し(出現回数m
4=1)、長さl=2の共通部分数列[1 2]及び[7 8](出現回数m
2=2)が存在する。
【0044】
共通部分数列に関する重複度は、例えば、式(2)に示す、式(1)をlに関して総和した評価関数E^を用いて、数値化することができる。
図3に示す例では、E^=E
2+E
4=2+3=5となる。
【0045】
【0046】
なお、評価関数E^は式(2)に限定されることはなく、長さlや出現回数mlの大きさで評価することも可能であるし、長さlや出現回数mlを指数関数の指数として取り扱うことも可能である。また、長さlの最大値がn-1であるのは、数列発生部11が互いに完全に一致する数列を発生しないことを前提としているからである。そのため、数列発生部11のアルゴリズムによっては互いに完全に一致する数列を発生する可能性がある場合には、長さlの最大値をnとしてもよい。
【0047】
図4に、共通部分数列検出用の疑似MATLABコード(登録商標)の一例を示す。scoreTabに共通部分数列の場所と長さを格納する仕組みである。
【0048】
図5に、
図4に示した疑似MATLABコードによる検出結果を示す。scoreTabは斜め右下方向に共通部分数列の長さがインクリメントされる仕組みになっている。1のみの場合は1数字だけの重複なので、共通部分数列ではない。
図5から、長さl=2の共通部分数列が2本(出現回数m
l=2)、長さl=4の共通部分数列が1本(出現回数m
l=1)検出されたことが分かる。
【0049】
数列選択出力部14は、重複度が最も小さい数列を選択し、評価対象並べ替え部30に出力する。数列選択出力部14は、出力した被検出数列の情報を数列記録部12に送り、該数列は数列記録部12から消去される。また、数列選択出力部14は、出力した被検出数列を基準数列格納部131に格納し、基準数列に追加する。これにより、数列選択出力部14が次に出力する数列は、過去に出力した全ての数列に対して重複度が小さい数列となる。
【0050】
また、数列選択出力部14は、出力した数列の情報、及び重複度が閾値を超えた被検出数列の情報を被検出数列格納部132に送り、該数列は被検出数列格納部132から消去され、出力した数列が追加で基準数列格納部131に格納される。なお、被検出数列格納部132から消去された数列分の格納領域に、数列記録部12から追加の数列を補充してもよいし、毎回、被検出数列格納部132の全数列を更新してもよい。
【0051】
2本目以降の数列を出力するにあたり、共通部分数列検出部13は基準数列格納部131に格納されている複数の数列と、被検出数列格納部132に格納されている複数の数列との間の共通部分数列に関して、総当たりで評価する。数列選択出力部14は前のプロセス同様、総当たりの検出結果から出力する数列を決定する。
【0052】
図6に、共通部分数列検出部13に入力された全ての数列の組み合わせ、及び重複度の検出例を示す。基準数列格納部131に数列r
iが、被検出数列格納部132に数列p
iが格納されているものとする。前述のように検出は総当たりになるので、各被検出数列の重複度E^
piは式(3)により表される。
【0053】
【0054】
数列選択出力部14は、共通部分数列検出部13により検出された重複度E^
piを用いて、出力する数列を決定する。
図6の例では、重複度E^
piが最も低い数列p
2を出力する。
【0055】
なお、本発明は数列のみならず文字列にも応用可能である。また、同じ数字を複数回用いる数列の場合は、[1 1 2 2]を[1 2 3 4]のように便宜的に異なる数字を割り当てておくことで、本発明の手法を適用することができる。
【0056】
以上、主観評価装置1について説明したが、主観評価装置1として機能させるためにコンピュータを用いることも可能である。そのようなコンピュータは、主観評価装置1の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。また、このプログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROMなどの記録媒体であってもよい。
【0057】
以上説明したように、第1の実施形態では、基準数列と被検出数列との間で、共通部分数列を検出して重複度の低い数列を選択し、評価対象を重複度の低い数列に基づいて並べ替える。かかる構成により、主観評価装置1は、並び順がランダム化された、すなわち重複度が低く並び順に偏りが少ない評価対象を自動的に生成することが可能となる。
【0058】
(第2の実施形態)
次に、本発明の第2の実施形態に係る主観評価装置について説明する。
【0059】
図7は、本発明の第2の実施形態に係る主観評価装置の構成例を示す図である。第2の実施形態に係る主観評価装置2は、第1の実施形態に係る主観評価装置1と比較して、数列生成部10に代えて数列生成部10’を備える点が相違する。その他の構成は同一であるため、以下、数列生成部10’について説明する。
【0060】
図8は、数列生成部10’の構成例を示す図である。数列生成部10’は、数列発生部11と、数列記録部12と、共通部分数列検出部13と、数列選択出力部14と、被編集距離測定数列選択部15と、編集距離測定部16とを備える。数列生成部10’は、第1の実施形態に示した数列生成部10と比較して、被編集距離測定数列選択部15及び編集距離測定部16をさらに備える点が相違する。
【0061】
数列生成部10’は、共通部分数列とともに編集距離も勘案して数列を選択する。ここで、編集距離とは、数列に対する数字の挿入・削除・置換などによって一方の数列をもう一方の数列に一致させるのに必要な操作回数のことであり、回数が多いほど距離が遠いことになる。
【0062】
共通部分数列検出部13は、基準数列格納部131内の基準数列を編集距離測定部16に出力する。また、共通部分数列検出部13は、被検出数列及び重複度を出力し、被編集距離測定数列選択部15に出力する。
【0063】
被編集距離測定数列選択部15は、共通部分数列検出部13の検出結果に基づき、共通部分数列が検出されない被検出数列が複数本ある場合、あるいは重複度が最小又は閾値以下で等しい被検出数列が複数本ある場合には、該被検出数列を選択し、被編集距離測定数列として編集距離測定部16に出力する。一方、共通部分数列が検出されない被検出数列、あるいは重複度が最小又は閾値以下の被検出数列が1本しかない場合には、被編集距離測定数列選択部15は、編集距離測定そのものをパスして、該被検出数列を数列選択出力部14に出力する。
【0064】
編集距離測定部16は、基準数列と被編集距離測定数列との間の編集距離を測定し、測定結果と被編集距離測定数列を数列選択出力部14に出力する。
【0065】
数列選択出力部14は、編集距離が最大の被編集距離測定数列を選択して出力する。
【0066】
既存の編集距離には、Levenshtein距離(1数字の挿入・削除・置換)、Damerau-Levenshtein距離(1数字の挿入・削除・置換・移動)、移動付き編集距離(1数字の挿入・削除・置換・複数数字の移動)などがあり、これらを応用することも可能である。しかしながら、数字が重複せず、かつ長さが一定の数列発生に関しては、挿入及び削除は編集操作として適当ではない。そこで、編集距離測定部16は、編集距離の操作を、1数字、又はブロック単位の数字ごとの置換と移動のみを対象として行うのが好適である。このような、1数字、又はブロック単位の数字ごとの置換及び移動のみを対象とした編集距離のことを、以下、「ブロック編集距離」という。
【0067】
図9に、編集距離測定部16が測定するブロック編集距離の測定例を示す。基準数列を[1 2 3 4 5 6 7 8 9 10]とし、被編集距離測定数列を[3 4 5 6 9 1 2 10 7 8]とした場合の、基準数列から被編集距離測定数列までのブロック編集距離の測定過程を示す。この例では、編集1回目では、基準数列に対してブロック単位の数字[3 4 5 6]を移動させている。編集2回目では、編集1回目の数列に対してブロック単位の数字[7 8]を移動させている。編集3回目では、編集2回目の数列に対してブロック単位の数字1数字[9]を移動させている。編集3回目で被編集距離測定数列と一致するため、この場合のブロック編集距離は「3」になる。
【0068】
図10は、数列生成部10’における数列生成の動作例を示すフローチャートである。まず数列発生部11により、発生する数列の長さと本数を取得し(ステップS101)、その条件に合わせて数列を発生する(ステップS102)。
【0069】
基準数列が基準数列格納部131に格納されていない場合には(ステップS103-No)、発生された数列の中から基準数列を選択し、基準数列格納部131に格納する(ステップS104)。そして、検出部133により共通部分数列を検出する(ステップS105)。一方、基準数列が基準数列格納部131に格納されている場合には(ステップS103-Yes)、ステップS104をスキップし、検出部133により共通部分数列を検出する(ステップS105)。
【0070】
ステップS105により共通部分数列を検出した結果、重複度が最小の数列が1本の場合には(ステップS106-Yes)、そのままその数列を出力する(ステップS109)。
【0071】
一方、共通部分数列が検出されない場合、あるいは重複度が閾値以下の被検出数列が複数本ある場合など、重複度が最小の数列が1本でない場合には(ステップS106-No)、被編集距離測定数列選択部15によりそれらを被編集距離測定数列として選択し(ステップS107)、編集距離測定部16により基準数列との間の編集距離を測定する(ステップS108)。その結果、数列選択出力部14により編集距離の最も大きい数列を出力するとともに、該数列を基準数列格納部131に格納して基準数列に追加する(ステップS109)。
【0072】
この時点までに所定の本数の数列が生成されていた場合には(ステップS110-Yes)、生成処理を終了し、所定の本数に満たない場合には(ステップS110-No)、共通部分数列の検出(ステップS105)に戻って、所定の本数の数列を生成し終えるまでステップS105からステップS109までの処理を繰り返す。
【0073】
以上、主観評価装置2について説明したが、主観評価装置2として機能させるためにコンピュータを用いることも可能である。そのようなコンピュータは、主観評価装置2の各機能を実現する処理内容を記述したプログラムを該コンピュータの記憶部に格納しておき、該コンピュータのCPUによってこのプログラムを読み出して実行させることで実現することができる。また、このプログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROMなどの記録媒体であってもよい。
【0074】
以上説明したように、第2の実施形態では、基準数列と被検出数列との間で共通部分数列が検出されない場合、あるいは重複度が閾値以下の被検出数列が複数本ある場合には、基準数列と被編集距離測定数列との間で編集距離を測定し、編集距離が最大の被編集距離測定数列を選択して出力する。かかる構成により、重複度が最小の数列が1本でない場合であっても、数列選択出力部14は数列を選択することができ、主観評価装置2は並び順がランダム化された評価対象を自動的に生成することが可能となる。
【0075】
上述の実施形態は代表的な例として説明したが、本発明の趣旨及び範囲内で、多くの変更及び置換ができることは当業者に明らかである。したがって、本発明は、上述の実施形態によって制限するものと解するべきではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。例えば、実施形態の構成図に記載の複数の構成ブロックを1つに組み合わせたり、あるいは1つの構成ブロックを分割したりすることが可能である。
【符号の説明】
【0076】
1,2 主観評価装置
10,10’ 数列生成部
11 数列発生部
12 数列記録部
13 共通部分数列検出部
14 数列選択出力部
15 被編集距離測定数列選択部
16 編集距離測定部
20 評価対象記録部
30 評価対象並べ替え部
40 評価対象提示部
50 評価結果記録部
131 基準数列格納部
132 被検出数列格納部
133 検出部