パッケージ org.opengion.penguin.math.ga

## クラス AbstractHybsGAChromosome

- java.lang.Object
- - org.apache.commons.math3.genetics.Chromosome
  - - org.apache.commons.math3.genetics.AbstractListChromosome<HybsGAObject>
    - - org.opengion.penguin.math.ga.AbstractHybsGAChromosome

- すべての実装されたインタフェース:
    `Comparable<org.apache.commons.math3.genetics.Chromosome>`, `org.apache.commons.math3.genetics.Fitness`
  直系の既知のサブクラス:
    `HybsScheduleChromosome`, `HybsTSPChromosome`

      public abstract class AbstractHybsGAChromosome
      extends org.apache.commons.math3.genetics.AbstractListChromosome<HybsGAObject>

  HybsGeneticAlgorithmで利用するChromosomeインターフェースです。 AbstractListChromosomeだと少し使いにくいので、AbstractListChromosomeを継承して 独自にAbstractクラスを作成しています。 （大半はAbstractListChromosomeそのものです）

- - ### フィールドの概要

    フィールド
    修飾子とタイプ | フィールド | 説明
    --- | --- | ---
    `protected Object` | `optionData` | 染色体に何らかのオプション情報を持たせる場合に利用

  - ### コンストラクタの概要

    コンストラクタ
    コンストラクタ | 説明
    --- | ---
    `AbstractHybsGAChromosome()` | デフォルトコンストラクタ。
    `AbstractHybsGAChromosome​(List<HybsGAObject> representation)` | 染色体のリストを引数に持つコンストラクタ。

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド abstractメソッド concreteメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `org.apache.commons.math3.genetics.AbstractListChromosome<HybsGAObject>` | `clone​(List<HybsGAObject> chromosomeRepresentation)` | 初期化用のsetter。
    `org.apache.commons.math3.genetics.AbstractListChromosome<HybsGAObject>` | `clone​(List<HybsGAObject> chromosomeRepresentation, boolean copyList)` | 初期化用のsetter。
    `List<HybsGAObject>` | `getThisRepresentation()` | 染色体配列を返す。
    `abstract AbstractHybsGAChromosome` | `newFixedLengthChromosome​(List<HybsGAObject> repr)` | 自分と同じクラスを作成するメソッド。
    `void` | `setOptionData​(Object option)` | オプション情報を渡す場合に利用。

    - ### クラスから継承されたメソッド org.apache.commons.math3.genetics.AbstractListChromosome

      `checkValidity, getLength, getRepresentation, toString`

    - ### クラスから継承されたメソッド org.apache.commons.math3.genetics.Chromosome

      `compareTo, findSameChromosome, getFitness, isSame, searchForFitnessUpdate`

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### インタフェースから継承されたメソッド org.apache.commons.math3.genetics.Fitness

      `fitness`

- - ### フィールドの詳細

    - #### optionData

          protected Object optionData

      染色体に何らかのオプション情報を持たせる場合に利用

  - ### コンストラクタの詳細

    - #### AbstractHybsGAChromosome

          public AbstractHybsGAChromosome()
                                   throws org.apache.commons.math3.genetics.InvalidRepresentationException

      デフォルトコンストラクタ。 空の染色体配列を持つインスタンスを作成する。 newInstanceメソッドでインスタンスを作成するために、若干トリッキーな事をする。 このコンストラクタを利用する場合はcloneで染色体セットし、増殖させて利用する。
      例外:
        `org.apache.commons.math3.genetics.InvalidRepresentationException` - 染色体の表現が無効であることを示す例外

    - #### AbstractHybsGAChromosome

          public AbstractHybsGAChromosome​(List<HybsGAObject> representation)
                                   throws org.apache.commons.math3.genetics.InvalidRepresentationException

      染色体のリストを引数に持つコンストラクタ。
      パラメータ:
        `representation` - 染色体表現のリスト
      例外:
        `org.apache.commons.math3.genetics.InvalidRepresentationException` - 染色体の表現が無効であることを示す例外

  - ### メソッドの詳細

    - #### clone

          public org.apache.commons.math3.genetics.AbstractListChromosome<HybsGAObject> clone​(List<HybsGAObject> chromosomeRepresentation,
                                                                                              boolean copyList)

      初期化用のsetter。 通常、copyListにはtrueをセットして染色体表現のインスタンスを新たに作成する。
      パラメータ:
        `chromosomeRepresentation` - 染色体表現
        `copyList` - newを利用してクローンするかどうか
      戻り値:
        クローン

    - #### clone

          public org.apache.commons.math3.genetics.AbstractListChromosome<HybsGAObject> clone​(List<HybsGAObject> chromosomeRepresentation)
                                                                                       throws org.apache.commons.math3.genetics.InvalidRepresentationException

      初期化用のsetter。
      パラメータ:
        `chromosomeRepresentation` - 染色体表現
      戻り値:
        クローン
      例外:
        `org.apache.commons.math3.genetics.InvalidRepresentationException` - 染色体の表現が無効であることを示す例外

    - #### newFixedLengthChromosome

          public abstract AbstractHybsGAChromosome newFixedLengthChromosome​(List<HybsGAObject> repr)

      自分と同じクラスを作成するメソッド。 各クラスで実装する。 必要に応じてoptionDataをセットすること。
      定義:
        `newFixedLengthChromosome` クラス内 `org.apache.commons.math3.genetics.AbstractListChromosome<HybsGAObject>`
      パラメータ:
        `repr` - 作成する際に渡す染色体
      戻り値:
        作成されたクラス

    - #### getThisRepresentation

          public List<HybsGAObject> getThisRepresentation()

      染色体配列を返す。
      戻り値:
        染色体配列

    - #### setOptionData

          public void setOptionData​(Object option)

      オプション情報を渡す場合に利用。
      パラメータ:
        `option` - オプション情報