JP5417972B2 - Genetic processing apparatus, genetic processing method, and genetic processing program - Google Patents

Genetic processing apparatus, genetic processing method, and genetic processing program Download PDF

Info

Publication number
JP5417972B2
JP5417972B2 JP2009111457A JP2009111457A JP5417972B2 JP 5417972 B2 JP5417972 B2 JP 5417972B2 JP 2009111457 A JP2009111457 A JP 2009111457A JP 2009111457 A JP2009111457 A JP 2009111457A JP 5417972 B2 JP5417972 B2 JP 5417972B2
Authority
JP
Japan
Prior art keywords
converter
data
target data
new target
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009111457A
Other languages
Japanese (ja)
Other versions
JP2010262404A (en
Inventor
秀貴 佐々木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nikon Corp
Original Assignee
Nikon Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nikon Corp filed Critical Nikon Corp
Priority to JP2009111457A priority Critical patent/JP5417972B2/en
Publication of JP2010262404A publication Critical patent/JP2010262404A/en
Application granted granted Critical
Publication of JP5417972B2 publication Critical patent/JP5417972B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Processing (AREA)

Description

本発明は、遺伝的処理装置、遺伝的処理方法、および遺伝的処理プログラムに関する。   The present invention relates to a genetic processing apparatus, a genetic processing method, and a genetic processing program.

遺伝的アルゴリズムまたは遺伝的プログラミングといった進化的計算を用いた画像フィルタの生成方法が知られている。この方法は、画像フィルタに対して、交叉、突然変異および選択等の操作を複数回繰り返すことにより、新たな画像フィルタを生成していく。このような生成方法によれば、それぞれの事例に対して最適であって、解析的に得ることが困難な複雑な構造の画像フィルタを、より少ない労力で設計することができる。   Methods for generating image filters using evolutionary computation such as genetic algorithms or genetic programming are known. In this method, a new image filter is generated by repeating operations such as crossover, mutation, and selection for an image filter a plurality of times. According to such a generation method, an image filter having a complicated structure that is optimal for each case and is difficult to obtain analytically can be designed with less effort.

前薗正宜 他2名、「遺伝的アルゴリズムによる画像フィルタ設計の研究」、[online]、コンピュータ利用教育協議会、[2008年3月20日検索]、インターネット<URL:http://www.ciec.or.jp/event/2003/papers/pdf/E00086.pdf>Masayoshi Maebuchi and two others, “Study on Image Filter Design Using Genetic Algorithm” [online], Computer Utilization Education Council, [March 20, 2008 search], Internet <URL: http: //www.ciec. or.jp/event/2003/papers/pdf/E00086.pdf>

ところで、このように進化的計算により変換器を生成する場合、目的の変換器が得られるまでに世代交代を繰り返す。各世代においては、変換対象データを複数の変換器のそれぞれにより変換して複数の出力データを生成し、出力データと目標データとを比較する。そして、より目標データと適合した出力データが得られる変換器を選択して、次世代へ生存させる。以上のようにして進化させる変換器は、より優秀な変換器を初期世代として選択することが望ましい。   By the way, when the converter is generated by the evolutionary calculation as described above, the generation change is repeated until the target converter is obtained. In each generation, conversion target data is converted by each of a plurality of converters to generate a plurality of output data, and the output data and target data are compared. Then, a converter that can obtain output data more suitable for the target data is selected to survive to the next generation. It is desirable to select a more excellent converter as the initial generation for the converter to be evolved as described above.

そこで本発明は、上記の課題を解決することのできる遺伝的処理装置、遺伝的処理方法、および遺伝的処理プログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。   Therefore, an object of the present invention is to provide a genetic processing apparatus, a genetic processing method, and a genetic processing program that can solve the above-described problems. This object is achieved by a combination of features described in the independent claims. The dependent claims define further advantageous specific examples of the present invention.

上記課題を解決するために、本発明の第1の態様においては、入力データを処理して処理結果を出力データとして出力する処理部品を組み合わせた変換器を少なくとも1つ含む変換器群を遺伝的処理により進化させて、与えられた対象データを目標データにより近いデータに変換する適応済変換器を生成する生成部と、新たな対象データおよび新たな目標データの組を受け取ったことに応じて、既に生成された前記適応済変換器のうち、前記新たな対象データを変換したデータと前記新たな目標データとの近似度が基準以上となる前記適応済変換器を選択する選択部と、前記選択部が選択した前記適応済変換器を少なくとも1つの前記変換器として含む変換器群を前記生成部に供給して遺伝的処理により進化させて、前記新たな対象データを前記新たな目標データにより近いデータに変換する新たな適応済変換器を生成させる供給部と、を備える遺伝的処理装置、並びに当該遺伝的処理装置に関する遺伝的処理方法、および遺伝的処理プログラムを提供する。   In order to solve the above-described problem, in the first aspect of the present invention, a group of converters including at least one converter combined with a processing component that processes input data and outputs a processing result as output data is genetically set. In response to receiving a set of a new target data and a new target data, a generation unit that generates an adapted converter that evolves through processing and converts the given target data into data closer to the target data, A selection unit that selects, from among the already-adapted converters that have already been generated, the adapted converter whose degree of approximation between the data obtained by converting the new target data and the new target data is greater than or equal to a reference; A converter group including the adapted converter selected by the unit as at least one converter is supplied to the generation unit and evolved by genetic processing, and the new target data is A genetic processing device including a supply unit that generates a new adapted converter that converts data closer to new target data, and a genetic processing method and a genetic processing program related to the genetic processing device To do.

なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。   It should be noted that the above summary of the invention does not enumerate all the necessary features of the present invention. In addition, a sub-combination of these feature groups can also be an invention.

本実施形態に係る遺伝的処理装置10の構成を示す。1 shows a configuration of a genetic processing apparatus 10 according to the present embodiment. 本実施形態に係る処理部品22を直列に組み合わせた変換器20の一例を示す。An example of the converter 20 which combined the processing component 22 which concerns on this embodiment in series is shown. 本実施形態に係る処理部品22を木構造に組み合わせた変換器20の一例を示す。An example of the converter 20 which combined the processing component 22 which concerns on this embodiment with the tree structure is shown. 本実施形態に係る処理部品22を直列に組み合わせた変換器20に対して行われる遺伝的な操作の一例を示す。An example of a genetic operation performed on the converter 20 in which the processing components 22 according to this embodiment are combined in series is shown. 本実施形態に係る処理部品22を木構造に組み合わせた変換器20に対して行われる交叉操作の一例を示す。An example of crossover operation performed with respect to the converter 20 which combined the process component 22 which concerns on this embodiment with the tree structure is shown. 本実施形態に係る処理部品22を木構造に組み合わせた変換器20に対して行われる突然変異操作の一例を示す。An example of the mutation operation performed with respect to the converter 20 which combined the processing component 22 which concerns on this embodiment with the tree structure is shown. 本実施形態に係る変換器20の適合度を表わすパラメータの一例である近似度の算出方法の一例を示す。An example of a method for calculating the degree of approximation, which is an example of a parameter representing the degree of fitness of the converter 20 according to the present embodiment, is shown. 本実施形態に係る遺伝的処理装置10の動作フローの一例を示す。An example of the operation | movement flow of the genetic processing apparatus 10 which concerns on this embodiment is shown. 図8のステップS840における遺伝的処理装置10の処理フローの一例を示す。An example of the processing flow of the genetic processing apparatus 10 in step S840 of FIG. 8 is shown. 図8のステップS855における生成部120の処理フローの一例を示す。An example of the processing flow of the generation unit 120 in step S855 of FIG. 8 is shown. 本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。2 shows an exemplary hardware configuration of a computer 1900 according to the present embodiment.

以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。   Hereinafter, the present invention will be described through embodiments of the invention, but the following embodiments do not limit the invention according to the claims. In addition, not all the combinations of features described in the embodiments are essential for the solving means of the invention.

図1は、本実施形態に係る遺伝的処理装置10の構成を示す。遺伝的処理装置10は、対象データを目標データへと変換するのに適した変換器を、既に生成した他の変換器を元に遺伝的処理により進化させて生成する。遺伝的処理装置10は、選択部100と、供給部110と、生成部120と、変換器格納部130とを備える。変換器格納部130は、入力データを処理して処理結果を出力データとして出力する処理部品を含む遺伝的処理装置10によって既に生成された適応済変換器20a、および初期の変換器20としてランダムに生成した変換器20bを少なくとも1つ含む変換器群1300を格納する。   FIG. 1 shows a configuration of a genetic processing apparatus 10 according to the present embodiment. The genetic processing apparatus 10 generates a converter suitable for converting target data into target data by evolving by genetic processing based on other already generated converters. The genetic processing apparatus 10 includes a selection unit 100, a supply unit 110, a generation unit 120, and a converter storage unit 130. The converter storage unit 130 processes the input data and outputs a processing result as output data, and the adaptive converter 20a already generated by the genetic processing device 10 including the processing component and the initial converter 20 are randomly selected. A converter group 1300 including at least one generated converter 20b is stored.

選択部100は、外部の装置から入力されたデータ、または遺伝的処理装置10内に設けられた若しくは遺伝的処理装置10に装着された記録媒体に格納されたデータを、学習用の対象データおよび目標データとして取得する。この学習用の対象データおよび目標データは、実応用(実際の応用又は事例)に用いる変換器20を遺伝的処理により生成する場合の、変換器20の入出力の目標値として用いられる。選択部100は、新たな対象データおよび新たな目標データの組を受け取ったことに応じて、過去に他の対象データおよび他の目標データの組を受取ったことに応じて既に生成された適応済変換器20aのうち、新たな対象データを変換したデータと新たな目標データとの近似度が基準以上となる1または複数の適応済変換器20aを選択する。   The selection unit 100 converts data input from an external device, or data stored in a recording medium provided in the genetic processing device 10 or attached to the genetic processing device 10, and target data for learning and Obtain as target data. The learning target data and target data are used as input / output target values of the converter 20 when the converter 20 used for actual application (actual application or case) is generated by genetic processing. In response to receiving a new set of target data and a new target data, the selection unit 100 has already been adapted in response to receiving a set of other target data and another target data in the past. Among the converters 20a, one or a plurality of adapted converters 20a whose approximation degree between the data obtained by converting the new target data and the new target data is equal to or higher than the reference are selected.

これに代えて、選択部100は、新たな目標データとの近似度が基準以上となる複数の適応済変換器20aから近似度がより大きい適応済変換器20aを選択してもよい。ここで、選択部100は、予め遺伝的処理装置10が設定した近似度、または選択部100が処理した少なくとも1つの変換データと目標データとの近似度の平均値を基準値としてもよい。   Instead of this, the selection unit 100 may select an adapted converter 20a having a larger degree of approximation from a plurality of adapted converters 20a whose degree of approximation with new target data is greater than or equal to a reference. Here, the selection unit 100 may use, as a reference value, the degree of approximation set in advance by the genetic processing device 10 or the average value of the degree of approximation between at least one conversion data processed by the selection unit 100 and target data.

供給部110は、選択部100が選択した適応済変換器20aを少なくとも1つの変換器20bとして含む変換器群1300を生成部120に供給する。供給部110は、一例として、選択部100が選択した適応済変換器20aと、他の変換器20bとを含む変換器群1300を、新たな適応済変換器20aを生成するべく遺伝的処理により進化させる初期の変換器群1300として変換器格納部130から取得して、生成部120に供給する。そして、供給部110は、変換器群1300を遺伝的処理により進化させて、新たな対象データを新たな目標データにより近いデータに変換する新たな適応済変換器20aを生成させる。   The supply unit 110 supplies the generation unit 120 with a converter group 1300 including the adapted converter 20a selected by the selection unit 100 as at least one converter 20b. As an example, the supply unit 110 converts the converter group 1300 including the adapted converter 20a selected by the selection unit 100 and the other converter 20b by genetic processing to generate a new adapted converter 20a. The initial converter group 1300 to be evolved is acquired from the converter storage unit 130 and supplied to the generation unit 120. Then, the supply unit 110 evolves the converter group 1300 by genetic processing to generate a new adapted converter 20a that converts new target data into data closer to the new target data.

生成部120は、供給部110から供給された変換器群1300を遺伝的処理により進化させて、与えられた対象データを目標データにより近いデータに変換する適応済変換器20aを生成する。これによって、遺伝的処理装置10は、既に生成された適応済みの変換器20aを元に、新たな対象データを目標データにより近い変換データへ変換できる適応済変換器20aを生成できる。   The generation unit 120 evolves the converter group 1300 supplied from the supply unit 110 by genetic processing, and generates an adapted converter 20a that converts the given target data into data closer to the target data. As a result, the genetic processing apparatus 10 can generate an adapted converter 20a that can convert new target data into converted data closer to the target data based on the already-adapted converter 20a.

図2は、本実施形態に係る処理部品22を直列に組み合わせた変換器20の一例を示す。図3は、本実施形態に係る処理部品22を木構造に組み合わせた変換器20の一例を示す。   FIG. 2 shows an example of the converter 20 in which the processing components 22 according to this embodiment are combined in series. FIG. 3 shows an example of the converter 20 in which the processing component 22 according to this embodiment is combined in a tree structure.

変換器20は、受け取った入力データに対して演算処理を施して、出力データを出力する。変換器20は、一例として、入力データに対して演算を施すプログラムにより実行される。また、変換器20は、入力データに対して施すべき演算内容を表わす演算式であってもよい。さらに、変換器20は、複数の処理部品22を組み合わせた構成を有する。変換器20は、図2に示されるように、処理部品22を直列に組み合わせた構成を有してよい。また、変換器20は、図3に示されるように、処理部品22を木構造に組み合わせた構成を有してよい。   The converter 20 performs arithmetic processing on the received input data and outputs output data. As an example, the converter 20 is executed by a program that performs operations on input data. Further, the converter 20 may be an arithmetic expression representing the content of the operation to be performed on the input data. Furthermore, the converter 20 has a configuration in which a plurality of processing components 22 are combined. The converter 20 may have a configuration in which processing components 22 are combined in series as shown in FIG. Moreover, the converter 20 may have the structure which combined the process component 22 with the tree structure, as FIG. 3 shows.

なお、処理部品22が木構造に組み合わされた構成の変換器20は、木構造の末端(最下位)の処理部品22のそれぞれに、同一の入力データが与えられ、木構造の最上位の処理部品22から出力データを出力する。これに代えて、このような変換器20は、複数の末端の処理部品22のそれぞれに互いに異なる入力データが与えられてもよい。   Note that the converter 20 having a configuration in which the processing components 22 are combined in a tree structure is given the same input data to each of the end (lowest) processing components 22 of the tree structure, and the highest processing in the tree structure. Output data is output from the component 22. Alternatively, such a converter 20 may be provided with different input data for each of the plurality of terminal processing components 22.

それぞれの変換器20は、入力画像を出力画像にそれぞれ変換する複数のフィルタ部品を組み合わせた画像フィルタであってよい。各処理部品22は、前段に配置された処理部品22から出力された画像データを受け取り、受け取った画像データに演算を施して後段に配置された処理部品22に与えるフィルタ部品であってよい。生成部120は、一例として、供給部110によって与えられた対象画像を目標画像により近い画像に変換する適応済画像フィルタを生成する。   Each converter 20 may be an image filter in which a plurality of filter components that respectively convert an input image into an output image are combined. Each processing component 22 may be a filter component that receives the image data output from the processing component 22 arranged in the preceding stage, performs an operation on the received image data, and applies the processed image data to the processing component 22 arranged in the subsequent stage. For example, the generation unit 120 generates an adapted image filter that converts the target image given by the supply unit 110 into an image closer to the target image.

ここで、選択部100は、遺伝的処理装置10によってすでに生成された画像フィルタのうち、少なくとも一部の画像領域について、新たな対象画像を変換した画像と新たな目標画像との近似度が基準以上となる適応済画像フィルタを選択してもよい。選択部100は、一例として、ユーザが選択した領域に基づいて変換した画像に対して、新たな目標画像との近似度が基準以上となる変換器20を選択する。これに代えて、選択部100は、予め設定したまたは複数の選択領域に基づいて変換した画像に対して、新たな目標画像との近似度が基準以上となる変換器20を選択してもよい。   Here, the selection unit 100 uses, as a reference, the degree of approximation between an image obtained by converting a new target image and a new target image in at least a part of the image filter already generated by the genetic processing device 10. You may select the adapted image filter used as the above. As an example, the selection unit 100 selects the converter 20 whose degree of approximation with the new target image is greater than or equal to the reference for the image converted based on the region selected by the user. Instead of this, the selection unit 100 may select the converter 20 whose degree of approximation with a new target image is greater than or equal to a reference with respect to an image that is set in advance or converted based on a plurality of selection regions. .

また、変換器20は、一例として、ハードウェアである処理部品22を組み合わせた構成であってよい。この場合、変換器格納部130は、変換器を表すデータ構造として、各処理部品間のデータ授受関係を示す構成データを記憶する。また、変換器20は、データに対して演算を施すプログラムである処理部品22を組み合わせた構成であってもよい。また、変換器20は、データに対して施すべき演算内容を表わす演算式である処理部品22を組み合わせた構成であってもよい。   Moreover, the converter 20 may be the structure which combined the processing component 22 which is hardware as an example. In this case, the converter storage unit 130 stores configuration data indicating a data transfer relationship between the processing components as a data structure representing the converter. The converter 20 may have a configuration in which processing components 22 that are programs for performing operations on data are combined. Further, the converter 20 may have a configuration in which processing components 22 that are arithmetic expressions representing arithmetic contents to be applied to data are combined.

また、変換器20は、例えば、1次元データ列、2次元データ群、3次元データ群、又は、更に多次元のデータ群等を変換してもよい。1次元データ列は、例えば、時系列データ又は配列状のデータ列等である。2次元データ群は、例えば、複数の画素データ等が2次元空間に配列された画像データ等である。3次元データ群は、例えば、色又は濃度等を表わすデータ値が3次元空間の各格子点に配置されたボリュームデータ等である。また、変換器20は、入力されたデータと異なる次元のデータを出力してもよい。   Further, the converter 20 may convert, for example, a one-dimensional data string, a two-dimensional data group, a three-dimensional data group, or a further multidimensional data group. The one-dimensional data string is, for example, time series data or an array data string. The two-dimensional data group is, for example, image data in which a plurality of pixel data is arranged in a two-dimensional space. The three-dimensional data group is, for example, volume data in which data values representing color or density are arranged at each lattice point in the three-dimensional space. Further, the converter 20 may output data having a dimension different from the input data.

複数の処理部品22のそれぞれは、前段に配置された処理部品22から出力された入力データを受け取り、受け取った入力データに演算を施して後段に配置された処理部品22に与える。複数の処理部品22のそれぞれは、プログラムモジュールおよび演算式等であってよく、受け取った入力データに対して2値化演算、ヒストグラム演算、平滑化演算、エッジ検出演算、モルフォロジ演算、及び/または周波数空間での演算(例えば、ローパスフィルタリング演算およびハイパスフィルタリング演算)等の単項演算を施してもよい。   Each of the plurality of processing components 22 receives input data output from the processing component 22 arranged in the previous stage, performs an operation on the received input data, and gives the processed data to the processing component 22 arranged in the subsequent stage. Each of the plurality of processing components 22 may be a program module, an arithmetic expression, or the like, and performs binarization operation, histogram operation, smoothing operation, edge detection operation, morphology operation, and / or frequency with respect to received input data. Unary operations such as space operations (for example, low-pass filtering operations and high-pass filtering operations) may be performed.

また、複数の処理部品22のそれぞれは、受け取った入力データに対して平均演算、差分演算及び/またはファジー演算(例えば論理和演算、論理積演算、代数和、代数積、限界和、限界積、激烈和および激烈積等)等の二項演算を施してもよい。   Each of the plurality of processing components 22 performs an average operation, a difference operation, and / or a fuzzy operation (for example, an OR operation, an AND operation, an algebraic sum, an algebraic product, a limit sum, a limit product, Binomial operations such as intense sum and intense product) may be performed.

図4は、本実施形態に係る処理部品22を直列に組み合わせた変換器20に対して行われる遺伝的な操作の一例を示す。図5は、本実施形態に係る処理部品22を木構造に組み合わせた変換器20に対して行われる交叉操作の一例を示す。図6は、本実施形態に係る処理部品22を木構造に組み合わせた変換器20に対して行われる突然変異操作の一例を示す。   FIG. 4 shows an example of a genetic operation performed on the converter 20 in which the processing components 22 according to this embodiment are combined in series. FIG. 5 shows an example of a crossover operation performed on the converter 20 in which the processing components 22 according to the present embodiment are combined in a tree structure. FIG. 6 shows an example of a mutation operation performed on the converter 20 in which the processing component 22 according to the present embodiment is combined in a tree structure.

生成部120は、一例として、2個またはそれ以上の変換器20に対して、遺伝的な操作の一例である交叉操作を行って新たな2個またはそれ以上の変換器20を生成する。生成部120は、一例として、図4および図5に示されるように、既に生成された少なくとも1つの一の変換器20Aの一部の処理部品群24Aを、既に生成された他の変換器20Bの少なくとも一部の処理部品群24Bと置換して、新たな変換器20Eおよび20Fを生成する。なお、処理部品群24は、1または複数の処理部品22を組み合わせた部材であってもよい。   For example, the generation unit 120 performs a crossover operation, which is an example of a genetic operation, on two or more converters 20 to generate two or more new converters 20. As an example, as illustrated in FIG. 4 and FIG. 5, the generation unit 120 converts a part of the processing component group 24A of at least one converter 20A that has already been generated into another converter 20B that has already been generated. Are replaced with at least a part of the processing component group 24B to generate new converters 20E and 20F. The processing component group 24 may be a member in which one or a plurality of processing components 22 are combined.

また、生成部120は、一例として、一の変換器20に対して、遺伝的な操作の一例である突然変異操作を行って新たな一の変換器20を生成する。生成部120は、一例として、図4および図6に示されるように、既に生成された一の変換器20Cの一部の処理部品群24Cを、ランダムに選択された他の処理部品群24Gに置換して、新たな変換器20Gを生成する。   Further, as an example, the generation unit 120 performs a mutation operation, which is an example of a genetic operation, on a single converter 20 to generate a new single converter 20. As an example, as illustrated in FIGS. 4 and 6, the generation unit 120 converts a part of the processing component group 24 </ b> C of the already generated one converter 20 </ b> C to another processing component group 24 </ b> G selected at random. A new converter 20G is generated by replacement.

また、生成部120は、現世代の変換器20をそのまま次世代の変換器20として残してもよい。生成部120は、一例として、図4に示されるように、変換器20Dの処理部品22の構成をそのまま含む次世代の変換器20Hを生成する。   The generation unit 120 may leave the current-generation converter 20 as the next-generation converter 20 as it is. For example, as illustrated in FIG. 4, the generation unit 120 generates a next-generation converter 20H that includes the configuration of the processing component 22 of the converter 20D as it is.

生成部120は、生成部120により生成された複数の変換器20に対して生物の自然淘汰をモデル化した手法により1または複数の変換器20を選択する。生成部120は、複数の変換器20の中の適合度がより高い変換器20を優先的に選択してもよい。生成部120は、一例として、複数の変換器20のそれぞれの適合度に基づき、エリート選択およびルーレット選択といった手法に応じて、変換器20を選択してよい。そして、生成部120は、選択した変換器20を次世代へ生存させるべく当該変換器20を変換器格納部130内に保存し、選択されなかった変換器20を死滅させるべく変換器格納部130内から削除する。   The generation unit 120 selects one or a plurality of converters 20 by a technique in which a natural selection of a living organism is modeled with respect to the plurality of converters 20 generated by the generation unit 120. The generation unit 120 may preferentially select the converter 20 having a higher matching degree among the plurality of converters 20. For example, the generation unit 120 may select the converter 20 according to a technique such as elite selection and roulette selection based on the degree of fitness of each of the plurality of converters 20. Then, the generation unit 120 stores the converter 20 in the converter storage unit 130 in order to make the selected converter 20 survive to the next generation, and the converter storage unit 130 in order to kill the unselected converter 20. Delete from within.

図7は、本実施形態に係る変換器20の適合度を表わすパラメータの一例である近似度の算出方法の一例を示す。本実施形態において、生成部120は、当該変換器20により対象データを変換させることにより生成された出力データと、目標データとがどれだけ近似しているかを表わす近似度を算出する。すなわち、この近似度は、値がより大きいほど、当該出力データが目標データにより近似しているので、当該出力データを生成した変換器20がより適切であることを示す指標となる。   FIG. 7 shows an example of a method for calculating the degree of approximation, which is an example of a parameter representing the degree of fitness of the converter 20 according to this embodiment. In the present embodiment, the generation unit 120 calculates the degree of approximation representing how much the output data generated by converting the target data by the converter 20 and the target data are approximate. That is, the degree of approximation is an index indicating that the larger the value is, the closer the output data is to the target data, and thus the converter 20 that generated the output data is more appropriate.

生成部120は、一例として、出力画像の各ピクセルの値と、目標画像の対応するピクセルの値とを比較する。より具体的には、生成部120は、一例として、出力画像の各ピクセルの値と、目標画像の対応するピクセルの値との差または比率等を算出する。そして、生成部120は、一例として、複数のピクセルの全ての比較結果を平均または合計し、平均または合計した比較結果を当該出力画像の近似度としてよい。生成部120は、複数の変換器20により変換された複数の出力データのそれぞれに対して、以上のようにして近似度を求める。   For example, the generation unit 120 compares the value of each pixel of the output image with the value of the corresponding pixel of the target image. More specifically, for example, the generation unit 120 calculates a difference or a ratio between the value of each pixel of the output image and the value of the corresponding pixel of the target image. Then, as an example, the generation unit 120 may average or sum all the comparison results of the plurality of pixels, and may use the average or summed comparison result as the degree of approximation of the output image. The generation unit 120 obtains the degree of approximation for each of the plurality of output data converted by the plurality of converters 20 as described above.

この処理において、生成部120は、各ピクセルの値(例えば輝度値)によって当該ピクセル位置の重みを表わす重み画像を用いて近似度を求めてよい。具体的には、生成部120は、出力画像の各ピクセルの値と目標画像の対応するピクセルの値との差に、重み画像における対応するピクセルの重み値を乗じる等により、重みを付けて近似度を算出してよい。   In this process, the generation unit 120 may obtain the degree of approximation using a weight image that represents the weight of the pixel position by the value of each pixel (for example, the luminance value). Specifically, the generation unit 120 approximates the weighted image by multiplying the difference between the value of each pixel in the output image and the value of the corresponding pixel in the target image by the weight value of the corresponding pixel in the weighted image. The degree may be calculated.

例えば、重みデータが重み画像により表わされている場合、生成部120は、下記式(1)に示される演算をして、近似度を算出する。なお、この場合において、一例として、出力画像、目標画像および重み画像のサイズは、同一とされる。   For example, when the weight data is represented by a weight image, the generation unit 120 calculates the degree of approximation by performing an operation represented by the following formula (1). In this case, as an example, the output image, the target image, and the weight image have the same size.

Figure 0005417972
Figure 0005417972

式(1)において、fは、近似度を表わす。Ymaxは、輝度の最大値を表わす。   In Expression (1), f represents the degree of approximation. Ymax represents the maximum luminance value.

また、xは、画像の水平方向のピクセル位置を示す変数である。yは、画像の垂直方向のピクセル位置を示す変数である。xmaxは、画像の水平方向のピクセル数を示す定数である。tymaxは、画像の垂直方向のピクセル数を示す定数である。   X is a variable indicating the pixel position in the horizontal direction of the image. y is a variable indicating the pixel position in the vertical direction of the image. xmax is a constant indicating the number of pixels in the horizontal direction of the image. tymax is a constant indicating the number of pixels in the vertical direction of the image.

Iweiht(x,y)は、重み画像における(x,y)位置のピクセルの輝度値を表わす。Itarget(x,y)は、目標画像における(x,y)位置のピクセルの輝度値を表わす。Ifilter(x,y)は、出力画像における(x,y)位置のピクセルの輝度値を表わす。   Iweight (x, y) represents the luminance value of the pixel at the (x, y) position in the weighted image. Itarget (x, y) represents the luminance value of the pixel at the (x, y) position in the target image. Ifilter (x, y) represents the luminance value of the pixel at the (x, y) position in the output image.

すなわち、式(1)の中カッコ内の分子部分に示されるように、生成部120は、目標画像の輝度値から出力画像の輝度値の差の絶対値に対して、重み画像の輝度値を乗じた重み付き差分値を、画面内の全てのピクセル毎に算出し、算出した重み付き差分値を全ピクセルについて合計した合計重み付け差分値を算出する。さらに、式(1)の中カッコ内の分母部分に示されるように、生成部120は、重み画像の輝度値を全ピクセルについて合計した合計重みを算出する。   That is, as shown in the numerator part in the curly braces of Expression (1), the generation unit 120 calculates the luminance value of the weighted image with respect to the absolute value of the difference between the luminance value of the target image and the luminance value of the output image. The multiplied weighted difference value is calculated for every pixel in the screen, and a total weighted difference value is calculated by adding the calculated weighted difference values for all pixels. Further, as indicated by the denominator part in the curly braces of Expression (1), the generation unit 120 calculates a total weight obtained by adding the luminance values of the weighted image for all pixels.

さらに、生成部120は、合計重み付け差分値を合計重みで除算した除算値(式(1)の中カッコ内)に、輝度値の最大値の逆数(1/Ymax)を乗じて正規化値(式(1)の2番目の項)を算出する。そして、生成部120は、1から、正規化値を減じた値を、近似度fとして算出する。このようにして、生成部120は、出力画像と目標画像との差分を領域毎に重み付けして近似度を算出することができる。   Further, the generation unit 120 multiplies the division value (in the curly braces of the expression (1)) obtained by dividing the total weighted difference value by the total weight by a reciprocal (1 / Ymax) of the maximum value of the luminance value to obtain a normalized value ( The second term of the formula (1) is calculated. Then, the generation unit 120 calculates a value obtained by subtracting the normalized value from 1 as the degree of approximation f. In this way, the generation unit 120 can calculate the degree of approximation by weighting the difference between the output image and the target image for each region.

なお、生成部120は、近似度に加え、処理部品の数の少なさ、処理負荷の低さ、並列度の大きさ等に応じて評価を高めた適合度を算出して、適合度に応じて変換器20を選択してもよい。   In addition to the approximation, the generation unit 120 calculates a goodness of fit based on a small number of processing components, a low processing load, a degree of parallelism, and the like. The converter 20 may be selected.

図8は、本実施形態に係る遺伝的処理装置10の動作フローの一例を示す。選択部100は、ステップS805〜ステップS810の各処理を、複数回繰返して実行する(S800、S815)。   FIG. 8 shows an example of an operation flow of the genetic processing apparatus 10 according to the present embodiment. The selection unit 100 repeatedly executes the processes in steps S805 to S810 a plurality of times (S800, S815).

選択部100は、既に生成された適応済変換器20aおよび他の変換器20bを含む変換器群1300から、変換器20毎に対象データを変換する(S805)。そして、選択部100は、ステップS805で変換した出力データと目標データとの近似度を算出して、他の出力データとの近似度と比較する(S810)。選択部100は、近似度が基準値以上の変換器20を、ステップS830からS860までの遺伝的処理における初期の変換器群1300として設定する(S820)。   The selection unit 100 converts target data for each converter 20 from the converter group 1300 including the already-applied applied converter 20a and the other converter 20b (S805). Then, the selection unit 100 calculates the degree of approximation between the output data converted in step S805 and the target data, and compares it with the degree of approximation with other output data (S810). The selection unit 100 sets the converters 20 having an approximation degree equal to or higher than the reference value as the initial converter group 1300 in the genetic processing from step S830 to S860 (S820).

生成部120は、初期の変換器群1300を取得して(S825)、ステップS835〜ステップS855の各処理を、複数回(例えば複数世代)繰返して実行する(S830、S860)。まず、生成部120は、変換器群1300内に含まれる複数の変換器20のそれぞれにより、変換対象データを変換して出力データを生成する(S835)。   The generation unit 120 acquires the initial converter group 1300 (S825), and repeatedly executes each process of step S835 to step S855 multiple times (for example, multiple generations) (S830, S860). First, the generation unit 120 converts the conversion target data by each of the plurality of converters 20 included in the converter group 1300 to generate output data (S835).

生成部120は、複数の出力データのそれぞれと目標データとの近似度を算出する。そして、生成部120は、近似度がより高い出力データに対応する1または複数の変換器20を選択する(S840)。なお、生成部120は、一例として、最後の世代においては、近似度の最も高い1個の出力データに対応する1個の変換器20を選択してよい。   The generation unit 120 calculates the degree of approximation between each of the plurality of output data and the target data. Then, the generation unit 120 selects one or a plurality of converters 20 corresponding to output data having a higher degree of approximation (S840). As an example, the generation unit 120 may select one converter 20 corresponding to one output data with the highest degree of approximation in the last generation.

生成部120は、ステップS840において選択された1または複数の変換器20を次世代に残存させて、ステップS840において選択されなかった変換器20を削除する(S845)。生成部120は、残存した1または複数の変換器20に対して、交叉操作および突然変異操作等の遺伝的な操作を行って、少なくとも一部の処理部品22を他の処理部品22に置換した新たな少なくとも1つの変換器20を生成する(S850)。   The generation unit 120 causes the one or more converters 20 selected in step S840 to remain in the next generation, and deletes the converters 20 not selected in step S840 (S845). The generation unit 120 performs genetic operations such as a crossover operation and a mutation operation on the remaining one or more transducers 20 and replaces at least some of the processing components 22 with other processing components 22. A new at least one converter 20 is generated (S850).

生成部120は、残存した複数の適応済変換器20および新たに生成した複数の適応済変換器20を、変換器群1300内に含めるように変換器格納部130の内容を更新する。なお、生成部120は、最後の世代においては、当該処理を実行しなくてよい。生成部120は、世代毎に適切な重みデータを生成するべく、次世代用の新たな重みデータを生成する(S855)。重みデータの生成処理についての詳細については後述する。   The generation unit 120 updates the contents of the converter storage unit 130 so that the plurality of remaining adapted converters 20 and the newly generated plurality of adapted converters 20 are included in the converter group 1300. Note that the generation unit 120 does not have to execute the process in the last generation. The generation unit 120 generates new weight data for the next generation in order to generate appropriate weight data for each generation (S855). Details of the weight data generation processing will be described later.

遺伝的処理装置10は、以上の処理を複数の世代(例えば数十世代または数百世代以上)繰返して実行して、最後の世代(第N世代(Nは2以上の整数))まで処理を実行した後に、当該フローを抜ける(S860)。このようにして、遺伝的処理装置10は、出力データを目標データへの変換に適した変換器20を、進化的計算を用いて生成することができる。   The genetic processing apparatus 10 repeatedly executes the above processing for a plurality of generations (for example, tens of generations or hundreds of generations or more), and performs the processing up to the last generation (Nth generation (N is an integer of 2 or more)). After the execution, the flow is exited (S860). In this way, the genetic processing device 10 can generate the converter 20 suitable for converting the output data into the target data using the evolutionary calculation.

図9は、図8のステップS840における遺伝的処理装置10の処理フローの一例を示す。遺伝的処理装置10は、図8に示されるステップS840において、以下の処理を実行する。   FIG. 9 shows an example of the processing flow of the genetic processing apparatus 10 in step S840 of FIG. The genetic processing apparatus 10 executes the following processing in step S840 shown in FIG.

まず、生成部120は、現世代の複数の変換器20のそれぞれにより生成された複数の出力データのそれぞれ毎に、以下のステップS122の処理を実行する(S121、S123)。ステップS122において、生成部120は、当該出力データと目標データとを重みデータに応じた重み付けをした比較をして、当該出力データと目標データとの近似度を算出する。生成部120は、複数の出力データの全てについて処理を終えると、処理をステップS124に進める(S123)。   First, the generation unit 120 executes the following processing in step S122 for each of a plurality of output data generated by each of the plurality of converters 20 of the current generation (S121, S123). In step S122, the generation unit 120 compares the output data with the target data by weighting according to the weight data, and calculates the degree of approximation between the output data and the target data. When the generation unit 120 finishes the process for all of the plurality of output data, the process proceeds to step S124 (S123).

生成部120は、複数の出力データのそれぞれの近似度に基づき、複数の出力データの中から目標データにより近い出力データを選択する(S124)。ここで、生成部120は、近似度を選択する基準として複数の出力データに応じて相対的に定めた基準、すなわち例えば、上からN番目の近似度以上等を用いてよい。これに代えて、生成部120は、予め設定した近似度の閾値以上であることを基準としてもよい。また、生成部120は、近似度がより高い出力データがより高い確率で選択されるという条件の下で、ランダムに出力データを選択してもよい。   The generation unit 120 selects output data closer to the target data from among the plurality of output data based on the respective approximation degrees of the plurality of output data (S124). Here, the generation unit 120 may use, as a criterion for selecting the degree of approximation, a criterion that is relatively determined according to a plurality of output data, that is, for example, the Nth approximation from the top or higher. Instead of this, the generation unit 120 may be based on being equal to or higher than a preset threshold value of the approximation degree. Further, the generation unit 120 may select output data randomly under a condition that output data having a higher degree of approximation is selected with a higher probability.

続いて、生成部120は、ステップS124にて選択された出力データを生成する変換器20を、出力データを目標データにより近似するデータに変換する変換器20として選択する(S125)。このステップS125の処理を終えると、遺伝的処理装置10は、当該フローを終了する。   Subsequently, the generation unit 120 selects the converter 20 that generates the output data selected in step S124 as the converter 20 that converts the output data into data that approximates the target data (S125). When the process of step S125 is completed, the genetic processing apparatus 10 ends the flow.

図10は、図8のステップS855における生成部120の処理フローの一例を示す。生成部120は、図8に示されたステップS855における重みデータの生成処理において、以下のステップS131〜S133の処理を実行する。まず、生成部120は、重みデータ生成用として、変換器20が出力した出力データおよび目標データのうちの、少なくとも一組のデータを抽出する(S131)。   FIG. 10 shows an example of the processing flow of the generation unit 120 in step S855 of FIG. The generation unit 120 performs the following steps S131 to S133 in the weight data generation processing in step S855 shown in FIG. First, the generating unit 120 extracts at least one set of output data and target data output from the converter 20 for weight data generation (S131).

続いて、生成部120は、ステップS131において重みデータ生成用として抽出された少なくとも一組のデータ同士の、データ毎の差分を算出する(S132)。生成部120は、抽出されたデータの組における、対応する位置同士のデータの差分を算出する。例えば、生成部120は、抽出されたデータの組が3次元データ群であれば、互いに対応する格子点同士のデータの差分を算出する。また、生成部120は、2つのデータの減算結果の絶対値を、差分として算出してもよい。   Subsequently, the generation unit 120 calculates a difference for each data between at least one set of data extracted for weight data generation in step S131 (S132). The generation unit 120 calculates a data difference between corresponding positions in the extracted data set. For example, if the extracted data set is a three-dimensional data group, the generation unit 120 calculates a data difference between lattice points corresponding to each other. The generation unit 120 may calculate the absolute value of the subtraction result of the two data as a difference.

また、生成部120は、ステップS131において複数組のデータを抽出した場合には、例えば、複数組のデータの差分をデータ毎に(例えば、3次元データ群であれば格子点毎に)、合計又は平均する。これに代えて、生成部120は、複数組のデータの差分のうち最も大きい1個の差分を、データ毎に選択してもよい。   When the generation unit 120 extracts a plurality of sets of data in step S131, for example, the difference between the plurality of sets of data is summed for each data (for example, for each grid point in the case of a three-dimensional data group). Or average. Instead of this, the generation unit 120 may select, for each data, the largest difference among the differences between the plurality of sets of data.

続いて、生成部120は、ステップS132において算出されたデータ毎の差分に基づき、次世代用の重みデータを生成する(S133)。より具体的には、生成部120は、差分がより大きいデータの重みを差分がより小さいデータの重みより大きくするような次世代の重みデータを生成する。なお、生成部120は、最初の世代においては、使用者により予め生成された重みデータを記憶してもよい。また、生成部120は、データ毎の重みが同一とされた重みデータを記憶してもよい。   Subsequently, the generation unit 120 generates weight data for the next generation based on the difference for each data calculated in step S132 (S133). More specifically, the generation unit 120 generates next-generation weight data that makes the weight of data with a larger difference larger than the weight of data with a smaller difference. Note that the generation unit 120 may store weight data generated in advance by the user in the first generation. Further, the generation unit 120 may store weight data in which the weight for each data is the same.

ここで、このような処理を行う場合、生成部120は、ステップS131において、現世代以前の少なくとも1つの変換器20が出力する少なくとも1つの出力データおよび目標データのうちの、少なくとも一組のデータ同士から次世代用の重みデータを生成する。   Here, when performing such processing, the generation unit 120, in step S131, at least one set of data of at least one output data and target data output from at least one converter 20 before the current generation. Next-generation weight data is generated from each other.

生成部120は、一例として、現世代以前の少なくとも1つ以上の各世代における、近似度が大きい順に選択した少なくとも1つの出力データのそれぞれと目標データとの組を抽出する。即ち、この場合、生成部120は、出力データと目標データとの組を、現世代以前の各世代について抽出する。   For example, the generation unit 120 extracts a set of at least one output data selected in descending order of the degree of approximation and target data in at least one or more generations before the current generation. That is, in this case, the generation unit 120 extracts a set of output data and target data for each generation before the current generation.

また、生成部120は、一例として、現世代以前の少なくとも1つ以上の各世代における、近似度が大きい順に選択した2つの出力データの組を抽出する。即ち、この場合、生成部120は、異なる2つの出力データの組を、現世代以前の各世代から抽出する。   Further, as an example, the generation unit 120 extracts a set of two output data selected in descending order of approximation in each of at least one generation before the current generation. That is, in this case, the generation unit 120 extracts two different sets of output data from each generation before the current generation.

また、生成部120は、一例として、現世代以前の少なくとも1つ以上の各世代における、近似度が大きい順に選択した少なくとも1つの出力データのそれぞれと目標データとの組、および、近似度が大きい順に選択した2つの出力データの組の両者を抽出する。即ち、この場合、生成部120は、目標データと出力データの組、および、異なる2つの出力データの組の両方を、現世代以前の各世代から抽出する。   Further, as an example, the generation unit 120 has a set of at least one output data selected in descending order of approximation and target data in each of at least one or more generations before the current generation, and the degree of approximation is large. Both of the two sets of output data selected in order are extracted. That is, in this case, the generation unit 120 extracts both the set of target data and output data and two different sets of output data from each generation before the current generation.

生成部120は、以上のように抽出したそれぞれの組毎に、データ間のデータ毎の差分を算出する。そして、生成部120は、それぞれの組毎に算出したデータ毎の差分から、次世代用の重みデータを生成する。これにより、生成部120は、次世代の2以上の変換器20が出力する2以上の出力データのそれぞれと目標データとのデータ毎の差分を次世代用の重みデータにより重み付けして2以上の出力データのそれぞれの近似度を算出することができる。   The generation unit 120 calculates a difference for each data between the data for each pair extracted as described above. And the production | generation part 120 produces | generates the weight data for next generation from the difference for every data calculated for every group. Thereby, the generation unit 120 weights the difference for each data between each of the two or more output data output from the two or more next-generation converters 20 and the target data with the weight data for the next generation, so that two or more The degree of approximation of each output data can be calculated.

このような本実施形態に係る遺伝的処理装置10によれば、重みデータによりデータ毎に適切な重み付けをして出力データと目標データとの近似度を算出することができる。これにより、遺伝的処理装置10によれば、複数の出力データの中から目標データに近似した出力データを適切に選択することができる。   According to such a genetic processing apparatus 10 according to the present embodiment, the degree of approximation between the output data and the target data can be calculated by appropriately weighting each data with the weight data. Thereby, according to the genetic processing apparatus 10, the output data approximated to target data can be selected appropriately from several output data.

更に、遺伝的処理装置10は、次世代用の重みデータを、現世代以前の各世代において生成された出力データを用いて生成する。これにより、遺伝的処理装置10によれば、同一の重みデータが周期的に繰り返して生成されてしまう状態となることを回避して、適切な重みデータを長期的に安定して生成することができる。   Furthermore, the genetic processing device 10 generates weight data for the next generation using output data generated in each generation before the current generation. Thus, according to the genetic processing device 10, it is possible to stably generate appropriate weight data in the long term by avoiding a state where the same weight data is periodically generated repeatedly. it can.

図11は、本実施形態に係るコンピュータ1900のハードウェア構成の一例を示す。本実施形態に係るコンピュータ1900は、ホスト・コントローラ2082により相互に接続されるCPU2000、RAM2020、グラフィック・コントローラ2075、及び表示装置2080を有するCPU周辺部と、入出力コントローラ2084によりホスト・コントローラ2082に接続される通信インターフェイス2030、ハードディスク・ドライブ2040、及びDVDドライブ2060を有する入出力部と、入出力コントローラ2084に接続されるROM2010、フレキシブルディスク・ドライブ2050、及び入出力チップ2070を有するレガシー入出力部とを備える。   FIG. 11 shows an example of a hardware configuration of a computer 1900 according to this embodiment. A computer 1900 according to this embodiment is connected to a CPU peripheral unit having a CPU 2000, a RAM 2020, a graphic controller 2075, and a display device 2080 that are connected to each other by a host controller 2082, and to the host controller 2082 by an input / output controller 2084. An input / output unit having a communication interface 2030, a hard disk drive 2040, and a DVD drive 2060, and a legacy input / output unit having a ROM 2010, a flexible disk drive 2050, and an input / output chip 2070 connected to the input / output controller 2084 Is provided.

ホスト・コントローラ2082は、RAM2020と、高い転送レートでRAM2020をアクセスするCPU2000及びグラフィック・コントローラ2075とを接続する。CPU2000は、ROM2010及びRAM2020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ2075は、CPU2000等がRAM2020内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置2080上に表示させる。これに代えて、グラフィック・コントローラ2075は、CPU2000等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。   The host controller 2082 connects the RAM 2020 to the CPU 2000 and the graphic controller 2075 that access the RAM 2020 at a high transfer rate. The CPU 2000 operates based on programs stored in the ROM 2010 and the RAM 2020 and controls each unit. The graphic controller 2075 acquires image data generated by the CPU 2000 or the like on a frame buffer provided in the RAM 2020 and displays it on the display device 2080. Instead of this, the graphic controller 2075 may include a frame buffer for storing image data generated by the CPU 2000 or the like.

入出力コントローラ2084は、ホスト・コントローラ2082と、比較的高速な入出力装置である通信インターフェイス2030、ハードディスク・ドライブ2040、DVDドライブ2060を接続する。通信インターフェイス2030は、ネットワークを介して他の装置と通信する。ハードディスク・ドライブ2040は、コンピュータ1900内のCPU2000が使用するプログラム及びデータを格納する。DVDドライブ2060は、DVD2095からプログラム又はデータを読み取り、RAM2020を介してハードディスク・ドライブ2040に提供する。   The input / output controller 2084 connects the host controller 2082 to the communication interface 2030, the hard disk drive 2040, and the DVD drive 2060, which are relatively high-speed input / output devices. The communication interface 2030 communicates with other devices via a network. The hard disk drive 2040 stores programs and data used by the CPU 2000 in the computer 1900. The DVD drive 2060 reads a program or data from the DVD 2095 and provides it to the hard disk drive 2040 via the RAM 2020.

また、入出力コントローラ2084には、ROM2010と、フレキシブルディスク・ドライブ2050、及び入出力チップ2070の比較的低速な入出力装置とが接続される。ROM2010は、コンピュータ1900が起動時に実行するブート・プログラム、及び/又は、コンピュータ1900のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ2050は、フレキシブルディスク2090からプログラム又はデータを読み取り、RAM2020を介してハードディスク・ドライブ2040に提供する。入出力チップ2070は、フレキシブルディスク・ドライブ2050を入出力コントローラ2084へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ2084へと接続する。   The input / output controller 2084 is connected to the ROM 2010, the flexible disk drive 2050, and the relatively low-speed input / output device of the input / output chip 2070. The ROM 2010 stores a boot program that the computer 1900 executes at startup and / or a program that depends on the hardware of the computer 1900. The flexible disk drive 2050 reads a program or data from the flexible disk 2090 and provides it to the hard disk drive 2040 via the RAM 2020. The input / output chip 2070 connects the flexible disk drive 2050 to the input / output controller 2084 and inputs / outputs various input / output devices via, for example, a parallel port, a serial port, a keyboard port, a mouse port, and the like. Connect to controller 2084.

RAM2020を介してハードディスク・ドライブ2040に提供されるプログラムは、フレキシブルディスク2090、DVD2095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、RAM2020を介してコンピュータ1900内のハードディスク・ドライブ2040にインストールされ、CPU2000において実行される。   A program provided to the hard disk drive 2040 via the RAM 2020 is stored in a recording medium such as the flexible disk 2090, the DVD 2095, or an IC card and provided by the user. The program is read from the recording medium, installed in the hard disk drive 2040 in the computer 1900 via the RAM 2020, and executed by the CPU 2000.

コンピュータ1900にインストールされ、コンピュータ1900を遺伝的処理装置10の制御用コンピュータとして機能させるプログラムは、選択モジュールと、供給モジュールと、生成モジュールとを備える。これらのプログラム又はモジュールは、CPU2000等に働きかけて、コンピュータ1900を、選択部100と、供給部110と、生成部120としてそれぞれ機能させる。   A program installed on the computer 1900 and causing the computer 1900 to function as a control computer of the genetic processing apparatus 10 includes a selection module, a supply module, and a generation module. These programs or modules work on the CPU 2000 or the like to cause the computer 1900 to function as the selection unit 100, the supply unit 110, and the generation unit 120, respectively.

これらのプログラムに記述された情報処理は、コンピュータ1900に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である選択部100と、供給部110と、生成部120として機能する。そして、これらの具体的手段によって、本実施形態におけるコンピュータ1900の使用目的に応じた情報の演算又は加工を実現することにより、使用目的に応じた特有の遺伝的処理装置10が構築される。   The information processing described in these programs is read by the computer 1900 to generate a selection unit 100, a supply unit 110, and a specific unit in which software and various hardware resources described above cooperate. The unit 120 functions. And the specific genetic processing apparatus 10 according to the intended purpose is constructed | assembled by implement | achieving the calculation or processing of the information according to the intended purpose of the computer 1900 in this embodiment by these specific means.

一例として、コンピュータ1900と外部の装置等との間で通信を行う場合には、CPU2000は、RAM2020上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス2030に対して通信処理を指示する。通信インターフェイス2030は、CPU2000の制御を受けて、RAM2020、ハードディスク・ドライブ2040、フレキシブルディスク2090、又はDVD2095等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス2030は、DMA(ダイレクト・メモリ・アクセス)方式により記憶装置との間で送受信データを転送してもよく、これに代えて、CPU2000が転送元の記憶装置又は通信インターフェイス2030からデータを読み出し、転送先の2030又は記憶装置へとデータを書き込むことにより送受信データを転送してもよい。   As an example, when communication is performed between the computer 1900 and an external device or the like, the CPU 2000 executes a communication program loaded on the RAM 2020 and executes a communication interface based on the processing content described in the communication program. A communication process is instructed to 2030. Under the control of the CPU 2000, the communication interface 2030 reads transmission data stored in a transmission buffer area or the like provided on a storage device such as the RAM 2020, the hard disk drive 2040, the flexible disk 2090, or the DVD 2095, and transmits it to the network. Alternatively, the reception data received from the network is written into a reception buffer area or the like provided on the storage device. As described above, the communication interface 2030 may transfer transmission / reception data to / from the storage device by a DMA (direct memory access) method. Instead, the CPU 2000 transfers the storage device or the communication interface 2030 as a transfer source. The transmission / reception data may be transferred by reading the data from the data and writing the data to the transfer destination 2030 or the storage device.

また、CPU2000は、ハードディスク・ドライブ2040、DVDドライブ2060(DVD2095)、フレキシブルディスク・ドライブ2050(フレキシブルディスク2090)等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をDMA転送等によりRAM2020へと読み込ませ、RAM2020上のデータに対して各種の処理を行う。そして、CPU2000は、処理を終えたデータを、DMA転送等により外部記憶装置へと書き戻す。このような処理において、RAM2020は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはRAM2020および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、CPU2000は、RAM2020の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはRAM2020の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもRAM2020、メモリ、及び/又は記憶装置に含まれるものとする。   In addition, the CPU 2000 reads all or necessary portions from files or databases stored in an external storage device such as the hard disk drive 2040, the DVD drive 2060 (DVD 2095), and the flexible disk drive 2050 (flexible disk 2090). The data is read into the RAM 2020 by DMA transfer or the like, and various processes are performed on the data on the RAM 2020. Then, CPU 2000 writes the processed data back to the external storage device by DMA transfer or the like. In such processing, since the RAM 2020 can be regarded as temporarily holding the contents of the external storage device, in the present embodiment, the RAM 2020 and the external storage device are collectively referred to as a memory, a storage unit, or a storage device. Various types of information such as various programs, data, tables, and databases in the present embodiment are stored on such a storage device and are subjected to information processing. Note that the CPU 2000 can also store a part of the RAM 2020 in the cache memory and perform reading and writing on the cache memory. Even in such a form, the cache memory bears a part of the function of the RAM 2020. Therefore, in the present embodiment, the cache memory is also included in the RAM 2020, the memory, and / or the storage device unless otherwise indicated. To do.

また、CPU2000は、RAM2020から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、RAM2020へと書き戻す。例えば、CPU2000は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合(又は不成立であった場合)に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。   In addition, the CPU 2000 performs various operations, such as various operations, information processing, condition determination, information search / replacement, etc., described in the present embodiment, specified for the data read from the RAM 2020 by the instruction sequence of the program. Is written back to the RAM 2020. For example, when performing the condition determination, the CPU 2000 determines whether the various variables shown in the present embodiment satisfy the conditions such as large, small, above, below, equal, etc., compared to other variables or constants. When the condition is satisfied (or not satisfied), the program branches to a different instruction sequence or calls a subroutine.

また、CPU2000は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第1属性の属性値に対し第2属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、CPU2000は、記憶装置に格納されている複数のエントリの中から第1属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第2属性の属性値を読み出すことにより、所定の条件を満たす第1属性に対応付けられた第2属性の属性値を得ることができる。   Further, the CPU 2000 can search for information stored in a file or database in the storage device. For example, in the case where a plurality of entries in which the attribute value of the second attribute is associated with the attribute value of the first attribute are stored in the storage device, the CPU 2000 displays the plurality of entries stored in the storage device. The entry that matches the condition in which the attribute value of the first attribute is specified is retrieved, and the attribute value of the second attribute that is stored in the entry is read, thereby associating with the first attribute that satisfies the predetermined condition The attribute value of the specified second attribute can be obtained.

以上に示したプログラム又はモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク2090、DVD2095の他に、DVD又はCD等の光学記録媒体、MO等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワーク又はインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ1900に提供してもよい。   The program or module shown above may be stored in an external recording medium. As the recording medium, in addition to the flexible disk 2090 and the DVD 2095, an optical recording medium such as DVD or CD, a magneto-optical recording medium such as MO, a tape medium, a semiconductor memory such as an IC card, and the like can be used. Further, a storage device such as a hard disk or RAM provided in a server system connected to a dedicated communication network or the Internet may be used as a recording medium, and the program may be provided to the computer 1900 via the network.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。   As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range as described in the said embodiment. It will be apparent to those skilled in the art that various modifications or improvements can be added to the above-described embodiment. It is apparent from the scope of the claims that the embodiments added with such changes or improvements can be included in the technical scope of the present invention.

特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。   The order of execution of each process such as operations, procedures, steps, and stages in the apparatus, system, program, and method shown in the claims, the description, and the drawings is particularly “before” or “prior to”. It should be noted that the output can be realized in any order unless the output of the previous process is used in the subsequent process. Regarding the operation flow in the claims, the description, and the drawings, even if it is described using “first”, “next”, etc. for convenience, it means that it is essential to carry out in this order. It is not a thing.

10 遺伝的処理装置、20 変換器、22 処理部品、24 処理部品群、100 選択部、110 供給部、120 生成部、130 変換器格納部、1300 変換器群、1900 コンピュータ、2000 CPU、2010 ROM、2020 RAM、2030 通信インターフェイス、2040 ハードディスク・ドライブ、2050 フレキシブルディスク・ドライブ、2060 DVDドライブ、2070 入出力チップ、2075 グラフィック・コントローラ、2080 表示装置、2082 ホスト・コントローラ、2084 入出力コントローラ、2090 フレキシブルディスク、2095 DVD DESCRIPTION OF SYMBOLS 10 Genetic processing device, 20 Converter, 22 Processing component, 24 Processing component group, 100 Selection part, 110 Supply part, 120 Generation part, 130 Converter storage part, 1300 Converter group, 1900 Computer, 2000 CPU, 2010 ROM 2020 RAM 2030 Communication interface 2040 Hard disk drive 2050 Flexible disk drive 2060 DVD drive 2070 Input / output chip 2075 Graphic controller 2080 Display device 2082 Host controller 2084 Input / output controller 2090 Flexible disk , 2095 DVD

Claims (6)

入力データを処理して処理結果を出力データとして出力する処理部品を組み合わせた変換器を少なくとも1つ含む変換器群を遺伝的処理により進化させて、与えられた対象データを目標データにより近いデータに変換する適応済変換器を生成する生成部と、
新たな対象データおよび新たな目標データの組を受け取ったことに応じて、既に生成された前記適応済変換器のうち、前記新たな対象データを変換したデータと前記新たな目標データとの近似度が基準以上となる前記適応済変換器を選択する選択部と、
前記選択部が選択した前記適応済変換器を少なくとも1つの前記変換器として含む変換器群を前記生成部に供給して遺伝的処理により進化させて、前記新たな対象データを前記新たな目標データにより近いデータに変換する新たな適応済変換器を生成させる供給部と、
を備える遺伝的処理装置。
By evolving a group of transducers including at least one transducer combined with processing components that process input data and output processing results as output data, the given target data is made closer to the target data A generator for generating an adapted converter for conversion;
The degree of approximation between the new target data and the data obtained by converting the new target data among the already-adapted converters generated in response to receiving the new target data and the new target data set A selection unit for selecting the adapted converter that is equal to or greater than a reference;
A converter group including the adapted converter selected by the selection unit as at least one converter is supplied to the generation unit and evolved by genetic processing, and the new target data is converted into the new target data. A supply unit that generates a new adapted converter that converts the data closer to
A genetic processing apparatus comprising:
前記供給部は、前記選択部が選択した前記適応済変換器を含む変換器群を、前記新たな適応済変換器を生成するべく遺伝的処理により進化させる初期の変換器群として前記生成部に供給する
請求項1に記載の遺伝的処理装置。
The supply unit provides the generation unit with an initial converter group that evolves the converter group including the adapted converter selected by the selection unit by genetic processing to generate the new adapted converter. The genetic processing apparatus according to claim 1.
前記生成部は、入力画像を出力画像にそれぞれ変換する複数のフィルタ部品を組み合わせて、与えられた対象画像を目標画像により近い画像に変換する適応済画像フィルタを生成する
請求項1または2に記載の遺伝的処理装置。
The generation unit generates an adapted image filter that converts a given target image into an image closer to the target image by combining a plurality of filter components that respectively convert an input image into an output image. Genetic processing equipment.
前記選択部は、すでに生成された前記画像フィルタのうち、少なくとも一部の画像領域について、前記新たな対象画像を変換した画像と前記新たな目標画像との近似度が基準以上となる前記適応済画像フィルタを選択する
請求項3に記載の遺伝的処理装置。
The selection unit includes the adapted unit that has a degree of approximation between an image obtained by converting the new target image and the new target image equal to or higher than a reference in at least a part of the image filter generated already. The genetic processing device according to claim 3, wherein an image filter is selected.
入力データを処理して処理結果を出力データとして出力する処理部品を組み合わせた変換器を少なくとも1つ含む変換器群を遺伝的処理により進化させて、与えられた対象データを目標データにより近いデータに変換する適応済変換器を生成する生成ステップと、
新たな対象データおよび新たな目標データの組を受け取ったことに応じて、既に生成された前記適応済変換器のうち、前記新たな対象データを変換したデータと前記新たな目標データとの近似度が基準以上となる前記適応済変換器を選択する選択ステップと、
前記選択ステップが選択した前記適応済変換器を少なくとも1つの前記変換器として含む変換器群を前記生成ステップに供給して遺伝的処理により進化させて、前記新たな対象データを前記新たな目標データにより近いデータに変換する新たな適応済変換器を生成させる供給ステップと、
を備える遺伝的処理方法。
By evolving a group of transducers including at least one transducer combined with processing components that process input data and output processing results as output data, the given target data is made closer to the target data A generating step for generating an adapted converter for conversion;
The degree of approximation between the new target data and the data obtained by converting the new target data among the already-adapted converters generated in response to receiving the new target data and the new target data set A selection step of selecting the adapted transducer for which is greater than or equal to a reference;
A converter group including the adapted converter selected in the selection step as at least one converter is supplied to the generation step and evolved by genetic processing, and the new target data is converted into the new target data. A supply step for generating a new adapted converter for converting the data closer to
A genetic processing method comprising:
遺伝的処理装置として、コンピュータを機能させる遺伝的処理プログラムであって、
前記コンピュータを、
入力データを処理して処理結果を出力データとして出力する処理部品を組み合わせた変換器を少なくとも1つ含む変換器群を遺伝的処理により進化させて、与えられた対象データを目標データにより近いデータに変換する適応済変換器を生成する生成部と、
新たな対象データおよび新たな目標データの組を受け取ったことに応じて、既に生成された前記適応済変換器のうち、前記新たな対象データを変換したデータと前記新たな目標データとの近似度が基準以上となる前記適応済変換器を選択する選択部と、
前記選択部が選択した前記適応済変換器を少なくとも1つの前記変換器として含む変換器群を前記生成部に供給して遺伝的処理により進化させて、前記新たな対象データを前記新たな目標データにより近いデータに変換する新たな適応済変換器を生成させる供給部と、
として機能させる遺伝的処理プログラム。
A genetic processing program for causing a computer to function as a genetic processing device,
The computer,
By evolving a group of transducers including at least one transducer combined with processing components that process input data and output processing results as output data, the given target data is made closer to the target data A generator for generating an adapted converter for conversion;
The degree of approximation between the new target data and the data obtained by converting the new target data among the already-adapted converters generated in response to receiving the new target data and the new target data set A selection unit for selecting the adapted converter that is equal to or greater than a reference;
A converter group including the adapted converter selected by the selection unit as at least one converter is supplied to the generation unit and evolved by genetic processing, and the new target data is converted into the new target data. A supply unit that generates a new adapted converter that converts the data closer to
Genetic processing program to function as.
JP2009111457A 2009-04-30 2009-04-30 Genetic processing apparatus, genetic processing method, and genetic processing program Expired - Fee Related JP5417972B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009111457A JP5417972B2 (en) 2009-04-30 2009-04-30 Genetic processing apparatus, genetic processing method, and genetic processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009111457A JP5417972B2 (en) 2009-04-30 2009-04-30 Genetic processing apparatus, genetic processing method, and genetic processing program

Publications (2)

Publication Number Publication Date
JP2010262404A JP2010262404A (en) 2010-11-18
JP5417972B2 true JP5417972B2 (en) 2014-02-19

Family

ID=43360426

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009111457A Expired - Fee Related JP5417972B2 (en) 2009-04-30 2009-04-30 Genetic processing apparatus, genetic processing method, and genetic processing program

Country Status (1)

Country Link
JP (1) JP5417972B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102355806B1 (en) * 2020-05-07 2022-01-27 포항공과대학교 산학협력단 Machine Learning Inverse Prediction Method Using Genetic Algorithm

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006178857A (en) * 2004-12-24 2006-07-06 Yokohama National Univ Image processor
WO2006095751A1 (en) * 2005-03-08 2006-09-14 Evolvable Systems Research Institute Inc. A/d converting apparatus, and data transmitting apparatus using a/d converting apparatus
JP4512578B2 (en) * 2006-10-27 2010-07-28 株式会社ブリヂストン Separation filter determination device and tire inspection device

Also Published As

Publication number Publication date
JP2010262404A (en) 2010-11-18

Similar Documents

Publication Publication Date Title
JP5408128B2 (en) Image processing apparatus, image processing method, processing apparatus, and program
JP6965690B2 (en) Devices and methods for improving the processing speed of neural networks, and their applications
US20130232097A1 (en) Continuous-weight neural networks
JP2019128831A (en) Calculation technique determining system, calculation technique determining device, processing device, calculation technique determining method, processing method, calculation technique determining program, and processing program
JP5304401B2 (en) Genetic processing apparatus, genetic processing method and program
JP2011014051A (en) Generating device, generating method, and generation program
JP5396977B2 (en) Data processing apparatus, data processing method and program
JP5417967B2 (en) Genetic processing apparatus, genetic processing method and program
JP5417972B2 (en) Genetic processing apparatus, genetic processing method, and genetic processing program
JP2009282579A (en) Image processor, image processing method, and program
JP5418052B2 (en) Genetic processing apparatus, genetic processing method and program
JP5359622B2 (en) Genetic processing apparatus, genetic processing method, and genetic processing program
JP5326881B2 (en) Image processing apparatus, image processing method, and image processing program
JP5444822B2 (en) Genetic processing apparatus, genetic processing method and program
JP5417950B2 (en) Genetic processing apparatus, genetic processing method and program
JP5359531B2 (en) Genetic processing apparatus, genetic processing method and program
JP5365328B2 (en) Genetic processing apparatus, genetic processing method, and genetic processing program
JP5359479B2 (en) Genetic processing apparatus, genetic processing method and program
JP2010257067A (en) Apparatus and method for processing hereditary, and program
JP5181826B2 (en) Image processing apparatus, image processing method, and program
JP5326776B2 (en) Image processing apparatus, image processing method, and image processing program
JP5453937B2 (en) Genetic processing apparatus, genetic processing method, and genetic processing program
JP5181821B2 (en) Image processing apparatus, image processing method, and program
JP5088228B2 (en) Image processing apparatus, image processing method, and program
JP7493813B2 (en) Explanation generation device, explanation generation method and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131022

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131104

R150 Certificate of patent or registration of utility model

Ref document number: 5417972

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees