(57)【要約】【課題】  自然言語、人工言語の記述式問題において、正誤判定の精度の高い教育システムを提供する。また、自然言語の記述式問題において、出題者が採点基準を設定することで、その問題の難易度を調整できる教育システムを提供する。【解決手段】  自然言語の問題においては自然言語解析（格解析）を用い、文意から正誤判定する。正誤判定の際には、格解析の結果である格解析木の構造のほか、それぞれの格が持つ属性（肯定／否定、態、時制）も比較に利用するかを出題者が設定できるようにする。  人工言語の問題においてはコンパイラ等の人工言語解析装置を用いて解答から実行形式ファイルを作成し、その実行結果から正誤判定する。【選択図】  図３
2005134691.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを経由した教育システムにおける自然言語による記述式の問題の採点にあたって、解答の言語解析を実施することで採点基準（厳しさ／甘さ）の設定を可能にし、出題者が問題の難易度を設定できる教育システムの自動採点装置。
【請求項２】
請求項１において、自然言語による記述式の回答を、自然言語解析で類似語も参照可能な同義語データベース、解析木の作成を利用することで文意から採点する教育システムの自動採点装置。
【請求項３】
請求項１において、プログラミング言語などの人工言語による回答を、コンパイラなどの人工言語解析によって実行ファイルを作成し、実際に動作を判定することで採点する教育システムの自動採点装置。
【請求項４】
請求項１から請求項３を実現するために、ドキュメントシステムを電子的に記録する媒体、および装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータを用いたネットワーク上の教育システムの自動採点装置に関する。
【背景技術】
【０００２】
従来の教育システムの自動採点では、問題の種別として、回答を自然言語や人工言語で書かせ、その記述の一致度などから正誤判定する記述式問題と、回答を複数の選択肢から選ばせ、選んだ選択肢（コード）から正誤判定するコード型問題とがあった。
【０００３】
このうち、記述式問題においては、正誤判定に完全一致または部分一致を用いて正誤判定をしていた。
【０００４】
例えば、特開２００１−２４９６０８号公報によると、採点用にあらかじめ幾つかのキーワードを用意しておき、受講者の解答の中にそれらのキーワードが幾つ入っているかで正誤判定または配点している。
【０００５】
また、完全一致・部分一致による採点法は、本来自然言語に適用されるものであったが、実情としてほかに採点方式がないためプログラムなど人工言語の採点にも利用されている。
【０００６】
【特許文献１】特開２００１−２４９６０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
記述式問題においては、正誤判定に完全一致または部分一致を用いて正誤判定をしているため、その精度に問題があった。
【０００８】
例えば、完全一致を用いて正誤判定を行う場合、一字一句同じ文章を書かなければ正答とはみなされない。これは、自然言語の場合は、受動態が能動態になるだけで、もしくは文節の順序が異なるだけで、同じ意味の文章が誤答と判断されることを意味する。人工言語の場合は、動作は同じでもプログラムコードの記述順序が異なっていたり、全く同じロジックだが変数名が異なっていたりするだけで解答が誤答と判断されることを意味する。
【０００９】
部分一致を用いて正誤判定を行う場合、出題者が判定用のキーワードを用意して、解答中のキーワードとの一致の割合で正誤判定および採点する。自然言語の場合、キーワードには名詞が使われることが多いため、「ＡはＢである」「ＡはＢでない」のような正反対の意味の解答でも、設定されたキーワードが「Ａ」と「Ｂ」だけのときはどちらも正答と判断される恐れがある。
【００１０】
また、試験や問題の性質によっては、採点の基準（厳しさ／甘さ）を調整したいこともある。従来の記述式問題の採点方法だと、その調整が難しい。
【課題を解決するための手段】
【００１１】
上記問題を解決するために、本発明の自動採点システムでは次の特徴を持つ。１．自然言語の記述式問題を採点するために、自然言語解析（格解析）を用い、解答文章の意味を判断する処理工程および仕組みを具備する。２．人工言語の記述式問題を採点するために、人工言語解析（コンパイラ等）を用い、実際に実行形式ファイルを作成してその動作を判定する処理工程および仕組みを具備する。３．問題・解答登録時に、自然言語の記述式問題の採点の基準を出題者側が設定する処理工程および仕組みを具備する。以下にそれぞれについて説明する。
【００１２】
上記１について説明する。
【００１３】
自然言語の記述式問題においては、受講者の解答（文章）を自然言語解析装置で格解析して格解析木を作成する。格解析木の例を図１に示す。格解析木とは、文章を構成するそれぞれの「格」の関係を示す。したがって、記述順序が異なっても同じ意味の文章であれば、それぞれの格の関係が同じため、同じ意味であることを認識できる。
【００１４】
図１の格解析木は「せっかちな事務員は、１週間という短い期間で、特許明細書を作成した。」という文章を解析した結果である。ノードと線は、ノード間の係り結びを意味する。例えば、ノード１０１「作成」とノード１１１「特許明細書」が線でつながれているが、これは、ノード１１１「特許明細書」が述語１０１「作成」の対象格であること、つまり解析した文章が「特許明細書を作成する／特許明細書が作成される」という文意であることを示す。これが、「せっかちな事務員によって、特許明細書が１週間という短い期間で作成された。」のように、同じ意味で格の出現順序や態（能動態／受動態）が異なる文章になっても、格解析木上での係り結びは前者のものと同じになる。したがって、「書き方は異なるが同じ意味の文章であること」を認識することができる。格解析をすると、これらの格の関係のほかに図２に示すような格の属性（時制・態・肯定/否定）も知ることができる。これらの情報は、述語など動詞的な特徴をもつ格が持っている。図２の場合は、述語「作成」は過去形／能動態／肯定文、つまり、「作成した」と書かれていることを示す。
【００１５】
格の関係に加えて、これら格の属性を利用すると、出題者があらかじめ登録してある模範解答の格解析木と受講者の格解析木を比較することで、その文意から正誤判定できる。
【００１６】
上記２について説明する。
【００１７】
人工言語の記述式問題においては、受講者の解答（プログラム）を、出題者が用意した動作判定プログラムと合わせて人工言語解析装置（コンパイラ等とその実行装置）で解析・実行し、その動作を確認する。動作判定プログラムでは、解答が正しい動作をしている場合は１を、正しい動作をしていない場合は０を出力するなどとすることで正誤判定できる。
【００１８】
上記３について説明する。
【００１９】
自然言語の記述式問題に対する採点基準の設定には、格解析の情報を利用する。採点基準の設定は、格または格グループに対して行う。格グループとは、出題者が自分で定義できる、意味を持つ格の集合である。格グループは親子関係のある複数の格で構成される。格グループを設定すると、意味のある集合ごとに採点基準を設定できる。
【００２０】
採点基準の設定においては、格解析の結果得られた格または設定した格グループに対して、前述した格属性に関する設定「同義語を許す」や「能動態、受動態の違いを許す」等の採点基準を行うことで、採点の厳しさ／甘さを調整することができる。設定できる採点基準は、「同義語を許す」「態の違いを許す」「時制の違いを許す」「肯定/否定の違いを許す」の４種類である。それぞれについて説明する（ただし、格および格グループには、採点のための情報として、これらのほかに正しく記述されていた場合の「配点」と、その格が解答に「必須」かどうかも設定できる）。
【００２１】
「同義語を許す」では、同義語データベース７３０に登録されている同義語が、模範解答の格の代わりに使われていても正答と判断される。例えば、「記述する」の同義語に「書く」が登録されていれば、模範解答の「記述する」の個所に「書く」と記述されていても正答と判断される。
【００２２】
「態の違いを許す」では、その格が述語のような能動態／受動態の属性を持つ場合、どちらの書き方をしても正答と判断される。例えば、模範解答「ＡがＢを書いた。」に対する解答「ＡによってＢが書かれた。」は正答と判断される。
「時制の違いを許す」では、格が時制を持つ場合、現在形、過去形等の違いを許し、正答と判断される。例えば、模範解答「ＡがＢを書く」に対する解答「ＡがＢを書いた」は正答と判断される。
【００２３】
「肯定/否定の違いを許す」では、格が述語のように肯定/否定の属性を持つ場合、肯定/否定のどちらの書き方をしても正答と判断される。例えば、模範解答「ＡがＢを書く」に対する解答「ＡがＢを書かない」は正答と判断される。
【００２４】
図１に対してこの採点基準を用いた例を図３に示す。この意味を説明すると次のようになる。なお、以下の同義語に関する記述は、同義語データベース７３０に登録されているものとする。
設定３１１：述語「作成する」は同義語（書く、執筆する等）で書かれていても良い。能動態と受動態のどちらで書かれても良い。
設定３１２：対象格「特許明細書」は同義語（明細書）で書かれていても良い。
設定３１３：連体修飾成分「せっかちな」が書かれていると１点加点される。
設定３２１：格グループＡ「事務員が特許明細書を作成した」が書かれていると５点加点される。この格の記述は必須である。
設定３２２：格グループＢ「短い期間で」が書かれていると２点加点される。
設定３２３：格グループＣ「一週間という期間で」は同義語（一週間で等）で書かれていても良い。これが書かれていると２点加点される。
【００２５】
この採点基準に従った場合の解答「事務員によって明細書が書かれた」の正誤判定について説明する。格解析結果は、図４のようになる。まず、述語４０１は「作成する」ではなく「書く」だが、採点基準によると同義語が許されている（設定３１１）ので問題ない。属性を見ると、模範解答と異なり受動態になっているが、これも採点基準で許されている（設定３０１）ので問題ない。対象格４１１「明細書」は「特許明細書」の同義語として許されている（設定３１２）。つまり、この文章は採点基準における必須格グループＡ（だけ）を満たしているため、設定３２１により５点と判断される。
【００２６】
解答が「せっかちな事務員が明細書を作成した」の場合、正誤判定について説明する。格解析結果は、図５のようになる。この文章も必須格グループＡを満たしているので、設定３２１により５点加点される。さらに、連体修飾成分「せっかち」５２１が正しく動作主格「事務員」５１２に修飾されているので、設定３１３により１点加点される。したがって、合計６点になる。
【００２７】
解答が「一週間で明細書を作成した」の場合、正誤判定について説明する。格解析結果は、図６のようになる。時間格「一週間」６１２は、格グループＣの設定３２３で許されているので問題ない。しかし、この文章には動作主格「事務員」がない。つまり、必須格グループＡがないため（設定３２１を満たしていないため）、０点になる。
【００２８】
格解析結果に対し上記設定を付け加えると、正答の幅を柔軟に変えられる問題を作成できる。例えば、すべての格に対して、「同義語を許さない」「態の違いを許さない」「時制の違いを許さない」と設定すると、完全一致のみ正答とすることができる。また、「同義語を許す」「態の違いを許す」「時制の違いを許す」とし、幾つかの名詞形の格にだけ配点を設定しておくと、特開２００１−２４９６０８号公報のようなキーワードを使った正誤判定と同じ効果を得られる。また、文末の格は必ず格ＩＤが０になるのだが、これを利用して、文末の格だけ配点設定すれば、文章の意味ではなく、文章の形（何故という質問に対して「〜だから」「〜のため」という形式の解答）を判定することもできる。これは、解答の内容ではなく解答形式だけを正誤判定に使いたいというレベルの問題の出題にも利用できる。
【発明の効果】
【００２９】
自然言語による記述式問題の採点基準を出題者が設定できるようになることで、想定受講者のレベルに合わせた教育システムを提供することができる。
【００３０】
自然言語による記述式問題を、解答の文意から正誤判定することで、より精度の高い採点を行える。
【００３１】
人工言語のスクリプトを記述させる問題を、その実行結果から正誤判定することで、より精度の高い採点を行える。
【発明を実施するための最良の形態】
【００３２】
（実施例１）
以下、本発明の１実施形態を図面を参照して説明する。
【００３３】
図７は、本発明が適用される教育システムの構成図である。システムは大きく四つに分かれる。問題登録や解答するためのクライアント７００、問題を作成、出題するなど、システム全体の機能管理を司る教育システムサーバ７１０、問題・解答等の情報をを貯蓄する問題データベース７２０、そして自然言語解析で使用する同義語を貯蓄する同義語データベース７３０である。同義語データベース７３０とは、格になり得る用語が登録されており、ある用語を基に検索すると同じ意味の別の用語の一覧が取得できるものとする。同義語判定においては、自然言語解析部７１４によって、取得した用語一覧と受講者７０１の使用した格との比較によって同義語かどうかが判定される。
【００３４】
クライアント７００には、教育システムサーバ７１０に登録されている問題の受講者７０１と、問題を作成し教育システムサーバ７１０に問題を登録する出題者７０２がいる。これらは、複数人存在する可能性があり、それぞれはネットワークを介して教育システムサーバ７１０にアクセスできるものとする。アクセスの際に使用できる機能（問題登録、受講等）は、一般的なシステムのようにユーザＩＤによって区別されているものとする。
【００３５】
教育システムサーバ７１０には、システム全体の機能を管理する機能制御部７１２と、クライアント７００と問題情報・解答情報等をやりとりするデータ送受信部７１１、受講者７０１からの出題要求（受講したい問題の問題ＩＤを送信する）に応じて問題を出題する出題部７１５、出題者７０２が問題を作成し、問題データベース７２０に登録するための問題登録部７１７、受講者７０１の解答の正誤判定および配点を行う採点部７１３、そして、自然言語解析を行い格解析木を生成したり同義語判定したりする自然言語解析部７１４と、人工言語解析（コンパイル、実行等）を行う人工言語解析部７１６がある。人工言語解析部７１６には出題される言語の解析（コンパイル等）・実行するための環境が整っているものとする。そのほか、ユーザ情報を管理するための機能部や、受講者７０１には問題を表示する機能部なども存在するが、本発明の請求項範囲外であり、類似システムで使用されているものと同様に実現できるため、説明は省略する。
【００３６】
教育システムを利用した学習の流れは図８のようになる。ここで説明するシステムは説明を簡便にするため、登録されている問題を受講者７０１が選択して、解答する形式とする。
【００３７】
まず、出題者７０２がステップ８０１で問題作成および採点基準の設定、登録を行う。ここでは、作成した問題と設定された採点基準の情報を問題データベース７２０に登録する。問題データベース７２０で管理される情報は、図９の問題情報管理テーブル、図１７の模範解答用格解析結果管理テーブル（格グループ定義後）、図１２の採点基準管理テーブル、図１１の人工言語解答テーブルの四つである。これらの情報は、ステップ８０１の問題作成および採点基準の設定、登録が完了した時点で登録される。それぞれのテーブルについては、後に説明する。
【００３８】
登録された問題の情報は、問題情報管理テーブル図９で管理される。問題情報管理テーブルは、すべての問題を一意に表す問題ＩＤ９０１、出題形式（コード型、自然言語型、人工言語型）９０２、問題の格納場所９０３、解答または解答のためのテーブルの識別子を表す９０４、配点または配点のためのテーブルの識別子を表す９０５で構成される。９０４には、コード型の場合は解答そのもの（選択肢の識別子）が格納されるが、自然言語型の場合は図１７の模範解答用格解析結果管理テーブル（格グループ定義後）の識別子（例：自答０００１）、人工言語型の場合は図１１の人工言語解答テーブルの識別子（例：人答０００１）が格納される。９０５には、コード型および人工言語型の場合は配点そのものが格納されるが、自然言語型の場合は図１２の採点基準管理テーブルの識別子（例：自点０００１）が格納される。
【００３９】
ステップ８０１で登録された問題は、受講者７０１が出題要求することで解答できるようになる。ここでは、問題ＩＤ９０１で指定する。
【００４０】
登録された問題を受講するためには、まず受講者７０１がステップ８１１でサーバに接続・出題要求を行う。教育システムサーバ７１０は、データ送受信部７１１にその要求を受けると、機能制御部７１２から出題部７１５に出題命令を出し、受講者７０１に問題情報および問題ＩＤを送信し、受講者７０１の画面に表示する（ステップ８０２）。受講者７０１は、出題された問題に解答（ステップ８１２）すると、その解答情報と問題ＩＤがサーバに送られる。サーバ側では出題要求時と同様に、データ送受信部７１１経由で機能制御部７１２に採点要求が発信される。そして、必要なら解答情報がその問題の形式に合った言語解析部（７１４または７１６）に送られ解析された後、採点部７１３にて採点される（ステップ８０３）。採点が終わると、受講者７０１に採点結果を表示する（ステップ８０４）。
【００４１】
受講者７０１は、別の問題を解答するならステップ８１１に戻って再度出題要求し、解答しないなら処理は終了する（ステップ８１３）。
【００４２】
以下、本発明で特徴的な処理であるステップ８０１「問題作成および採点基準の設定、登録」およびステップ８０３「採点（形式に合わせて）」について説明する。
【００４３】
問題作成および採点基準の設定、登録は図１３に示すフローで行われる。初めに、ステップ１３０１で作成する問題の形式を選択する。ここでは、自然言語型、人工言語型またはコード型を選択できる。自然言語型の問題とは文章の意味の正誤を判定する問題、人工言語型の問題とはプログラム等の人工言語のスクリプトの正誤を判定する問題、コード型の問題とはいわゆる選択式の問題で選択された解答の正誤を判定する問題である。
【００４４】
本説明は請求項１の問題の難易度設定および請求項２の自然言語型の記述式問題の採点方法に関する。自然言語型の問題を作成する場合、出題者７０２は、まずステップ１３１１で問題を入力する。次にステップ１３１２で模範解答を入力する。入力された模範解答は、自然言語解析部７１４によりステップ１３１３で解析され図１のような解析木が生成され、その情報は図１０のテーブルに格納される。自答０００１は、このテーブルの識別子を表す。図１０のテーブルでは、各格が持つ情報と格ＩＤを管理する。格ＩＤ１００１の列では当該格を解析木中で一意に判別するための識別子を管理する。格ＩＤは格解析木の根（ルート）の部分、つまり文末にあたる格の場合に０になる。それ以外の場合は一意の値を持つようにする。格の種類１００２の列では述語、対象格等、当該格の格の種類を管理する。格１００３の列では当該格そのものを管理する。時制１００４では述語等のように当該格が時制を持つ場合にその時制を管理する。態１００５では連用修飾成分や述語等のように当該格が態（受動態／能動態）を持つ場合にその態を管理する。肯定／否定１００６では述語等のように当該格が肯定／否定の要素を持つ場合にそれを管理する。子ノード１００７、１００８、１００９では当該格が子ノードを持つ場合に子ノードのＩＤを管理する。子ノードは、当該格が持っている子ノードの数だけ存在する。
【００４５】
解析木を生成した後は、ステップ１３１４にて解析結果に採点基準を設定する。ここでは、図３のように採点基準を設定する。なお、設定の際には、格解析結果に基づき図１が表示され、出題者はその図の上に図３のような設定を行うことができる。例えば、図１中の述語「作成」を選択すると、採点基準設定画面が表示される。設定画面には、設定可能な採点基準「同義語を許す」、「時制の違いを許す」、「態の違いを許す」、「肯定/否定の違いを許す」、「必須」のチェックボックスと、「配点」の入力欄があるという具合である。格グループの設定については、複数の格を選択して「格グループにする」などとすると、格グループとして定義される。採点基準の設定は格の場合と同じである。それぞれについての説明は、課題を解決するための手段の項で示したとおりである。
【００４６】
採点基準設定の際に格グループが定義された場合、図１０のテーブルに格グループに関する情報が追加される。そして、格グループには格ＩＤが設定される。図３のように格グループを定義した場合の模範解答用格解析木管理テーブル（格グループ定義後）は図１７のようになる。図中の行１７１１〜１７１３が追加された格グループの情報である。格グループの場合、子ノード列１７０７以降には格グループの構成要素となる格の格ＩＤが格納される。例えば、図３によると、格グループＡは「事務員」「特許明細書」「作成」で構成されているので、格グループＡを示す行１７１１の子ノードの値は格ＩＤ０、１、３となる。
【００４７】
そして、図３のように設定した採点基準に関する情報は、図１２で示すような採点基準管理テーブルに格納される。これは、図３の設定から自動的に生成されるものである。図３と図１７の対応を説明すると次のようになる。格ＩＤ１２０１…図３中の格および格グループの格ＩＤが格納される。この値は図１７模範解答用格解析木管理テーブル（格グループ定義後）にて定義されている。同義語１２０２…該当格に「同義語を許す」が設定されているかを示す。許す場合は１、許さない場合は０が格納される。例えば、述語「作成」には「同義語を許す」が設定されている。述語「作成」の格ＩＤは図１７模範解答用格解析木管理テーブル（格グループ定義後）より格ＩＤ０とわかる。したがって、格ＩＤ０の同義語１２０２は１となる（該当格が格グループの場合でも格ＩＤで管理されているため同様）。時制１２０３以降は、格ＩＤと設定値の関連を知る方法は同義語１２０２と同様である。
【００４８】
自点０００１は、このテーブルの識別子を表す。採点基準管理テーブルには、格ＩＤを管理する１２０１、同義語を許すかどうかを管理する１２０２、時制の違いを許すかかどうかを管理する１２０３、態の違いを許すかどうかを管理する１２０４、肯定／否定の違いを許すかどうかを管理する１２０５、そのＩＤに対する配点を管理する１２０６、そのＩＤが必須かどうかを示す１２０７が存在する。
【００４９】
１２０１の列には採点基準が設定された格ＩＤが格納される。１２０２〜１２０５の列には、採点基準を適用するか否かを示す値として、１か０が格納される。１のときは適用する（「ＸＸの違いを許す」）。０のときは適用しない（「ＸＸの違いを許さない」）。なお、同義語を許すときは１が格納され、実際の同義語は同義語データベース７３０にあらかじめ登録されている用語が利用される。
【００５０】
採点時には、図１７と図１２を参照することで、正誤判定および点数を決定できる。詳細については採点フローの説明部分で説明する。
【００５１】
採点基準を設定したあとは、ステップ１３０２にてこれらの情報を問題データベース７２０に登録して終了となる。
【００５２】
本説明は請求項３の人工言語型の記述式問題の採点方法に関する。人工言語型の問題を作成する場合、出題者７０２は、まずステップ１３２１で問題を入力する。次にステップ１３２２で動作判定プログラムを入力する。動作判定プログラムとは、受講者７０１の解答の動作を確認するためのプログラムである。採点時には、人工言語解析部７１６にて、解答と一緒にコンパイル等をして実行形式にしたあと、課題で設定したとおりに入出力が発生するかをこのプログラムで確認する。そして、正答ならば１を出力、誤答なら０を出力する。
【００５３】
次にステップ１３２３にて正答時の配点を設定する。最後にステップ１３０２にてこれらの情報を問題データベース７２０に登録して終了となる。
【００５４】
登録する際のデータの形式は図１１に示す人工言語型用解答管理テーブルのようになる。人答０００１は、このテーブルの識別子を表す。１１０１では動作判定プログラムのソースコードの格納場所を示している。１１０２では動作判定プログラムの使用言語を示している。
【００５５】
コード型の問題を作成する場合、従来と同じ流れで問題を作成・登録する。ステップ１３３１で問題を入力し、ステップ１３３２で解答を設定する。そして、ステップ１３３３で配点を設定したあと、それらの情報を問題データベース７２０に登録して終了する。登録する情報は問題情報管理テーブル図９に登録される。
【００５６】
採点は図１４に示すフローで行われる。初めに、ステップ１４０１で受講者７０１の解答および問題ＩＤを取得する。次に情報管理テーブルから該当する問題ＩＤの出題形式を参照し（ステップ１４０２）、その出題形式ごと（自然言語型、人工言語型またはコード型）に処理を次のように分ける。
【００５７】
出題形式が自然言語型の場合、ステップ１４１１にて受講者７０１の解答の格解析を行う。そして、ステップ１４１２にて、その結果を問題ＩＤに対応する図１２採点基準管理テーブルおよび図１７模範解答用格解析結果管理テーブル（格グループ定義後）と比較して配点する（問題ＩＤとそれぞれのテーブルとの対応については、図９問題の情報管理テーブルの解答列９０４と配点列９０５から分かる）。結果の比較にあたっては、まず図１２の採点基準管理テーブルを参照し、その内容に従って正誤判定を行う。
【００５８】
ステップ１４１２の詳細な流れを受講者解答が「事務員によって明細書が書かれた」だった場合を例にして説明する。その格解析結果は図４で、これをテーブルで表現すると、図１５のようになる。ステップ１４１２の詳細な流れは図１６のようになる。
【００５９】
基本的な流れは、１．調査する格の決定、２．採点基準の設定に従って、受講者解答用格解析木管理テーブルから合致する格を検索（必要なら同義語データベースを使用）、３．合致した場合、その格に設定された点数を配分、４．残りの格についても同様に調査、となる。ただし、調査する格が格グループの場合は、格グループを構成する要素がすべて合致する必要があり、またそれらの要素の親子関係も合致しなければいけない。また、必須格と設定されている格について、該当格なしと判断された場合、０点となる。
【００６０】
まずステップ１６０１にて、図１７模範解答用格解析木管理テーブル（格グループ定義後）の行を上から走査し調査する格を決定する（最初は格ＩＤ０」）。ステップ１６０２は、格の種類が格グループの場合に実施する。格ＩＤ０は違うので実施しない。次にステップ１６０３で、図１２採点基準管理テーブルで格ＩＤ０の設定を確認する。格ＩＤ０では、「同義語を許す」「態の違いを許す」が設定されている。次にステップ１６０４にて、格ＩＤ０に相当する格が受講者解答用格解析管理テーブルに存在するかを調べる。ここでは、ステップ１６０３で調べた採点基準も考慮して調査する。「同義語を許す」ような場合、格と同じ意味の用語を同義語データベース７３０にて検索し、ヒットした用語も格候補として受講者解答用格解析管理テーブルから探す。そのほかの基準の場合、格の属性について考慮する。例えば、「態の違いを許す」の場合は格の態属性が「受動態」あっても「能動態」であっても良いということになる。格ＩＤ０の属性は、「同義語を許す」「態の違いを許す」である。したがって、同義語データベースに登録されている「作成」の同義語も含めて、受講者解答用格解析管理テーブルから探す。このとき、態属性は異なっていてもかまわない。今、同義語データベースに「書く」が登録されていたとする。この場合、格ＩＤ０に該当する格が受講者解答用格解析管理テーブル中の格ＩＤ０に存在する（「書く」）。したがって、流れ図では該当格ありに進む。ステップ１６０５は、調査対象が格グループの場合に実施するものなので、ステップ１６０６で配点を行う。採点基準管理テーブルによると、格ＩＤ０の配点は０である。したがって、０点を加算してステップ１６０８に進む。模範解答用格解析木管理テーブル（格グループ定義後）のすべての格ＩＤを調べていないので、ステップ１６０１に戻って別の格ＩＤを調べることにする。格ＩＤ１は格ＩＤ０と同様、該当する格が存在するが配点は０である。格ＩＤ２はステップ１６０４にて、該当格なしと判断される。そして、必須格ではないためステップ１６０７を経由してステップ１６０８、１６０１へと進む。同様に格ＩＤ２２１まで進めると、点数０のままステップ１６０１になる。ここでの対象の格ＩＤはＧ０Ａである。Ｇ０Ａは格グループのため、ステップ１６０２で構成要素を調べる。その結果、構成要素は格ＩＤ０、１、３である。ステップ１６０３とステップ１６０４でこれらに該当する格を探すと、それぞれ受講者解答用格解析管理テーブルの格ＩＤ０（書く）、１（明細書）、２（事務員）が存在する。したがって、ステップ１６０５に進む。ここでは、模範解答用格解析木管理テーブル（格グループ定義後）の格ＩＤ０、１、３の親子関係と、受講者解答用格解析管理テーブルの格ＩＤ０、１、２の親子関係が合致するかを調べる。それぞれのテーブルの子ノード列を見ると、模範解答用格解析木管理テーブル（格グループ定義後）では格ＩＤ０の子が格ＩＤ１と格ＩＤ３、受講者解答用格解析管理テーブルでは格ＩＤ０の子が格ＩＤ１と格ＩＤ２となっている。ここで、格ＩＤの対応を見ると、模範解答用格ＩＤ０＝受講者解答用格ＩＤ０、模範解答用格ＩＤ１＝受講者解答用格ＩＤ１、模範解答用格ＩＤ３＝受講者解答用格ＩＤ２なので、親子関係は正しいことになる。したがって、ステップ１６０６に進む。格ＩＤＧ０Ａの配点は５点なので、点数に５点を加算し（現在、合計５点）ステップ１６０８に進む。以降、格ＩＤＧ０Ｂ、Ｇ０Ｃについて調べるが、合致する格が存在しないため、そのまま終了となる。
【００６１】
これは、先に課題を解決するための手段の項で解析木を使って説明した結果と一致する。
【００６２】
このようにすると、出題者７０２が設定した難易度に応じて自然言語型の問題を採点できる。
【００６３】
以上により、請求項２で示す自然言語による解答を文意から採点する教育システム、および請求項１に関わる出題者７０２が設定した難易度に従って自然言語による解答を採点する教育システムが実現される。
【００６４】
出題形式が人工言語型の場合、ステップ１４２１にて問題登録時に作成された動作判定プログラムと一緒にコンパイル等をして実行形式ファイルを作成する。動作判定プログラムは情報管理テーブルの解答列９０４から参照される図１１人工言語解答管理テーブルの判定プログラム格納先列１１０１に格納先に関する情報が格納されている。人工言語解答管理テーブルには、そのほか人工言語として何が使われているかを示す使用言語列１１０２も存在する。人工言語解析装置は、この列の情報によって使用するコンパイラ等を使い分け実行形式ファイルを作成する。このとき、コンパイルエラー等が発生して実行形式ファイルが作成できなかった場合、受講者７０１の解答に文法ミスがあったとみなし誤答とする。実行ファイルを作成したあとはステップ１４２２にてそのファイルを実行し、その実行結果に基づいて正誤判定する。課題を解決するための手段の項で述べたとおり、動作判定プログラムは、受講者の解答が正答ならば１を、誤答ならば０を出力するよう出題者に作成されている。したがって、実行の結果、１が出力されれば正答、０が出力されれば誤答と判定できる。
【００６５】
以上により、請求項３に示すプログラミング言語などの人工言語による解答を実行形式ファイルを作成することで、正誤判定する教育システムが実現される。
【００６６】
出題形式がコード型の場合、ステップ１４３１にて情報管理テーブルの解答列９０４と受講者７０１の解答を比較し、結果に従って判定する。正答だった場合の配点は配点列９０５に従う。
【００６７】
以上により、請求項４に示すドキュメントシステムを電子的に記録する媒体、および装置が実現される。
【図面の簡単な説明】
【００６８】
【図１】各解析木「せっかちな事務員は、１週間という短い期間で、特許明細書を作成した。」の例を示す図。
【図２】格の属性を示す図。
【図３】採点基準の設定例を示す図。
【図４】各解析木「事務員によって明細書が書かれた」を示す図。
【図５】各解析木「せっかちな事務員が明細書を作成した」を示す図。
【図６】各解析木「一週間で明細書を作成した」を示す図。
【図７】システム構成図。
【図８】教育システムを使った問題作成および採点基準の設定、登録から採点までの流れを示す図。
【図９】問題情報管理テーブルを示す図。
【図１０】模範解答用格解析結果管理テーブルを示す図。
【図１１】人工言語解答テーブルを示す図。
【図１２】採点基準管理テーブルを示す図。
【図１３】問題作成および採点基準の設定、登録の流れを示す図。
【図１４】当該教育システムでの採点の流れを示す図。
【図１５】受講者解答用格解析結果管理テーブル「事務員によって明細書が書かれた」を示す図。
【図１６】フロー１４１２の詳細フローを示す図。
【図１７】模範解答用格解析結果管理テーブル（格グループ定義後）を示す図。
【符号の説明】
【００６９】
１０１…格解析木の述語を表す格「作成」、１１１…格解析木の対象格を表す格「特許明細書」、１１２…格解析木の時間格を表す格「期間」、１１３…格解析木の動作主格を表す格「事務員」、１２１…格解析木の連体修飾成分を表す格「短い」、１２２…格解析木の連体修飾成分を表す格「いう」、１２３…格解析木の連体修飾成分を表す格「せっかち」、１２２…格解析木の連用修飾成分を表す格「一週間」、３１１…格「作成」に設定された採点基準、３１２…格「特許明細書」に設定された採点基準、３１３…格「せっかち」に設定された採点基準、３２１…格グループＡに設定された採点基準、３２２…格グループＢに設定された採点基準、３２３…格グループＣに設定された採点基準、４０１…「事務員によって明細書が書かれた。」の格解析木の述語「作成」、４１１…「事務員によって明細書が書かれた。」の格解析木の対象格「明細書」、４１２…「事務員によって明細書が書かれた。」の格解析木の動作主格「事務員」、５０１…「せっかちな事務員が明細書を作成した。」の格解析木の述語「作成」、５１１…「せっかちな事務員が明細書を作成した。」の格解析木の対象格「特許明細書」、５１２…「せっかちな事務員が明細書を作成した。」の格解析木の動作主格「事務員」、５２１…「せっかちな事務員が明細書を作成した。」の格解析木の連体修飾成分「せっかち」、６０１…「一週間で明細書を作成した。」の格解析木の述語「作成」、６１１…「一週間で明細書を作成した。」の格解析木の対象格「特許明細書」、６１２…「一週間で明細書を作成した。」の格解析木の時間格「一週間」、７００…教育システムのクライアント、７０１…教育システムの受講者、７０２…教育システムの出題者、７１０…教育システムのサーバ、７１１…サーバのデータ受信部、７１２…サーバの機能制御部、７１３…サーバの採点部、７１４…サーバの自然言語解析部、７１５…サーバの出題部、７１６…サーバの人工言語解析部、７１７…サーバの問題登録部、７２０…問題データベース、７３０…同義語データベース、９０１…問題ＩＤを格納する列、９０２…問題の出題形式情報を格納する列、９０３…問題の格納場所情報を格納する列、９０４…問題の解答または解答情報を保持するテーブルの識別子を格納する列、９０５…問題の配点または配点情報を保持するテーブルの識別子を格納する列、１００１…格ＩＤを格納する列、１００２…格の種類を格納する列、１００３…格そのものを格納する列、１００４…格が持つ属性「時制」を格納する列、１００５…格が持つ属性「態」を格納する列、１００６…格が持つ属性「肯定／否定」を格納する列、１００７…格の子ノード１の識別子を格納する列、１００８…格の子ノード２の識別子を格納する列、１００９…格の子ノード３の識別子を格納する列、１１０１…動作判定プログラムの格納場所情報を格納する列、１１０２…解答に使われている人工言語の種別を格納する列、１２０１…格ＩＤを格納する列、１２０２…同義語を許すかどうかの情報を格納する列、１２０３…時制の違いを許すかどうかの情報を格納する列、１２０４…態の違いを許すかどうかの情報を格納する列、１２０５…肯定／否定の違いを許すかどうかの情報を格納する列、１２０６…その格または格グループが正答だったときの配点を格納する列、１２０７…その格または格グループが正答のために必須かどうかを格納する列、１７０１…格ＩＤを格納する列、１７０２…格の種類を格納する列、１７０３…格そのものを格納する列、１７０４…格が持つ属性「時制」を格納する列、１７０５…格が持つ属性「態」を格納する列、１７０６…格が持つ属性「肯定／否定」を格納する列、１７０７…格の子ノード１の識別子を格納する列、１７０８…格の子ノード２の識別子を格納する列、１７０９…格の子ノード３の識別子を格納する列、１７１１…格グループＡの設定行、１７１２…格グループＢの設定行、１７１３…格グループＣの設定行。
【図１】
2005134691.tif 000003
【図２】
2005134691.tif 000004
【図３】
2005134691.tif 000005
【図４】
2005134691.tif 000006
【図５】
2005134691.tif 000007
【図６】
2005134691.tif 000008
【図７】
2005134691.tif 000009
【図８】
2005134691.tif 000010
【図９】
2005134691.tif 000011
【図１０】
2005134691.tif 000012
【図１１】
2005134691.tif 000013
【図１２】
2005134691.tif 000014
【図１３】
2005134691.tif 000015
【図１４】
2005134691.tif 000016
【図１５】
2005134691.tif 000017
【図１６】
2005134691.tif 000018
【図１７】
2005134691.tif 000019