【手続補正書】
【提出日】平成19年12月17日(2007.12.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
遺伝的プログラミング技術を用いてコンピュータプログラムコードを生成するコンピュータプログラムコード生成方法であって、
プログラムの所望の振る舞いを定義する仕様を提供し、
各プログラムが実際の振る舞いを有する、プログラムの現在の個体群を作成し、
現在の個体群における各プログラムについて、プログラムがいかに仕様を満たしているか計算する適合度関数を使用してプログラムの適合度を計算することを含む
コンピュータプログラムコード生成方法。
【請求項２】
前記各プログラムの適合度の計算が、プログラムの実際の振る舞いと仕様との間の距離の大きさを判定する、請求項１に記載のコンピュータプログラムコード生成方法。
【請求項３】
前記適合度の計算が、適合度関数により許容値内の距離が得られたとき、そのプログラムが仕様を満たしていると判定する、請求項２に記載のコンピュータプログラムコード生成方法。
【請求項４】
前記適合度の計算が、更に、適合度関数により距離ゼロが得られたとき、そのプログラムが仕様を満たしていると判定する、請求項２に記載のコンピュータプログラムコード生成方法。
【請求項５】
個体群におけるすべてのプログラムの適合度が十分に仕様を満たしていないと分析された場合、プログラムの個体群において選択した少なくとも一つのプログラムに突然変異操作と交差操作の少なくとも一つを行うことによって、プログラムの新たな個体群を作成することを更に含む、請求項１に記載のコンピュータプログラムコード生成方法。
【請求項６】
各プログラムを表示的意味論技術を用いて分析し、そのプログラムの実際の振る舞いを形式化することを更に含む、請求項１に記載のコンピュータプログラムコード生成方法。
【請求項７】
遺伝的プログラミング技術を用いてコンピュータプログラムコードを生成するコンピュータプログラムコード生成システムであって、
少なくとも一つの所望のプログラム振る舞いを定義する仕様を受け取る仕様受信回路、ルーチンまたはアプリケーションと、
各プログラムが実際の振る舞いを有する、コンピュータプログラムの一個体群を生成する現在プログラム個体群生成回路、ルーチンまたはアプリケーションと、
受信した仕様および定義した適合度関数に基づいて、仕様を満たしているかという点についてプログラムの適合度を判定する適合度判定回路、ルーチンまたはアプリケーションと、
を備えるコンピュータプログラムコード生成システム。
【請求項８】
前記適合度判定回路、ルーチンまたはアプリケーションが、プログラムの実際の振る舞いと仕様との間の距離の大きさを判定するために、プログラムに適合度関数を適用する、請求項７に記載のコンピュータプログラムコード生成システム。
【請求項９】
前記適合度判定回路、ルーチンまたはアプリケーションが、プログラムが許容値内の距離値を有するとき、そのプログラムが仕様を満たすと判定する、請求項８に記載のコンピュータプログラムコード生成システム。
【請求項１０】
前記適合度判定回路、ルーチンまたはアプリケーションが、プログラムが距離値ゼロを有するとき、そのプログラムは仕様を満たしていると判定する、請求項８に記載のコンピュータプログラムコード生成システム。
【請求項１１】
現在の個体群におけるすべてのプログラムの適合度がどのプログラムも仕様を十分に満たしていないと分析された場合、プログラムの現在の個体群において選択した少なくとも一つのプログラムに突然変異操作と交差操作の少なくとも一つを行うことによって、プログラムの新たな個体群を作成する、新個体群生成回路、ルーチンまたはアプリケーションを更に備える、請求項７に記載のコンピュータプログラムコード生成システム。
【請求項１２】
前記適合度判定回路、ルーチンまたはアプリケーションが、表示的意味論技術を用いて各プログラムの実際の振る舞いを形式化する、請求項７に記載のコンピュータプログラムコード生成システム。
【請求項１３】
コンピュータに、遺伝的プログラミング技術を用いてコンピュータプログラムを生成させる処理を実行させる一組の手順を実行させるためのプログラムであって、前記手順が、
プログラムの所望の振る舞いの仕様を受信する手順と、
各プログラムが意味を有する、コンピュータプログラムの現在の個体群を作成する手順と、
適合度関数を適用して、仕様を満たすという点においてプログラムの適合度を分析する手順と、
を含むプログラム。
【請求項１４】
前記適合度関数を適用して、仕様を満たすという点においてプログラムの適合度を分析する手順が、適合度関数を適用してプログラムの実際の振る舞いと仕様との間の距離値の大きさを判定する手順を含む、請求項１３に記載のプログラム。
【請求項１５】
適合度関数により求めた距離値が許容値内のときそのプログラムが仕様を満たすと判定する手順を更に含む、コンピュータによる読み取り可能な、請求項１４に記載のプログラム。
【請求項１６】
適合度関数により求めた距離値がゼロであるときそのプログラムが仕様を満たすと判定する手順を含む、請求項１４に記載のプログラム。
【請求項１７】
現在の個体群におけるすべてのプログラムが適合度において十分に仕様を満たしているプログラムがないと分析された場合、プログラムの現在の個体群において選択した少なくとも一つのプログラムに突然変異操作と交差操作の少なくとも一つを行うことによって、プログラムの新たな個体群を作成する手順を更に含む、請求項１３に記載のプログラム。
【請求項１８】
表示的意味論技術を用いて、プログラムの実際の振る舞いを形式化する手順を更に含む、請求項１３に記載のプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】コンピュータプログラムコード生成方法、コンピュータプログラムコード生成システム及びプログラム
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
上記課題を解決するために、請求項１に記載の発明は、遺伝的プログラミング技術を用いてコンピュータプログラムコードを生成するコンピュータプログラムコード生成方法であって、プログラムの所望の振る舞いを定義する仕様を提供し、各プログラムが実際の振る舞いを有する、プログラムの現在の個体群を作成し、現在の個体群における各プログラムについて、プログラムがいかに仕様を満たしているか計算する適合度関数を使用してプログラムの適合度を計算することを含むことを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
また、請求項７に記載の発明は、遺伝的プログラミング技術を用いてコンピュータプログラムコードを生成するコンピュータプログラムコード生成システムであって、少なくとも一つの所望のプログラム振る舞いを定義する仕様を受け取る仕様受信回路、ルーチンまたはアプリケーション、即ち仕様受信手段と、各プログラムが実際の振る舞いを有する、コンピュータプログラムの一個体群を生成する現在プログラム個体群生成回路、ルーチンまたはアプリケーション、即ち現在プログラム個体群生成手段と、受信した仕様および定義した適合度関数に基づいて、仕様を満たしているかという点についてプログラムの適合度を判定する適合度判定回路、ルーチンまたはアプリケーション、即ち適合度判定手段と、を備えることを特徴とする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
また、請求項１３に記載の発明は、コンピュータに、遺伝的プログラミング技術を用いてコンピュータプログラムを生成させる処理を実行させる一組の手順を実行させるためのプログラムであって、前記手順が、プログラムの所望の振る舞いの仕様を受信する手順と、各プログラムが意味を有する、コンピュータプログラムの現在の個体群を作成する手順と、適合度関数を適用して、仕様を満たすという点においてプログラムの適合度を分析する手順と、を含むことを特徴とする。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
請求項１４に記載したように、前記適合度関数を適用して、仕様を満たすという点においてプログラムの適合度を分析する手順は、適合度関数を適用してプログラムの実際の振る舞いと仕様との間の距離値の大きさを判定する手順を含むことを特徴とする。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
請求項１５に記載したように、本発明は、適合度関数により求めた距離値が許容値内のときそのプログラムが仕様を満たすと判定する手順を更に含むことを特徴とする。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
請求項１６に記載したように、本発明は、適合度関数により求めた距離値がゼロであるときそのプログラムが仕様を満たすと判定する手順を含むことを特徴とする。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
請求項１７に記載したように、本発明は、現在の個体群におけるすべてのプログラムが適合度において十分に仕様を満たしているプログラムがないと分析された場合、プログラムの現在の個体群において選択した少なくとも一つのプログラムに突然変異操作と交差操作の少なくとも一つを行うことによって、プログラムの新たな個体群を作成する手順を更に含むことを特徴とする。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
請求項１８に記載したように、本発明は、表示的意味論技術を用いて、プログラムの実際の振る舞いを形式化する手順を更に含むことを特徴とする。