(57)【要約】大まかに説明すると、開示される技術は、探索空間において全ての可能なウェブページ設計をテストすることなく、探索空間において最も成功したウェブページ設計を効率的に識別するために進化的計算を使用する、いわゆる機械学習変換最適化（ＭＬＣＯ）システムを提供する。探索空間は、マーケティング担当者によってウェブページ設計に基づいて定義される。単一のウェブページまたは複数のウェブページを有するウェブサイトファネルは、ゲノムとして表される。ゲノムは、ファネルの異なる次元及び次元値を識別する。ゲノムは、良好なパフォーマンスを示す親ゲノム、及び良好なパフォーマンスを示す見込みがある孫ゲノムを識別するために、初期化、テスト、競争、及び生殖のような進化的操作を受ける。各々のウェブページは、それが見込みがあるか、すなわち、それが次の世代についての親としての役割を果たすべきか、または破棄されるべきかを決定することが可能な程度までのみテストされる。【選択図】図１
2019504428.tif 000002
【特許請求の範囲】
【請求項１】
予め定められた標的のユーザの行動を促進する、コンピュータにより実施されるウェブインタフェース生成及びテストシステムであって、
候補個体の個体数を有する候補データベースを記憶するメモリであって、前記候補個体の各々は、１つ以上のウェブインタフェースのファネルを識別し、各々のファネルは、複数の次元を有し、前記ファネルは、それによって前記標的のユーザの行動の達成を検出することができるメカニズムを有し、各々の候補個体は、前記次元ごとの値を識別する、前記メモリと、
候補個体の予備プールを前記候補個体数に書き込む個体数初期化モジュールと、
ライブのオンライン評価によって前記候補個体数における前記候補個体の各々をテストする候補テストモジュールであって、前記候補テストモジュールは、前記ライブのオンライン評価を受ける前記候補個体ごとのパフォーマンス測定値を発展させ、前記パフォーマンス測定値は、前記標的のユーザの行動を達成する際の前記ファネルの成功のインジケーションである、前記候補テストモジュールと、
前記候補個体数に、前記候補個体数及び親のパフォーマンス測定値からの１つ以上の前記親の個体のそれぞれのセットに従って形成された新たな個体を追加する生殖モジュールと、
前記候補テストモジュール及び前記生殖モジュールを反復する制御モジュールと、
を含む、システム。
【請求項２】
前記生殖モジュールは、新たな個体についての遺伝子が前記候補個体数における前記親の個体から適応度に比例して選択されるように前記新たな個体のうちの１つを形成する、請求項１に記載のシステム。
【請求項３】
前記発展したパフォーマンス測定値に従って、前記候補個体数から破棄するために前記ライブのオンライン評価を受ける個体を選択する競争モジュールを含むように更に構成される、請求項１に記載のシステム。
【請求項４】
前記生殖モジュールは、前記候補個体数に、前記候補個体数からの１つ以上の親の個体のそれぞれのセットに従って形成され、破棄するためにまだ選択されていない新たな個体を追加する、請求項３に記載のシステム。
【請求項５】
前記生殖モジュールは、遺伝子ごとに基づいて２つ以上の親の個体をクロスオーバーすることによって前記新たな個体のうちの１つを形成する、請求項４に記載のシステム。
【請求項６】
前記生殖モジュールは、遺伝子ごとに基づいて少なくとも１つの親の個体を変異させることによって前記新たな個体のうちの１つを形成する、請求項４に記載のシステム。
【請求項７】
前記生殖モジュールは、クロスオーバーによって前記新たな個体のうちのいくつかを形成した後のみ、変異によって前記新たな個体のうちの１つを形成する、請求項４に記載のシステム。
【請求項８】
前記制御モジュールは、前記候補テストモジュール、前記競争モジュール、及び前記生殖モジュールを反復する、請求項３に記載のシステム。
【請求項９】
前記競争モジュールによる破棄するための個体の前記選択は、対象の個体について、前記対象の個体の相対的パフォーマンス測定値を前記候補個体数における別の個体の相対的パフォーマンス測定値と比較する第１のインスタンスを含む、請求項３に記載のシステム。
【請求項１０】
前記対象の個体の前記相対的パフォーマンス測定値は、第１の期間において判定された対照個体の絶対的パフォーマンス測定値と第１の期間において判定された前記対象の個体の絶対的パフォーマンス測定値との間の差に基づいて判定される、請求項９に記載のシステム。
【請求項１１】
複数のヒューリスティックに基づいて、前記候補個体数を複数の個体数グループに区分化する割当モジュールを含むように更に構成される、請求項１に記載のシステム。
【請求項１２】
前記候補テストモジュールは、前記個体数グループの間で特定の組織によって受信されたライブのユーザトラフィックを様々に分散する、請求項１１に記載のシステム。
【請求項１３】
前記個体数初期化モジュールは、候補探索空間から前記次元ごとの利用可能な値をランダムに選択し、前記次元及び前記次元値を二進式として符号化することによって候補個体の前記予備プールを作成する、請求項１に記載のシステム。
【請求項１４】
前記個体数初期化モジュールは、前記候補探索空間における前記利用可能な次元値の大部分が初期化されたと判定し、それに応じて、まだ初期化されていない前記候補探索空間における前記利用可能な次元値に基づいて、前記候補個体数に候補個体をランダムに書き込む、請求項１３に記載のシステム。
【請求項１５】
候補個体の前記予備プールを前記候補個体数に書き込む際に、前記個体数初期化モジュールは、
少なくとも１つのスタータファネルを取得し、前記スタータファネルは、複数のスタータ次元、及び前記スタータ次元ごとのスタータ次元値のセットを有し、
前記スタータ次元値の各々が前記候補個体のうちの１つのみで発生することを保証する方式で候補個体の前記予備プールを作成する、
請求項１に記載のシステム。
【請求項１６】
前記制御モジュールによって完了されるいくつかの反復は、前記標的のユーザの行動の促進を探求する特定の組織に特有な１つ以上のテストパラメータに応じている、請求項１に記載のシステム。
【請求項１７】
テストパラメータは、或る期間を通じて前記特定の組織によって受信されるライブのユーザトラフィックの量である、請求項１６に記載のシステム。
【請求項１８】
前記制御モジュールは、前記期間内に前記いくつかの反復を完了するように構成される、請求項１７に記載のシステム。
【請求項１９】
前記個体数初期化モジュールは、候補個体の前記予備プールの最大サイズをライブのユーザトラフィックの前記量の関数とする、請求項１７に記載のシステム。
【請求項２０】
前記個体数初期化モジュールは、
前記いくつかの反復が前記期間内に完了されることを保証する方式で候補個体の前記予備プールを構築するために、前記スタータ次元及び前記スタータ次元値の第１のサブセットを選択することによって、
前記スタータファネルについて定義されたいくつかのスタータ次元及びスタータ次元と候補個体の前記予備プールの前記最大サイズとの間の衝突を解決する、
請求項１９に記載のシステム。
【請求項２１】
前記第１のサブセットの前記選択は、前に指定されたスタータ次元及びスタータ次元値に偏重される、請求項２０に記載のシステム。
【請求項２２】
前記生殖モジュールは、前記第１のサブセットとは異なる、前記スタータ次元及び前記スタータ次元値の第２のサブセットに従って前記新たな個体のうちの１つを形成する、請求項２０に記載のシステム。
【請求項２３】
前記標的のユーザの行動は、エンドユーザによる変換である、請求項１に記載のシステム。
【請求項２４】
前記候補テストモジュールによって発展する前記パフォーマンス測定値は、前記ライブのオンライン評価を受ける前記候補個体の変換率に基づいている、請求項１に記載のシステム。
【請求項２５】
前記候補テストモジュールによって発展する前記パフォーマンス測定値は、前記ライブのオンライン評価を受ける前記候補個体から受け取られる収益に基づいている、請求項１に記載のシステム。
【請求項２６】
予め定められた標的のユーザの行動を促進する、コンピュータにより実施されるウェブインタフェース生成及びテスト方法であって、
候補個体の個体数を有する候補データベースを記憶するメモリを提供することであって、前記候補個体の各々は、１つ以上のウェブインタフェースのファネルを識別し、各々のファネルは、複数の次元を有し、前記ファネルは、それによって前記標的のユーザの行動の達成を検出することができるメカニズムを有し、各々の候補個体は、前記次元ごとの値を識別する、前記メモリを提供することと、
候補個体の予備プールを前記候補個体数に書き込むことと、
ライブのオンライン評価によって前記候補個体数における前記候補個体の各々をテストすることであって、前記候補テストモジュールは、前記ライブのオンライン評価を受ける前記候補個体ごとのパフォーマンス測定値を発展させ、前記パフォーマンス測定値は、前記標的のユーザの行動を達成する際の前記ファネルの成功のインジケーションである、前記テストすることと、
前記候補個体数に、前記候補個体数及び親のパフォーマンス測定値からの１つ以上の前記親の個体のそれぞれのセットに従って形成された新たな個体を追加することと、
前記テストするステップ及び前記追加するステップを反復することと、
を含む、方法。
【請求項２７】
コンピュータにより実施されるウェブインタフェース作成及び配置システムであって、
候補個体の個体数を有する候補データベースを記憶するメモリであって、前記候補個体の各々は、１つ以上のウェブインタフェースのファネルを識別し、各々のファネルは、それに従って値を指定することができる複数の次元を有し、各々の候補個体は、前記次元ごとの値を更に識別する、前記メモリと、
前記ファネルの前記次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別するプレゼンテーションデータベースと、
前記候補個体のうちの選択された１つを前記プレゼンテーションデータベースに適用して、前記選択された候補個体によって識別される次元値に対応するフロントエンド要素値を判定し、ユーザに対し、前記判定されたフロントエンド要素値を有するファネルを提示するプレゼンテーションモジュールと、
を含む、システム。
【請求項２８】
前記次元ごとの前記利用可能な値のうちの１つは、デフォルトの値であり、
前記ファネルは、前記次元の各々の前記デフォルトの次元値についてのデフォルトのフロントエンド要素値を有し、
前記プレゼンテーションモジュールは、前記次元ごとの前記デフォルトの次元値以外の、前記選択された候補個体によって識別される全ての次元値に対応するフロントエンド要素値を判定するために、前記選択された候補個体を前記プレゼンテーションデータベースに適用する、
請求項２７に記載のシステム。
【請求項２９】
カスタム化可能なウェブインタフェースファネルのためのコンピュータにより実施される配置システムであって、前記ファネルは、複数の次元に沿ってカスタム化可能であり、
前記ファネルの前記次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別するプレゼンテーションデータベースと、
前記ウェブインタフェースファネルの特定の変動について、前記ファネルの前記次元ごとの値を記憶するファネルカスタム化仕様メモリと、
ユーザに対し、前記ファネルカスタム化仕様メモリに記憶された前記次元値に対応するとして、前記プレゼンテーションデータベースによって示されるフロントエンド要素値を有するファネルを提示するプレゼンテーションモジュールと、
を含む、システム。
【請求項３０】
前記次元ごとの前記利用可能な値のうちの１つは、デフォルトの値であり、
前記ファネルは、前記次元の各々の前記デフォルトの次元値についてのデフォルトのフロントエンド要素値を有し、
前記プレゼンテーションモジュールによって前記ユーザに対して提示される前記ファネルは、前記次元ごとの前記デフォルトの次元値以外の、前記ファネルカスタム化仕様メモリにおいて識別される前記次元値の全てに対応するとして、前記プレゼンテーションデータベースによって示されるフロントエンド要素値を有する、
請求項２９に記載のシステム。
【請求項３１】
前記ファネルの前記次元ごとの値の新たなセットで前記ファネルカスタム化仕様メモリを更新するように更に構成される、請求項２９に記載のシステム。
【請求項３２】
前記システムは、前記ファネルを入力するためのユーザの行動に応じて前記ファネルカスタム化仕様メモリについての前記値を取り出す、請求項２９に記載のシステム。
【請求項３３】
前記システムはまた、ユーザの行動に応じて、前記プレゼンテーションデータベースを検索する、請求項３２に記載のシステム。
【請求項３４】
コンピュータにより実施されるウェブインタフェース作成及び配置システムであって、
候補個体の個体数を有するデータベースを記憶するメモリであって、前記候補個体の各々は、１つ以上のウェブインタフェースのファネルを識別し、各々のファネルは、それに従って値を指定することができる複数の次元を有し、各々の候補個体は、前記次元ごとの値を更に識別する、前記メモリと、
ネットワークを通じて受信された１つ以上の第１の要求に応じて、第１のクライアントコンピュータシステムに対し、
前記ファネルの前記次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別するプレゼンテーションデータベースと、
前記個体数における前記候補個体のうちの第１の選択された１つによって識別される次元値のセットと、
次元値の前記受信されたセットに従って、ユーザに対し、次元値の前記受信されたセットによって示されるフロントエンド要素値を有するファネルを提示するプレゼンテーションモジュールと、
を返す、ネットワークサーバインフラストラクチャと、
を含む、システム。
【請求項３５】
前記次元ごとの前記利用可能な値のうちの１つは、デフォルトの値であり、
前記ファネルは、前記次元の各々の前記デフォルトの値についてのデフォルトのフロントエンド要素値を有し、
前記プレゼンテーションモジュールは、前記次元ごとの前記デフォルトの次元値以外の、前記第１の選択された候補個体によって識別される全ての次元値に対応するフロントエンド要素値を判定するために、前記第１の選択された候補個体を前記プレゼンテーションデータベースに適用する、
請求項３４に記載のシステム。
【請求項３６】
前記ネットワークサーバインフラストラクチャは、ネットワークを通じて受信された１つ以上の第２の要求に応じて、第２のクライアントコンピュータシステムに対し、
前記プレゼンテーションデータベースと、
前記プレゼンテーションモジュールと、
前記個体数における前記候補個体の第２の選択された１つによって識別される次元値の前記セットと、
を返す、請求項３４に記載のシステム。
【請求項３７】
前記ファネルの前記ウェブインタフェースのうちの１つは、ウェブページ、モバイルアプリケーション、電子メール、ソーシャルメディアメッセージ、ソーシャルメディアフィード、またはチャットメッセージを表す、請求項３４に記載のシステム。
【請求項３８】
前記データベースにおける候補個体の前記個体数は、予め定められた標的のユーザの行動を促進する際のそれらの成功についてテストされる候補個体を含み、前記システムは、
候補個体の予備プールを前記候補個体数に書き込む個体数初期化モジュールと、
ライブのオンライン評価によって前記候補個体数における前記候補個体の各々をテストする候補テストモジュールであって、前記候補テストモジュールは、ライブのオンライン評価を受ける前記候補個体ごとのパフォーマンス測定値を発展させ、前記パフォーマンス測定値は、前記標的のユーザの行動を達成する際の前記ファネルの成功のインジケータである、前記候補テストモジュールと、
前記候補個体数に、前記候補個体数及び親のパフォーマンス測定値からの１つ以上の前記親の候補個体のそれぞれのセットに従って形成された新たな候補個体を追加する生殖モジュールと、
前記候補テストモジュール及び前記生殖モジュールを反復する制御モジュールと、
を含み、
前記候補テストモジュールは、前記ネットワークサーバインフラストラクチャに含まれ、前記候補個体数から、その次元値が前記要求に応じてクライアントコンピュータシステムに対して返されることになる前記選択された候補個体を選択する、
請求項３４に記載のシステム。
【請求項３９】
前記標的のユーザの行動はユーザによる変換である、請求項３８に記載のシステム。
【請求項４０】
前記候補テストモジュールによって発展する前記パフォーマンス測定値は、前記ライブのオンライン評価を受ける前記候補個体の変換率に基づいている、請求項３８に記載のシステム。
【請求項４１】
前記候補テストモジュールによって発展する前記パフォーマンス測定値は、前記ライブのオンライン評価を受ける前記候補個体から受け取られる収益に基づいている、請求項３８に記載のシステム。
【請求項４２】
前記ネットワークサーバインフラストラクチャは、
前記クライアントコンピュータシステムからの要求に応じて、前記プレゼンテーションデータベース及び前記プレゼンテーションモジュールを前記クライアントコンピュータシステムに対して返すコンテンツ配信ネットワーク（ＣＤＮ）と、
前記第１の選択された候補個体を前記データベースから取り出し、前記クライアントコンピュータシステムからの要求に応じて、前記クライアントコンピュータシステムに対し、前記第１の選択された候補個体によって識別される次元値の前記セットを返す変換システムと、
を含む、請求項３４に記載のシステム。
【請求項４３】
コンピュータにより実施されるウェブインタフェース作成及び配置システムであって、
候補個体の個体数を有するデータベースを記憶するメモリであって、前記候補個体の各々は、１つ以上のウェブインタフェースのファネルを識別し、各々のファネルは、それに従って値を指定することができる複数の次元を有し、各々の候補個体は、前記次元ごとの値を更に識別する、前記メモリと、
前記ファネルの前記次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別する、それにアクセス可能なプレゼンテーションデータベースを有する機械学習コンテンツ配信ネットワークであって、前記機械学習コンテンツ配信ネットワークは、クライアントコンピュータシステムから要求に応じて、
前記データベースから、前記個体数における前記候補個体の選択された１つを取り出し
前記クライアントコンピュータシステムに対し、前記選択された候補個体の前記次元値によって示されるフロントエンド要素値を有するファネルを配信する、システム。
【請求項４４】
前記機械学習コンテンツ配信ネットワークは、クライアントコンピュータシステムからの前記要求に応じて、前記ファネルを作成する、請求項４３に記載のシステム。
【請求項４５】
前記データベースへのアクセスを有する変換システムを更に含み、
前記機械学習コンテンツ配信ネットワークは、前記選択された候補個体を取り出す際に、前記変換システムからの候補個体を要求するように更に構成され、
前記変換システムは、前記機械学習コンテンツ配信ネットワークからの要求に応じて、前記選択された候補個体を選択し、前記選択された候補個体を前記機械学習コンテンツ配信ネットワークに対して返すように構成される、
請求項４３に記載のシステム。
【請求項４６】
前記データベースにおける候補個体の前記個体数は、予め定められた標的のユーザの行動を促進する際のそれらの成功についてテストされる候補個体を含み、前記変換システムは、
候補個体の予備プールを前記候補個体数に書き込む個体数初期化モジュールと、
ライブのオンライン評価によって前記候補個体数における前記候補個体の各々をテストする候補テストモジュールであって、前記候補テストモジュールは、ライブのオンライン評価を受ける前記候補個体ごとのパフォーマンス測定値を発展させ、前記パフォーマンス測定値は、前記標的のユーザの行動を達成する際の前記ファネルの成功のインジケータである、前記候補テストモジュールと、
前記候補個体数に、前記候補個体数及び親のパフォーマンス測定値からの１つ以上の前記親の候補個体のそれぞれのセットに従って形成された新たな候補個体を追加する生殖モジュールと、
前記候補テストモジュール及び前記生殖モジュールを反復する制御モジュールであって、前記選択された候補個体を選択する際に、前記候補テストモジュールは、前記選択された候補個体を前記候補個体数から選択する、前記制御モジュールと、
を含む、請求項４５に記載のシステム。
【請求項４７】
コンピュータにより実施されるウェブインタフェース作成及び配置方法であって、
複数の候補個体の個体数を有する候補データベースを記憶するメモリを提供することであって、前記候補個体の各々は、１つ以上のウェブインタフェースのファネルを識別し、各々のファネルは、それに従って値を指定することができる複数の次元を有し、各々の候補個体は、前記次元ごとの値を更に識別する、前記メモリを提供することと、
前記ファネルの前記次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別するプレゼンテーションデータベースを提供することと、
前記選択された候補個体によって識別される次元値に対応するフロントエンド要素値を判定するために、前記候補個体の選択された１つを前記プレゼンテーションデータベースに適用することと、
ユーザに対し、前記判定されたフロントエンド要素値を有するファネルを提示することと、
を含む、方法。
【請求項４８】
カスタム化可能なウェブインタフェースファネルのためのコンピュータにより実施される配置方法であって、前記ファネルは、複数の次元に沿ってカスタム化可能であり、
前記ファネルの前記次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別するプレゼンテーションデータベースを提供することと、
前記ウェブインタフェースファネルの特定の変動について、前記ファネルの前記次元ごとの値をファネルカスタム化仕様メモリに記憶することと、
ユーザに対し、前記ファネルカスタム化仕様メモリに記憶された前記次元値に対応するとして、前記プレゼンテーションデータベースによって示されるフロントエンド要素値を有するファネルを提示することと、
を含む、方法。
【請求項４９】
コンピュータにより実施されるウェブインタフェース作成及び配置方法であって、
候補個体の個体数を有するデータベースを記憶するメモリを提供することであって、前記候補個体の各々は、１つ以上のウェブインタフェースのファネルを識別し、各々のファネルは、それに従って値を指定することができる複数の次元を有し、各々の候補個体は、前記次元ごとの値を更に識別する、前記メモリを提供することと、
ネットワークを通じて受信された１つ以上の第１の要求に応じて、第１のクライアントコンピュータシステムに対し、
前記ファネルの前記次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別するプレゼンテーションデータベースと、
前記個体数における前記候補個体のうちの第１の選択された１つによって識別される次元値のセットと、
次元値の前記受信されたセットに従って、ユーザに対し、次元値の前記受信されたセットによって示されるフロントエンド要素値を有するファネルを提示するプレゼンテーションモジュールと、
を返す、ネットワークサーバインフラストラクチャを提供することと、
含む、方法。
【請求項５０】
コンピュータにより実施されるウェブインタフェース作成及び配置方法であって、
候補個体の個体数を有するデータベースを記憶するメモリを提供することであって、前記候補個体の各々は、１つ以上のウェブインタフェースのファネルを識別し、各々のファネルは、それに従って値を指定することができる複数の次元を有し、各々の候補個体は、前記次元ごとの値を更に識別する、前記メモリを提供することと、
機械学習コンテンツ配信ネットワークにアクセス可能に、前記ファネルの前記次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別するプレゼンテーションデータベースを提供することと、
を含み、
前記機械学習コンテンツ配信ネットワークは、クライアントコンピュータシステムからの要求に応じて、前記データベースから、前記個体数における前記候補個体の選択された１つを取り出し、
前記機械学習コンテンツ配信ネットワークは、前記クライアントコンピュータに対し、前記選択された候補個体の前記次元値によって示されるフロントエンド要素値を有するファネルを配信する、
方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、２０１６年１月５日に出願された米国仮特許出願第６２／２７５，０５８号、「ＡＵＴＯＭＡＴＥＤ  ＣＯＮＶＥＲＳＩＯＮ  ＯＰＴＩＭＩＺＡＴＩＯＮ  ＳＹＳＴＥＭ  ＡＮＤ  ＭＥＴＨＯＤ  ＵＳＩＮＧ  ＭＡＣＨＩＮＥ  ＬＥＡＲＮＩＮＧ」（代理人整理番号：ＧＮＦＮ３３０１−１）の利益を主張する。優先権の仮特許出願は、参照により以下に組み込まれる。
【０００２】
本出願は、２０１６年１月５日に出願された米国仮特許出願第６２／２７５，０７４号、「ＡＵＴＯＭＡＴＥＤ  ＳＥＧＭＥＮＴＡＴＩＯＮ／ＰＥＲＳＯＮＡＬＩＺＡＴＩＯＮ  ＣＯＮＶＥＲＳＩＯＮ  ＯＰＴＩＭＩＺＡＴＩＯＮ  ＵＳＩＮＧ  ＭＡＣＨＩＮＥ  ＬＥＡＲＮＩＮＧ」（代理人整理番号：ＧＮＦＮ３３０２−１）の利益を主張する。優先権の仮特許出願は、参照により以下に組み込まれる。
【０００３】
本出願は、同時に出願された「ＭＡＣＨＩＮＥ  ＬＥＡＲＮＩＮＧ  ＢＡＳＥＤ  ＷＥＢＩＮＴＥＲＦＡＣＥ  ＰＲＯＤＵＣＴＩＯＮ  ＡＮＤ  ＤＥＰＬＯＹＭＥＮＴ  ＳＹＳＴＥＭ」（代理人整理番号：ＧＮＦＮ３３０１−３）と題する米国特許出願を参照により組み込む。
【０００４】
本出願は、同時に出願された「ＷＥＢＩＮＴＥＲＦＡＣＥ  ＧＥＮＥＲＡＴＩＯＮ  ＡＮＤ  ＴＥＳＴＩＮＧ  ＵＳＩＮＧ  ＡＲＴＩＦＩＣＩＡＬ  ＮＥＵＲＡＬＮＥＴＷＯＲＫ」（代理人整理番号：ＧＮＦＮ３３０２−２）と題する米国特許出願を参照により組み込む。
【０００５】
本出願は、同時に出願された「ＷＥＢＩＮＴＥＲＦＡＣＥ  ＰＲＯＤＵＣＴＩＯＮ  ＡＮＤ  ＤＥＰＬＯＹＭＥＮＴ  ＵＳＩＮＧ  ＡＲＴＩＦＩＣＩＡＬ  ＮＥＵＲＡＬＮＥＴＷＯＲＫ」（代理人整理番号：ＧＮＦＮ３３０２−３）と題する米国特許出願を参照により組み込む。
【０００６】
開示される技術は、概して、人工知能を使用してウェブインタフェースを生成及びテストすることに関し、特に、進化的計算を使用していわゆる機械学習変換最適化（ＭＬＣＯ）解法を提供することに関する。
【発明の概要】
【０００７】
本章で議論される主題は、この章におけるその言及の結果として従来技術にすぎないものと想定されるべきではない。同様に、この章で言及され、または背景技術として提供される主題と関連付けられた課題は、従来技術において前に認識されていたものと想定されるべきではない。この章における主題は、それらのアプローチが特許請求される技術の実装態様にも対応することができる異なるアプローチを表しているにすぎない。
【０００８】
開示される技術は、探索空間において全ての可能なウェブページ設計をテストすることなく、探索空間において最も成功したウェブページ設計を効率的に識別するために進化的計算を使用する、いわゆる機械学習変換最適化（ＭＬＣＯ）システムを提供する。探索空間は、マーケティング担当者によって提供されるウェブページ設計に基づいて定義される。単一のウェブページまたは複数のウェブページを有するウェブサイトファネルは、ゲノムとして表される。ゲノムは、ファネルの異なる次元及び次元値を識別する。ゲノムは、良好なパフォーマンスを示す親ゲノム及び良好なパフォーマンスを示す見込みがある孫ゲノムを識別するために、初期化、テスト、競争、及び生殖のような進化的操作を受ける。各々のウェブページは、それが見込みがあるか、すなわち、それが次の世代についての親としての役割を果たすべきか、または破棄されるべきかを決定することが可能な程度までのみテストされる。
【０００９】
ウェブサイト上で制御された実験を実行するための一般的な方法は、洗練された変換最適化解法を含む。変換最適化は、同時にウェブページ及びページ要素の複数の組み合わせ及び変動をテストすることを含む。例えば、２７個の可能な組み合わせ（元の制御バージョンを含む）の合計についての、２つの代替的なイメージと、２つの代替的なヘッドラインを加えたものと、２つのコピーテキストの代替物を加えたものが提供されてもよい。よって、変換最適化は、本当にユーザを従事させるページ要素の最も効果的な組み合わせを判定するために分析される必要がある順列及び組み合わせの更なる複合的なセットを導入する。
【００１０】
ビッグデータがウェブの個人化においてより重要な役割を果たすにつれて、データ信号の数、ルールの複雑性、及び成果の真の数は指数関数的に増加している。それが起こるにつれて、おそらくは成果に影響を与える機会がほとんどないか全くない事実の後を除き、人間の最適化を単純に行うことはできない。アルゴリズム的最適化が必要とされるが、そうであっても、パフォーマンスを予測するために処理される必要がある膨大な数のデータ入力及び結果として生じる測定値を考えると、線形的な関係及び相互関係を扱うことができる単純な線形回帰アルゴリズムは、改善された成果を十分にもたらすことができないことがある。
【００１１】
それらの間の非常に複雑な関係を有する多くの変数が成果を判定する際に伴うテストを実行するために機械学習システムが利用される。機械学習システムは典型的に、変数の間の関係がアルゴリズムを事前に判定するために非常に複雑である場合があると考えると、始める公式を理解することを試みるのではなく、公式を理解するためにデータから学習することを試みる。従って、変換最適化を行う上で多くの変数があるので、入力の大規模なデータセットから学習することに基づいて、成果に関する予測を行うために機械学習、人工知能、及び他の非線形アルゴリズムを利用する非常に洗練されたアルゴリズムが望ましい。
【００１２】
図面では、同様の参照符号は全体的に、異なる図面全体を通じて同様の部分を指す。また、図面は必ずしも寸法通りではなく、代わりに開示される技術の原理を全体的に示すことを強調する。以下の説明では、開示される技術の様々な実装態様が以下の図面を参照して説明される。
【図面の簡単な説明】
【００１３】
【図１】候補探索空間における良好なパフォーマンスを示す候補個体を識別するために進化的計算を実装する変換システムを記す。
【図２】図１における変換システムの進化的計算を実装するために使用することができるモジュールを示す。
【図３】開示される機械学習変換最適化（ＭＬＣＯ）のワークフローを示す。
【図４】複数のウェブインタフェースを有するファネルを示す。
【図５】ファネルのウェブインタフェースレイアウトを記す。
【図６】その次元及び次元値を有するファネルのウェブインタフェースを示す。
【図７】スタータファネルのエディタ設計表現をランタイム設計表現に転換する１つの実装態様の符号図である。
【図８】スタータファネルのスタータ次元及びスタータ次元値を符号化する１つの実装態様の符号図を記す。
【図９】スタータファネルのスタータ次元及びスタータ次元値をスタータ候補個体／スタータゲノムに符号化する１つの実装態様の符号図を示す。
【図１０】スタータファネルに基づいて第１の世代を初期化する１つの実装態様を記す。
【図１１】クロスオーバー技術を使用して新たな候補個体を生殖させる１つの実装態様の符号図を示す。
【図１２】変異技術を使用して候補個体を生殖させる１つの実装態様の符号図である。
【図１３】エンドユーザへのフロントエンド提示のための対応する候補個体に従って１つ以上のウェブインタフェースのファネルを生成する１つの実装態様を示す。
【図１４】エンドユーザへのフロントエンド提示のための対応する候補個体に従って１つ以上のウェブインタフェースのファネルを生成する１つの実装態様を示す。
【図１５】機械学習ユーザデバイス（ＭＬＵＤ）の１つの実装態様である。
【図１６】機械学習コンテンツ配信ネットワーク（ＭＬＣＤＮ）の１つの実装態様を示す。
【図１７】対照個体及び獲得個体、並びに構成する次元及び次元値をグラフィカルに示す。
【図１８】開示される進化的計算の１つの実装態様の例示的な結果をグラフィカルに示すグラフである。
【図１９】開示される進化的計算についてのリスク許容度を実装するリスク許容度モジュール及び候補個体数を区分化する割当モジュールの１つの実装態様を示す。
【図２０】開示される技術を実装するために使用することができるコンピュータシステムの簡易ブロック図である。
【発明を実施するための形態】
【００１４】
以下の議論は、いずれかの当業者が開示される技術を行い、使用することを可能にするために提示され、特定の適用例及びその要件のコンテキストで提供される。開示される実装態様への様々な修正が当業者にとって直ちに明らかであり、本明細書で定義される一般的な原理は、開示される技術の精神及び範囲を逸脱することなく、他の実装態様及び適用例に適用されてもよい。よって、開示される技術は、示される実装態様に限定することを意図していないが、本明細書で開示される原理及び特徴に一貫した最も広い範囲に一致することになる。
【００１５】
開示される実装態様に係るシステム、装置、及び方法の実施例が変換最適化のコンテキストで説明される。他の例では、開示される技術は、多変数テスト、Ａ／Ｂテスト、ランディングページ最適化、変換率最適化、ウェブサイトテスト、ウェブサイト最適化、探索エンジン最適化、情報技術、電気通信システム、財務システム、セキュリティ取引、銀行取引、ビジネスインテリジェンス、マーケティング、医療及び健康科学、マイニング、エネルギーなどに適用されてもよい。他のサービスが可能であり、その結果、以下の実施例が範囲、コンテキスト、または設定において決定的または限定的なもののいずれかとして見なされるべきではない。
【００１６】
開示される技術は、データベースシステム、マルチテナント環境、Ｏｒａｃｌｅ（商標）互換データベースの実装態様、ＩＢＭ  ＤＢ２  Ｅｎｔｅｒｐｒｉｓｅ  Ｓｅｒｖｅｒ（商標）互換関係データベースの実装態様、ＭｙＳＱＬ（商標）若しくはまたはＰｏｓｔｇｒｅＳＱＬ（商標）互換関係データベースの実装態様、またはＭｉｃｒｏｓｏｆｔ  ＳＱＬ  Ｓｅｒｖｅｒ（商標）互換関係データベースの実装態様のような関係データベースの実装態様、或いはＶａｍｐｉｒｅ（商標）互換非関係データベースの実装態様、Ａｐａｃｈｅ  Ｃａｓｓａｎｄｒａ（商標）互換非関係データベースの実装態様、ＢｉｇＴａｂｌｅ（商標）互換非関係データベースの実装態様、またはＨＢａｓｅ（商標）若しくはＤｙｎａｍｏＤＢ（商標）互換非関係データベースの実装態様などのＮｏＳＱＬ（商標）非関係データベースの実装態様を含む、いずれかのコンピュータにより実施されるシステムのコンテキストにおいて実装されてもよい。加えて、開示される技術は、ＭａｐＲｅｄｕｃｅ（商標）、バルク同期プログラミング、ＭＰＩプリミティブなどのような異なるプログラミングモデル、またはＡｍａｚｏｎ  Ｅｌａｓｔｉｃｓｅａｒｃｈ  Ｓｅｒｖｉｃｅ（商標）及びＡｍａｚｏｎ  Ｋｉｎｅｓｉｓ（商標）を含むＡｍａｚｏｎ  Ｗｅｂ  Ｓｅｒｖｉｃｅ（ＡＷＳ）（商標）、Ａｐａｃｈｅ  Ｓｔｏｒｍ（商標）、Ａｐａｃｈｅ  Ｓｐａｒｋ（商標）、Ａｐａｃｈｅ  Ｋａｆｋａ（商標）、Ａｐａｃｈｅ  Ｆｌｉｎｋ（商標）、Ｔｒｕｖｉｓｏ（商標）、ＩＢＭ  Ｉｎｆｏ−Ｓｐｈｅｒｅ（商標）、Ｂｏｒｅａｌｉｓ（商標）、及び  Ｙａｈｏｏ！  Ｓ４（商標）のような異なるスケーラブルバッチ及びストリーム管理システムを使用して実装されてもよい。
【００１７】
本明細書で使用されるように、情報の項目の「識別」は、情報のその項目の直接の仕様を必ずしも必要としない。情報は、間接参照の１つ以上の層を通じて実際の情報を単純に参照することによって、または情報の実際の項目を判定するために共に十分である異なる情報の１つ以上の項目を識別することによって、フィールドにおいて「識別され」てもよい。加えて、用語「指定する」は、「識別する」と同一の意味であるとして本明細書で使用される。
【００１８】
本明細書で使用されるように、所与の信号、イベント、または値は、所与の信号、イベント、または値によって影響される先行する信号、イベント、または値の先行する信号、イベント、または値「に従う」。間に入る処理要素が存在する場合、ステップ若しくは期間、所与の信号、イベント、または値はなお、先行する信号、イベント、または値「に従う」。間に入る処理要素またはステップが１つよりも多い信号、イベント、または値を組み合わせる場合、処理要素またはステップの信号出力は、信号、イベント、または値の入力の各々「に従う」と考えられる。所与の信号、イベント、または値が先行する信号、イベント、または値と同一である場合、これは、所与の信号、イベント、または値がなお、信号、イベント、または値「に従い」若しくはそれら「に依存し」、またはそれら「に基づいている」と考えられる退化したケースにすぎない。所与の信号、イベント、または値の別の信号、イベント、または値に対する「反応性」が同様に定義される。
【００１９】
本明細書で使用されるように、「同時に」または「並列して」は、正確に同時である必要はない。個体の１つの評価が個体のもう一つの評価が完了する前に始まる場合に十分である。
【００２０】
本明細書で使用されるように、用語「ファネル」は、エンドユーザによって知覚可能、動作可能、及び理解可能である、候補個体のフロントエンドを指す。実装態様では、ファネルは、ユーザ対話を引き起こし、それに応答する。ファネルは、１つ以上のウェブインタフェースを含む。ウェブインタフェースのいくつかの例は、ウェブページ、ウェブサイト、電子メール、モバイルアプリケーション、デスクトップアプリケーション、デジタル広告、ソーシャルメディアメッセージ（例えば、Ｔｗｅｅｔ（商標）、Ｆａｃｅｂｏｏｋ  ｐｏｓｔ（商標））、ソーシャルメディアフィードアイテム、ソーシャルメディアプロファイル、ソーシャルメディアアカウント、ソーシャルメディアチャットメッセージ、汎用チャットメッセージ、フォーム、及び自動記入フォームなどの、制御バージョン及びその変形の両方を含む。
【００２１】
開示される技術の実装態様では、ファネルは、ウェブサイト（ファネルのセット）などの１つ以上のインターネットアクセス可能データセンタにおいてまたはそれにわたって、ウェブサイトの背後で実行する関連付けられたアプリケーションと共に実装される。エンドユーザは、ファネルにアクセス可能であり、ファネルと対話可能であるインターネットアクセス可能クライアントデバイスまたはクライアント（例えば、デスクトップコンピュータ、ノートブックコンピュータ、タブレット、モバイルデバイス、電話、またはレンダリングエンジンを有する他のデバイスなど）を操作する。１つの実装態様では、エンドユーザは、ウェブブラウザまたはモバイルアプリケーションを開くことによってファネルにアクセスする。いくつかの実装態様では、エンドユーザは、ファネル（または、その一部）に認証してもよい。
【００２２】
開示される技術の実装態様では、ウェブインタフェースは、その構造が基本的なフォーマットに従う構造化ドキュメントである。例えば、１つの実装態様では、ウェブインタフェースは、ハイパーテキストマークアップ言語（ＨＴＭＬ）、拡張可能マークアップ言語（ＸＭＬ）、または他のウェブサポート構造化ドキュメントに基づいているウェブサポートフォーマットを有する。ウェブインタフェースは、１つ以上のリソース（例えば、ＪａｖａＳｃｒｉｐｔ（登録商標）リソース、Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔ（ＣＳＳ）リソース、Ａｓｙｎｃｈｒｏｎｏｕｓ  ａｎｄ  ＪａｖａＳｃｒｉｐｔ  ＸＭＬ（ＡＪＡＸ）リソース、イメージリソース、ビデオリソースなど）、またはより典型的に、ウェブインタフェース内に組み込まれる、そのようなリソースへの参照を含んでもよい。例として、ウェブインタフェースに組み込まれるリソースは、概して、リソースのタイプに応じて、とりわけ、スクリプト要素、スタイル要素、イメージ要素、またはオブジェクト要素の中に含まれてもよく、またはそれらの中で指定されてもよい。典型的には、エンドユーザのクライアントデバイスにおいて実行するウェブブラウザまたは他のクライアントアプリケーションは、受信されるウェブインタフェースのドキュメントオブジェクトモデル（ＤＯＭ）の表現を構築する。
【００２３】
別の実装態様では、ウェブインタフェースは、プレーンテキスト、リッチテキスト、またはＨＴＭＬ（ＣＳＳなどのスタイル定義フォーマット若しくはＪａｖａＳｃｒｉｐｔなどのフォーマットにあるスクリプト命令、例えば、Ｍｉｃｒｏｓｏｆｔ  Ｏｕｔｌｏｏｋ（商標）、Ｇｏｏｇｌｅ  Ｇｍａｉｌ（商標）、Ａｐｐｌｅ  Ｍａｉｌ（商標）、ｉＯＳ  Ｍａｉｌ（商標）、Ｔｈｕｎｄｅｒｂｉｒｄ（商標）、ＡＯＬ  Ｍａｉｌ（商標）、Ｙａｈｏｏ  Ｍａｉｌ（商標）、Ｗｉｎｄｏｗｓ  Ｌｉｖｅ（商標）を有し、若しくはそれらを有さない）に基づいている電子メールフォーマット、及びハイブリッドフォーマットを有する。
【００２４】
いずれかの他の従来のまたは後に開発される構造化ドキュメントまたはそのフォーマット若しくはそれに使用されるフォーマットは、ウェブインタフェースであるものと考えられる。そのような実装態様は、開示される技術（ウェブインタフェースの音声または触覚の提示など）の精神及び範囲から逸脱することなく当業者にとって直ちに明らかである。
【００２５】
ウェブインタフェース（例えば、ウェブページ、ウェブサイト、電子メール、モバイルアプリケーション、デスクトップアプリケーション、デジタル広告）は、ページ要素を含む。ページ要素のいくつかの例は、イメージ、ビデオ、アニメーション、ヘッドライン、ヘディング、コールトゥアクション、テキストコピー、フォーム長、及びその他を含む。１つの例では、コールトゥアクションは、ユーザがウェブインタフェースのいずれか一部をクリックまたはタップするときに何が発生するかを定義する。ウェブインタフェースのページ要素は、いわゆるウェブインタフェースレイアウトに配置される。ウェブインタフェースレイアウトは、相互のウェブインタフェースのページ要素の位置決めを定義する。例えば、イメージはウェブインタフェースレイアウトの下右にあってもよく、ビデオはウェブインタフェースレイアウトの中心にあってもよい。ウェブインタフェースでは、全ての相互変更可能なページ要素は、ウェブインタフェースレイアウトを使用して記述され、ウェブインタフェースレイアウトは、ページ要素がどのように相互に現れることになるか、及びそれらがどのように相互に対話することになるかを記述する。各々のページ要素は、いくつかの特性を有する。例えば、イメージページ要素は、タイプ、配置、及びサイズに関連する特性を有し、コールトゥアクションは、色、テキスト、及びサイズに関連する特性を有し、テキストコピーは、コンテンツ、長さ、及びサイズに関連する特性を有する。
【００２６】
本明細書で使用されるように、用語「ファネル（複数可）」、「候補個体（複数可）」、「個体（複数可）」、「ゲノム（複数可）」、及び「染色体（複数可）」は、交換可能に使用される。また、「個体（複数可）」、「ゲノム（複数可）」、及び「染色体（複数可）」は、遺伝子（複数可）及び／または「遺伝子値（複数可）」から構成される。本明細書で使用されるように、用語「遺伝子（複数可）」及び／または「遺伝子値（複数可）」は、クラスタ（複数可）若しくはページ要素（複数可）若しくは要素（複数可）若しくは次元（複数可）若しくはスタータ次元（複数可）、ページ要素値（複数可）若しくは要素値（複数可）若しくは次元値（複数可）若しくはスタータ次元値（複数可）若しくは値（複数可）、部分列（複数可）、サブ要素（複数可）若しくは制御サブ要素（複数可）若しくはテストサブ要素（複数可）、サブ要素値（複数可）若しくは制御サブ要素値（複数可）若しくはテストサブ要素値、またはそれらのいずれかの組み合わせなど、異なる「エンティティ」及び／または「エンティティ（複数可）」を指すことができる。従って、本明細書で使用されるように、遺伝子ごとの選択、遺伝子ごとのクロスオーバー、または遺伝子ごとの変異など、「遺伝子ごとの」操作または「遺伝子レベル」において行われ、若しくは実施される操作は、単一のエンティティを、選択し、クロスオーバーし、及び／若しくは変異させる単一の単位として取り扱うことができ、またはエンティティの組み合わせを、選択し、クロスオーバーし、及び／若しくは変異させる単一の単位として取り扱うことができる。
【００２７】
導入
開示される技術は、探索空間において全ての可能なウェブページ設計をテストすることなく、探索空間において最も成功したウェブページ設計を効率的に識別するために進化的計算を使用する、いわゆる機械学習変換最適化（ＭＬＣＯ）システムを提供する。探索空間は、マーケティング担当者によって提供されるウェブページ設計に基づいて定義される。単一のウェブページまたは複数のウェブページを有するウェブサイトファネルは、ゲノムとして表される。ゲノムは、ファネルの異なる次元及び次元値を識別する。ゲノムは、良好なパフォーマンスを示す親ゲノム及び良好なパフォーマンスを示す見込みがある孫ゲノムを識別するために、初期化、テスト、競争、及び生殖のような進化的操作を受ける。各々のウェブページは、それが見込みがあるか、すなわち、それが次の世代についての親としての役割を果たすべきか、または破棄されるべきかを決定することが可能な程度までのみテストされる。
【００２８】
電子商取引では、ユーザ経験、すなわち、できるだけ多くのエンドユーザを、何気なく閲覧する閲覧者から支払い顧客に変換する、ウェブページ及び対話を設計することが重要な目標である。単純さ及び一貫性を含む、いくつかの公知の設計の原理が存在するが、どの程度それが変換するかを判定するページの要素の間の予期しない対話も存在することが多い。同一の要素は、１つのコンテキストでは良好に作用することがあるが、その他ではそうではなく、結果を予測することが困難であることが多く、どのように所与のページを改善するかを決定することが更に困難である。
【００２９】
それらの課題に全体的に取り組む産業が現れており、変換率最適化、または変換科学と呼ばれる。実践者のほとんどが使用する標準的な方法、Ａ／Ｂテスト、すなわち、同一のページの２つの異なるバージョンを設計し、異なるユーザにそれらを示し、どの程度それらの各々が変換するかについての統計を収集することである。この処理によって、領域及び変換最適化に関する人類の知識を設計に組み込み、次いで、それらの効果をテストすることが可能になる。結果を観察した後、新たな設計が比較されてもよく、徐々に改善することができる。Ａ／Ｂテスト処理は、困難かつ時間を要するものであり、ページ設計の非常にわずかな部分のみがこのようにしてテストされることがあり、設計における僅かな対話は単純に、完全に失敗することがある。
【００３０】
開示される技術は、マーケティング担当者自体が作成する変数及び変数値からテストされることになるウェブページ候補を自動生成する。変数及び変数値は、ボタンの色及びフォントの重みのような小さな変更から全体規模のメッセージング及び設計仕様までの、ウェブサイトに関するいずれかであってもよい。それらの変数は全て、ファネルにおける単一のページ上にあってもよく、または複数のページにわたってもよい。開示される技術は、値の可能な組み合わせの膨大な空間において最も成功した変数及び変数値を探索する。
【００３１】
開示される技術で、数千のページ設計が短時間にテストされることがあり、これは、Ａ／Ｂテストを通じてでは不可能である。一方で、進化的探索を通じて、開示される技術は、最良の１つを見出すために、ページ設計の更なる大きなセット（例えば、数１００万の）中からページ設計の小さなサブセット（例えば、数千の）のみをテストする。開示される技術は、要素のどの組み合わせが効果的であるかを経時的に学習し、最も見込みのある設計を探し回ることに徐々に集中する。
【００３２】
開示される技術は、短縮化された時間フレームにおいてより多くの項目を膨大にテストすることが可能な、変換最適化のために自動化システムである。それは、変換が増大することにつながる変数の僅かな組み合わせを見出す。開示される技術は、人類によって設計されるものよりも良好に変換する設計を発見することができ、なぜならば、それは、要素の間の予期しない対話を見出すことが多いからである。例えば、開示される技術は、ボタンが緑である必要があるが、それが透明であり、ヘッダが小さいフォントであり、ヘッダテキストが整列されているときのみ、その必要があることを見出すことができる。そのような対話が存在することが多く、それらは、見出すことが非常に困難である場合がある。開示される技術は、高価な人類の努力の代わりに、人工知能に基づいてこの発見処理を自動にする。開示される技術で、よって、変換を以前よりも良好に、かつ以前よりもさらに大きな規模で最適化することが可能であり、電子商取引条件が変わるにつれてそれらを最適化し続けることが可能である。
【００３３】
機械学習変換最適化（ＭＬＣＯ）システム
図１は、候補探索空間における良好なパフォーマンスを示す候補個体を識別するために進化的計算を実装する変換システム１０４を記す。変換システム１０４は、候補個体数１０２における候補個体についてのパフォーマンス測定値１０６を永続的に収集及び発展させることによってそれを行う。変換システム１０４はまた、候補個体を１つ以上のウェブインタフェースのファネルに転換するためにプレゼンテーションジェネレータを使用する。ファネルは、エンドユーザによって提供される評価データ（例えば、ユーザのクリック）に基づいて対応する候補個体についてのパフォーマンス測定値１０６を発展させることができるように、ライブのオンライン評価１０８の間にエンドユーザに提示される。
【００３４】
各々のファネルは、それによって標的のユーザの行動の達成を検出することができるメカニズムを有する。１つの実装態様では、標的のユーザの行動は、エンドユーザによる変換である。ファネルごとに、設計者、マーケティング担当者、広告担当者、またはコンテンツ作成者によって定義される変換目標に基づいて変換を検出することができる。変換目標の例は、ファネルの特定のウェブインタフェースにユーザが到達すること（例えば、サンキューページ）、ファネルのウェブインタフェース上のリンク若しくはボタン、または他のユーザインタフェース要素をユーザがクリックすること、或いは設計者によって定義されたいずれかの他のカスタムイベント（例えば、ｊＱｕｅｒｙを使用した）を含む。変換目標の他の例は、Ａｍａｚｏｎ．ｃｏｍ（商標）上の「Ｂｕｙ  Ｎｏｗ」ボタンをユーザがクリックすること、電子メール登録ページ上の「Ｓｉｇｎ  Ｕｐ」ボタンをユーザがクリックすること、アプリケーションランディングページ上の「Ｄｏｗｎｌｏａｄ  Ｎｏｗ」ボタンをユーザがクリックすること、レポートをダウンロードするためにフォームをユーザが記入すること、ウェビナをユーザがサインアップすること、購入処理をユーザが完了すること、ショッピングカートにアイテムをユーザが追加すること、ショッピングカートのチェックアウトをユーザが初期化すること、及び本を読むために誓約をユーザが行うことを含む。変換目標は、異なるファネル及び異なるテスト環境について異なってもよい。
【００３５】
変換システム１０４は、パフォーマンス測定値１０６に従って動作し、パフォーマンス測定値は、変換システム１０４に対し、候補個体の適応度をどのように測定するかを示す。変換システム１０４は、最大の適応度を有する候補個体について最適化するが、適応度は、パフォーマンス測定値１０６によって定義される。パフォーマンス測定値１０６は、標的のユーザの行動を達成する際の候補個体及び対応するファネルの成功のインジケータである。パフォーマンス測定値１０６は、特定の適用の環境及び目標に特有である。ウェブページテスト環境では、例えば、パフォーマンス測定値１０６は、ファネルについて定義された変換目標に応じている。１つの実装態様では、パフォーマンス測定値１０６は、「変換率」に基づいている。変換率は、ファネルを訪問するエンドユーザ、及びファネルについて定義された変換目標を完了するエンドユーザの比率である（すなわち、変換目標を完了する訪問者が何パーセントあるか）。例えば、５０００の訪問者及び５０の変換を有するウェブサイトは、１％の変換率を有する。別の実装態様では、パフォーマンス測定値１０６は、「収益率」に基づいている。収益率は、ファネルについて定義された変換目標をエンドユーザが完了する結果としてエンドユーザごとに生成される収益量（例えば、ドル価格値）である。
【００３６】
ライブのオンライン評価１０８に関して、「ライブのオンライン評価」は、候補個体に従って構築されたファネルがテストのために実世界のエンドユーザに提示されるリアルタイムのテストまたはトライアルを意味する。ライブのオンライン評価１０８の間、パフォーマンス測定値１０６は、対応するファネルとのリアルタイム且つ実世界のユーザ対話に基づいて候補個体ごとに発展する。典型的には、ファネルごとに、パフォーマンス測定値１０６は、エンドユーザのサンプル（例えば、１０００のエンドユーザまたは２０００のエンドユーザなど）にわたって判定される。ライブのオンライン評価１０８の間のファネルのパフォーマンスに基づいて計算されたパフォーマンス測定値１０６は、ファネルを生成するために元々使用される対応する候補個体と関連付けられ、それにリンク付けられ、またはそれに割り当てられることに留意されたい。その後、パフォーマンス測定値１０６は、良好なパフォーマンスを示す個体を生殖させるために開示される進化的計算によって使用される。
【００３７】
変換システム１０４は、候補個体数１０２を含むデータベースと対話する。本明細書で使用されるように、用語「データベース」は、いずれかの統一した構造を必ずしも暗示しない。例えば、２つ以上の別個のデータベースは、共に考えられるとき、その用語が本明細書で使用されるようになお「データベース」を構成する。いくつかの実装態様では、データベースは、マルチテナントデータベースシステム（ＭＴＤＳ）など、多くの方法で実装することができる、オンデマンドデータベースサービス（ＯＤＤＳ）を形成するように１つ以上のテナントからの情報を共通データベースイメージのテーブルに記憶することができる。データベースイメージは、１つ以上のデータベースオブジェクトを含むことができる。他の実装態様では、データベースは、関係データベース管理システム（ＲＤＢＭＳ）、オブジェクト指向データベース管理システム（ＯＯＤＢＭＳ）、分散ファイルシステム（ＤＦＳ）、非スキーマデータベース、またはいずれかの他のデータ記憶システム若しくはコンピューティングデバイスとすることができる。
【００３８】
１つの実装態様では、個体数１０２における候補個体は、従来のデータベース管理システム（ＤＢＭＳ）によって記憶及び管理され、ＳＱＬ文を使用してアクセスされる。よって、従来のＳＱＬクエリは、例えば、候補個体のパフォーマンス測定値１０６を取得するために使用されてもよい。新たな候補個体は、ＳＱＬ「ｉｎｓｅｒｔ」文を使用して個体数１０２に挿入されてもよく、破棄される候補個体は、ＳＱＬ「ｄｅｌｅｔｅ」文を使用して削除されてもよい。別の実装態様では、個体数１０２における候補個体は、リンク付けリストに記憶される。そのような実装態様では、その内容をフリーリストにおける要素に書き込み、次いで、要素をメインのリンク付けリストにリンク付けすることによって新たな候補個体の挿入を達成することができる。候補個体を破棄することは、それらをメインのリンク付けリストからリンク付け解除し、それらをフリーリストに再リンク付けすることを含む。
【００３９】
いくつかの実装態様では、ＭＬＣＯシステムは、任意選択のフルフィルメントシステム１１０を使用する。フルフィルメントシステム１１０は、変換システム１０４からの出力／アクション信号によって自動制御されるシステムである。ウェブページテスト環境では、例えば、フルフィルメントシステム１１０は、コンピュータネットワーク（図示せず）を介して信号を受信し、適切な取引及び配送アクションをとる製品分布電子倉庫（例えば、Ａｍａｚｏｎ．ｃｏｍ（商標））である。
【００４０】
ここで議論は、図１のＭＬＣＯシステムによって実装される進化的計算に向けられる。
【００４１】
進化的計算
図２は、図１における変換システム１０４の進化的計算を実装するために使用することができるモジュールを示す。図２では、実線はデータフローを示し、破線は制御フローを示し、点線は任意選択のモジュールを示す。図２におけるモジュールは、ハードウェアまたはソフトウェアにおいて実装されてもよく、図２に示されるような同一のブロックに正確に分けられる必要はない。モジュールのいくつかはまた、異なるプロセッサ若しくはコンピュータ上で実装されてもよく、またはいくつかのプロセッサ若しくはコンピュータの間で分散されてもよい。加えて、モジュールのいくつかは、達成される機能に影響を与えることなく、組み合わされてもよく、並列して動作してもよく、または図２に示される順序と異なる順序で動作してもよい。また、本明細書で使用されるように、用語「モジュール」は、それら自体が本明細書でモジュールを構成すると考えられてもよい、「サブモジュール」を含むことができる。特に、候補テスト２１２、競争モジュール２２２、及び生殖モジュール２２８はまた、本明細書で候補処理２２０のサブモジュールであると考えられる。モジュールとして指定される図２におけるブロックはまた、方法におけるフローチャートのステップとして考えられてもよい。モジュールはまた、メモリに隣接して配置された全てのそのコードを必ずしも有する必要はなく、コードのいくつかの部分は、間に配置された他のモジュールまたは他の機能からのコードを有するコードの他の部分とは別々であってもよい。
【００４２】
個体数初期化
図２を参照して、候補個体数１０２は、候補個体の予備プールを個体数１０２に書き込む、個体数初期化モジュール２０２によって初期化される。予備プールは、ランダムに作成されてもよく、またはいくつかの実装態様では、第１の世代を接種するために先天的知識が使用されてもよい。別の実装態様では、新規のランを接種するために、過去のランからの候補個体を借用することが可能である。スタート時点では、すべての候補個体は、定義されていないとして示されるパフォーマンス測定値１０６で初期化される。
【００４３】
個体数初期化モジュール２０２はまた、候補探索空間を定義する。本明細書で使用されるように、用語「候補探索空間」は、Ｍ個の次元を有する空間を指し、各々の次元は、それに沿って異なる候補個体が異なる値を有することができる軸を表す。各々の次元における空間のサイズは、その次元について利用可能な値の範囲に等しい。
【００４４】
以下の議論は、どのようにスタータファネルが設計エディタを使用して設計者、マーケティング担当者、広告担当者、またはコンテンツ作成者によって定義されるかを説明する。一旦定義されると、スタータファネルは、候補探索空間を定義し、第１の世代を接種するために個体数初期化モジュール２０２によって使用される。
【００４５】
スタータファネル定義
候補探索空間は、少なくとも１つのスタータファネル、並びにそのスタータウェブインタフェースのスタータ次元及びスタータ次元値に従って個体数初期化モジュール２０２によって定義される。実装態様では、スタータファネルは、図３に示されるように、設計エディタ３０２を使用して定義される。設計エディタ３０２は、ＭＬＣＯワークフローを実装するために、設計者、マーケティング担当者、広告担当者、またはコンテンツ作成者によって使用されるインタフェース３０４の一部としての様々なインタフェース構成要素を含む。特に、設計エディタ３０２は、スタータファネルの１つ以上のスタータウェブインタフェースを指定し、スタータファネルについての変換目標を設定し、スタータファネルのパフォーマンス測定値を設定し、スタータファネルのスタータウェブインタフェースごとのスタータ次元及びスタータ次元値を設定し、スタータファネルをプレビューし、テストを配置するために、設計者によって使用される。
【００４６】
図４は、３つのスタータウェブインタフェース（例えば、１つのランディングページ及び２つのファネルページ）を有するスタータファネルの１つの実装態様を示す。１つの実装態様では、スタータウェブインタフェースは、それらのそれぞれのアクセス経路（例えば、ユニファイドリソースロケータ（ＵＲＬ））によってスタータファネルにおいて識別され、トポロジの順に配置される。典型的には、トポロジの順は、ファネルについて定義される変換目標を完了するためにエンドユーザが進むファネル中の経路を判定する。トポロジの順は、インタフェース３０４にわたって設計者によってグラフィカルに設定され、メモリに論理的に記憶される。
【００４７】
図４はまた、設計者がスタータファネルについての変換目標を設定することを可能にする「変換目標定義」ボタンを記す。変換目標の例はまた、「リードの増加」または「収益の増加」を含む。設計者はまた、どのタイプのイベントが、サンキューページに訪問すること、ボタン若しくはリンクをクリックすること、またはカスタムイベントなど、変換が発生したことを示すと考えられるかを定義する。変換目標を設定した後、設計者は、スタータファネルについてのパフォーマンス測定値を指定する。パフォーマンス測定値は、テストの間の候補個体のパフォーマンスを評価するために開示される進化的計算にて使用される。
【００４８】
次いで、スタータファネルについてのウェブインタフェースレイアウトが生成される。本明細書で使用されるように、「ウェブインタフェースレイアウト」は、その中で次元についての代替的な値がファネルの特定のウェブインタフェースを定義するために挿入されるテンプレートにすぎない。１つの実装態様では、ウェブインタフェースレイアウトは、可変スクリーンのキャンバスを有するデバイスのオプションの中から（例えば、スマートフォン、タブレット、コンピュータ、ウェアラブルデバイス）設計者によって選択されたシミュレートされたデバイスにわたって表示される。いくつかの実装態様では、デバイスのオプションは、ｉＰｈｏｎｅ６（商標）、Ｓａｍｓｕｎｇ  ＧａｌａｘｙＳ６（商標）、及びその他のような異なるデバイスモデルが挙げられる。図５は、ウェブインタフェースレイアウト、並びにウェブインタフェースレイアウトに適用することができる次元及び次元値の１つの実装態様を示す。
【００４９】
次いで、設計者は、スタータファネルのスタータウェブインタフェースごとのウェブインタフェースレイアウトに含まれることになる異なるページ要素（本明細書で「スタータ次元」と称される）を選択する。１つの実装態様では、設計者はまた、ページ要素についてのタイプを指定する。例えば、ページ要素の名前は、「Ｃｌｅａｎ，Ａｗｅｓｏｍｅ  ａｎｄ  Ｍｕｌｔｉ−Ｐｕｒｐｏｓｅ」であり、ページ要素のタイプは、「Ｈｅａｄｌｉｎｅ−Ｍａｉｎ」である。更に進むと、設計者は、スタータファネルのスタータウェブインタフェースごとに異なるサブ要素（本明細書で「スタータ次元」と称される）を定義する。サブ要素の例は、テキスト、書式設定／ＣＳＳ（Ｃａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔｓ）、ページ要素の隠蔽、ページ要素の除去、クラス、ＨＴＭＬ、カスタムｊＱｕｅｒｙ、及びイメージを含む。いくつかの実装態様では、設計者は、サブ要素のいくつかを活性化または非活性化することができる（例えば、ドロップダウンを使用して）。１つの実装態様では、非活性なサブ要素は、インタフェース３０４にわたって取消線を有して表示される。他の実装態様では、設計エディタ３０２は、いくつかのサブ要素を自動的に活性し、その他を非活性にする。
【００５０】
次いで、設計者は、定義されたサブ要素ごとにサブ要素値（本明細書で「スタータ次元値」と称される）を設定する。加えて、設計者はまた、定義されたサブ要素ごとに、制御サブ要素値及び１つ以上のテストサブ要素値を設定する。他の実装態様では、設計エディタ３０２は、サブ要素についてのデフォルトの制御値を自動で設定する。例えば、ページ要素「Ｈｅａｄｌｉｎｅ−Ｍａｉｎ」について、制御サブ要素値は、「Ｃｌｅａｎ，Ａｗｅｓｏｍｅ  ａｎｄ  Ｍｕｌｔｉ−Ｐｕｒｐｏｓｅ」になるように設定され、テストサブ要素値は、「Ｓｌｉｃｋ，Ａｗｅｓｏｍｅ  ａｎｄ  Ｐｏｗｅｒｆｕｌ」、「Ｎｅｗ，Ｆａｓｔ，Ｂｅｔｔｅｒ」、「Ｓｈｉｎｙ，Ｂｅｔｔｅｒ  ｔｈａｎ  ｔｈｅ  ｃｏｍｐｅｔｉｔｉｏｎ」、及び「Ｂｅｓｔ  ｙｏｕ  ｃａｎ  Ｂｕｙ」になるように設定される。同様に、他の実装態様では、異なるページ要素、並びに対応するサブ要素及びサブ要素値は、スタータファネルのスタータウェブインタフェースの各々のスタータ次元及びスタータ次元値のセットとして定義されてもよい。
【００５１】
ファネルの各々のウェブインタフェースは、ベクトルに基づく探索空間におけるポイントとして考えられてもよい。ベクトル空間内の各々の次元軸は、ページ要素のうちの１つに対応し、所与の軸に沿った各々の異なる座標位置は、そのページ要素についての設計者により指定された代替のうちの１つを示す。例えば、図５では、コールトゥアクション次元は、４つの座標位置（値またはその代替）、すなわち、「Ｇｏ！」、「Ｇｏ  ｔｏ  ｔｈｅ  Ａｕｃｔｉｏｎ！」、「Ｗｉｎ  ｔｈｅ  Ａｕｃｔｉｏｎ！」、及び  「Ｗｉｎ  ｉｔ  ＮＯＷ！」を有する。ファネルの特定のウェブインタフェースは、ページ要素／次元ごとの値を指定する。
【００５２】
図６は、ファネルのウェブインタフェースの１つの実装態様を示す。図６では、ウェブインタフェースは、ウェブインタフェースレイアウト内の異なるページ要素／次元の配置または位置と、ピクチャの選択肢（ページ要素／次元）、背景イメージ（ページ要素／次元）、背景色（ページ要素特性／次元値）、ヘッドラインコピー（ページ要素／次元）、ヘッドラインコピーのタイプフェース及び色（ページ要素特性／次元値）、ロゴの出現または隠蔽（ページ要素／次元）、部分ヘッドコピー（ページ要素／次元）、部分ヘッドコピーのタイプフェース及び色（ページ要素特性／次元値）、ディスクリプションコピー（ページ要素／次元）、ディスクリプションコピーのタイプフェース及び色（ページ要素特性／次元値）、フォーンコールトゥアクション（ページ要素／次元）、フォーンコールトゥアクションのタイプ、フォーマット、及び色（ページ要素特性／次元値）、フォーム設計（ページ要素／次元）、ボタン（ページ要素／次元）、並びにボタンの形状、色、及びテキスト（ページ要素特性／次元値）を含む、ページ要素／次元の対応する特性または値とによって定義される。
【００５３】
一旦作成されると、スタータファネルのプレビュー、及びその構成するスタータウェブインタフェースは、インタフェース３０４にわたって設計者に提示される。
【００５４】
スタータファネルの定義を理解した上で、ここで議論は、対応するスタータ候補個体がスタータファネルを符号化することによってランタイムにおいてどのように初期化されるかに向けられる。
【００５５】
スタータ個体初期化
図７は、スタータファネルのエディタ設計表現７０２をランタイム設計表現７１２に転換する１つの実装態様の符号図である。ランタイム３２２において、設計者によって定義されるスタータファネルのエディタ設計表現７０２は、ランタイム設計表現７１２に転換される。図７で使用される例では、エディタ設計表現７０２は、ツリーを含む。ツリーのルートは、それに対してテストが実行される最高レベルの粒度である。ウェブサイトまたはモバイルウェブページについて、ルートはドメインである。モバイルアプリケーションについて、ルートはアプリケーションである。電子メールについて、ルートは電子メールであり、件名及びページは、次のレベルのツリーである。他のアプリケーション（広告など）について、異なるマッピングが使用されてもよい。ウェブページ及びモバイルアプリケーションのドメインでは、ウェブサイトは、１つからｎ個のファネルを有し、各々のファネルは、目標、及び１つからｎ個のページを有する。各々のページは、要素の１つからｎ個のクラスタを有する。各々のクラスタは、１つからｎ個の要素を有する。各々の要素は、要素の特性を変更するサブ要素のセットを有する。本明細書で使用されるように、サブ要素は、要素でもある。各々のサブ要素は、１つからｎ個の値を有する。他の実装態様では、構造は異なってもよい。例えば、要素は、全くクラスタ化されなくてもよく、または表現は、全く階層化されなくてもよい。
【００５６】
また、ランタイム３２２において、スタータファネルは、それを二進式として符号化するスタータゲノムによって表される。１つの実装態様では、二進符号化は、ツリーのリーフの連結であり、スタータファネルの場合、スタータファネルのスタータウェブインタフェースの各々のスタータ次元及びスタータ次元値を連結することを含む。いくつかの実装態様では、ゲノムの符号化の前に、エディタ設計者表現７０２の概略表現は、ランタイム設計表現７１２の形式で生成される。他の実装態様では、ゲノムの符号化は、量的若しくは数的データタイプ、質的データタイプ、離散データタイプ、連続的データタイプ（上限及び下限を有する）、整数データタイプ（上限及び下限を有する）、公称データタイプ、序数若しくはランク付けデータタイプ、分類別データタイプ、間隔的データタイプ、並びに／または比率データタイプなど、二進データタイプ（０または１）以外のデータタイプに依存した他の方式に基づいてもよい。例えば、ゲノムの符号化は、０〜１の実数値、０〜２５６の赤、緑、青（ＲＧＢ）値などの連続値、ＣＳＳ色の１６進数値（例えば、＃Ｆ０Ｆ８ＦＦ）、ＣＳＳ色の分類別色値（例えば、ＡｌｉｃｅＢｌｕｅ）、他のＣＳＳ特性グループ及び特性のそれぞれの値（＜ｈｔｔｐ：／／ｗｗｗ．ｗ３ｓｃｈｏｏｌｓ．ｃｏｍ／ｃｓｓｒｅｆ／＃ａｎｉｍａｔｉｏｎ＞におけるウェブ上でリスト化された１つなど）、特定の次元のサイズ（例えば、高さ及び幅）、異なる値及びデータタイプのセット（例えば、異なる数的なドル価格値、若しくは異なる数的なドル価格値と、高さ及び幅との組み合わせ）、並びにその他に基づいてもよく、またはそれらのいずれかの組み合わせに基づいてもよい。
【００５７】
図８は、スタータファネルのスタータ次元及びスタータ次元値を符号化する１つの実装態様の符号図を記す。図８では、スタータファネルのサブ要素８０６に対応するクラスタ８０２、要素８０４、サブ要素８０６、及びサブ要素８０８は、二進列符号化８１０に符号化される。二進列符号化８１０では、サブ要素値ごとの最も左のビットは、制御値である。他の実装態様では、二進列符号化８１０は、量的若しくは数的データタイプ、質的データタイプ、離散データタイプ、連続的データタイプ（上限及び下限を有する）、整数データタイプ（上限及び下限を有する）、公称データタイプ、序数若しくはランク付けデータタイプ、分類別データタイプ、間隔的データタイプ、並びに／または比率データタイプなど、二進データタイプ（０または１）以外のデータタイプに依存した他の方式に基づいてもよい。例えば、二進列符号化８１０は、０〜１の実数値、０〜２５６の赤、緑、青（ＲＧＢ）値などの連続値、ＣＳＳ色の１６進数値（例えば、＃Ｆ０Ｆ８ＦＦ）、ＣＳＳ色の分類別色値（例えば、ＡｌｉｃｅＢｌｕｅ）、他のＣＳＳ特性グループ及び特性のそれぞれの値（＜ｈｔｔｐ：／／ｗｗｗ．ｗ３ｓｃｈｏｏｌｓ．ｃｏｍ／ｃｓｓｒｅｆ／＃ａｎｉｍａｔｉｏｎ＞におけるウェブ上でリスト化された１つなど）、特定の次元のサイズ（例えば、高さ及び幅）、異なる値及びデータタイプのセット（例えば、異なる数的なドル価格値、若しくは異なる数的なドル価格値と、高さ及び幅との組み合わせ）、並びにその他に基づいてもよく、またはそれらのいずれかの組み合わせに基づいてもよい。
【００５８】
図９は、スタータファネルのスタータ次元９０２及びスタータ次元値９１２をスタータ候補個体／スタータゲノムに符号化する個体数初期化モジュール２０２を示す。特に、符号化は、スタータ候補個体９２２を表す二進数列を作成する。スタータ候補個体９２２の符号化は、以下のように示される。
［
［［０，１］，      ［０，０，１，０］］，ロゴ
［０，０，０，１，０                  ］，メインヘッドライン
［                                        クラスタ
［［１，０］，        ［０，１］      ］，部分ヘッドライン
［［１，０］，        ［０，１］      ］，コールトゥアクション
］
］
【００５９】
スタータゲノム９２２は、７つのサブ要素８０６の各々に対応する７つの遺伝子を含む。各々の遺伝子の最も左のビットは、制御値である。他の実装態様では、スタータ候補個体９２２の符号化は、量的若しくは数的データタイプ、質的データタイプ、離散データタイプ、連続的データタイプ（上限及び下限を有する）、整数データタイプ（上限及び下限を有する）、公称データタイプ、序数若しくはランク付けデータタイプ、分類別データタイプ、間隔的データタイプ、並びに／または比率データタイプなど、二進データタイプ（０または１）以外のデータタイプに依存した他の方式に基づいてもよい。例えば、スタータ候補個体９２２の符号化は、０〜１の実数値、０〜２５６の赤、緑、青（ＲＧＢ）値などの連続値、ＣＳＳ色の１６進数値（例えば、＃Ｆ０Ｆ８ＦＦ）、ＣＳＳ色の分類別色値（例えば、ＡｌｉｃｅＢｌｕｅ）、他のＣＳＳ特性グループ及び特性のそれぞれの値（＜ｈｔｔｐ：／／ｗｗｗ．ｗ３ｓｃｈｏｏｌｓ．ｃｏｍ／ｃｓｓｒｅｆ／＃ａｎｉｍａｔｉｏｎ＞におけるウェブ上でリスト化された１つなど）、特定の次元のサイズ（例えば、高さ及び幅）、異なる値及びデータタイプのセット（例えば、異なる数的なドル価格値、若しくは異なる数的なドル価格値と、高さ及び幅との組み合わせ）、並びにその他に基づいてもよく、またはそれらのいずれかの組み合わせに基づいてもよい。
【００６０】
スタータ候補個体の初期化及び符号化を理解した上で、ここで議論は、候補探索空間がどのように定義化されるかに向けられる。
【００６１】
候補探索空間定義
上記議論されたように、候補探索空間は、スタータファネルに基づいて定義される。特に、個体数初期化モジュール２０２は、スタータファネルのスタータ次元及びスタータ次元値を連結操作に付すことによって定義される。１つの例では、設計者が４つのスタータページ要素（例えば、ロゴ、メインヘッドライン、部分ヘッドライン、コールトゥアクション）、７つの可能なスタータサブ要素、及び１９の可能なスタータ部分要素値を指定する場合、次元及び次元値の６４０の可能な組み合わせを有する探索空間は次いで、ロゴの８つの異なる変動、メインヘッドラインの５つの異なる変動、部分ヘッドラインの４つの異なる変動、及びコールトゥアクションの４つの異なる変動を連結操作に付すことによって定義される（すなわち、８×５×４×４＝６４０）。
【００６２】
候補探索空間の定義を理解した上で、本明細書で開示される進化的計算の様々な世代がどのように最適化されるかに目を向ける。
【００６３】
世代最適化
スタータファネルに基づく最適化
実装態様では、個体数初期化モジュール２０２は、少なくとも１つのスタータファネル、並びにそのスタータウェブインタフェース（例えば、スタータゲノム９２２）のスタータ次元及びスタータ次元値に従って候補個体の予備プールを作成する（例えば、第１の世代）。１つの実装態様では、第１の世代における候補個体は、スタータ次元値の各々が第１の世代の初期化された個体のうちの１つのみにおいて発生することを保証する方式で初期化される。図１０は、そのような実装態様を記す。図１０では、スタータゲノム９２２は、７つの遺伝子及び１９の可能な遺伝子値を有する。結果として、スタータゲノム９２２だけで、１９の遺伝子値のうち７つが初期化される。従って、個体数初期化モジュール２０２は、１２の追加のゲノムを作成し、その結果、残りの１２の可能な遺伝子値がそれぞれの１２の追加のゲノムにおいて初期化される。図１０では、１２の可能な遺伝子値は、グレーの背景で記される。よって、候補探索空間が次元及び次元値の６４０の可能な組み合わせを含んだ例では、６４０の可能な組み合わせのサブセットのみ（例えば、図１０における１３の組み合わせ）が第１の世代において初期化される。
【００６４】
別の実装態様では、第１の世代における候補個体は、スタータ次元値の各々が第１の世代の初期化された個体のうちの少なくとも１つにおいて発生することを保証する方式で初期化される。
【００６５】
別の例では、スタータゲノムは、スタータ次元のセットについての２８のスタータ次元値を含むように指定されることを想定されたい。２８のスタータ次元値のうちのいくつかまたは全てが、同一のスタータ次元または異なるスタータ次元のセットに適用されてもよいことに留意されたい。よって、いくつかの例では、２８のスタータ次元値からの複数のスタータ次元値は、複数のスタータ次元で構成されるグループのメンバである単一のスタータ次元に適用される。図５に示される例では、前記「ヘッドラインフォント」スタータ次元は、５つのスタータ次元値、すなわち、「Ａｕｄｉｏｗｉｄｅ」、「Ｉｍｐａｃｔ」、「Ｃａｍｂｒｉａ  ２０ｐｘ」、「Ａｍｅｒｉｃａｎ  Ｔｙｐｅｗｒｉｔｅｒ」、及び「Ｃｏｐｐｅｒｐｌａｔｅ」を有することができる。同様に、「ヘッドラインテキスト」スタータ次元は、５つの異なるスタータ次元値、すなわち、「Ｄｏｎ’ｔ  ｍｉｓｓ  ｔｈｅ  ｌｉｖｅ  ａｕｃｔｉｏｎ」、「Ｏｎｌｙ  ａ  ｆｅｗ  ｍｉｎｕｔｅｓ  ｌｅｆｔ！Ｌｉｖｅ  Ａｕｃｔｉｏｎ」、「Ｙｏｕ  ｃａｎ  Ｗｉｎ  Ｙｏｕｒ  Ｃａｒ！」、「Ｗｈｅｎ  ｉｔ’ｓ  ｇｏｎｅ，ｉｔ’ｓ  ｇｏｎｅ  ｆｏｒｅｖｅｒ」、及び「Ｗｉｎ  Ｙｏｕｒ  Ｄｒｅａｍ  Ｃａｒ！」をも有することができる。同一のやり方で、「部分ヘッドライン背景色」スタータ次元は、４つの異なるスタータ次元値、すなわち、青、シアン、オレンジ、及び赤を有することができる。また、「部分ヘッドラインテキスト」スタータ次元は、４つの異なるスタータ次元値、すなわち、「Ｇｏ！」、「Ｇｏ  ｔｏ  ｔｈｅ  Ａｕｃｔｉｏｎ！」、「Ｗｉｎ  ｔｈｅ  Ａｕｃｔｉｏｎ！」、及び「Ｗｉｎ  ｉｔ  ＮＯＷ！」を有することができる。
【００６６】
従って、１つの実装態様では、第１の世代は、２８のスタータ次元値の各々が第１の世代の候補個体のうちの１つのみに含まれることを保証する方式で初期化される。別の実装態様では、第１の世代は、２８のスタータ次元値の各々が第１の世代の候補個体のうちの少なくとも１つに含まれることを保証する方式で初期化される。そのような実装態様では、２８のスタータ次元からの複数のスタータ次元値は、第１の世代の単一の候補個体に含まれる。これは、１つ以上のスタータ次元において識別されるスタータ次元及び次元値の各々が開示される進化的計算に入力として提示され、その結果、ライブのオンライン評価１０８の間にパフォーマンス測定値１０６をそれらのために発展することができることを保証する。
【００６７】
他の実装態様では、候補個体は、候補探索空間から次元のセットについての利用可能な値をランダムに選択することによって初期化される。更なる他の実装態様では、候補個体は、作成されることになる予め定められた数の候補個体に従って、候補探索空間における次元値の分布にわたる最大限に統一した方式で初期化される。１つの実装態様では、一旦作成されると、候補個体は、次元ごとの特定の値を有するベクトルとして候補個体数１０２に記憶される。
【００６８】
テストパラメータに基づく最適化
本明細書で開示される進化的計算は、標的のユーザの行動の促進を探求する特定の組織に特有な１つ以上のテストパラメータに従ってＭＬＣＯをカスタマイズする。そのようなテストパラメータの例は、組織によって登録または受信されるライブのユーザトラフィック（例えば、週、月、四半期、または他の暦に基づく）、及び組織によって登録されるパフォーマンス測定値１０６（例えば、変換率、収益率（ユーザのサンプルに対して判定される））を含む。実装態様では、そのようなテストパラメータについての値は、組織によって提供され、または初期のテスト期間を通じて判定される。
【００６９】
加えて、ライブのユーザトラフィックがウェブページのテスト環境において貴重な産品であるから、本明細書で開示される進化的計算は、効率的な方式で様々な世代を生成及び処理する。１つの実装態様では、本明細書で開示される進化的計算は、或る期間の間に（例えば、１週間または１月）組織によって受信されるライブのユーザトラフィックの量があるとして、パフォーマンス測定値１０６についてのより高い値を有するとライブのオンライン評価１０８によって判定された進化した候補個体を生み出すように、最小の数の進化的計算のループがその期間内に完了されることを保証することによって、そのような効率性を達成する。よって、１つの例では、１月の間に組織によって受信されるライブのユーザトラフィックの量が１０万のユーザ（すなわち、１００，０００ユーザ／月）である場合、本明細書で開示される進化的計算は次いで、１月内に少なくとも３つの世代を生成及び処理するように構成されてもよい。
【００７０】
別の実装態様では、そのような効率性は、或る期間の間に（例えば、１週間または１月）組織によって受信されるある一定のライブのユーザトラフィックの量があるとして、最小の数の候補個体がその期間内に進化し（または、ユーザのサンプルに対してライブのオンライン評価１０８を受ける）、及び／または制限された数の候補個体のみが各々の世代において処理され、その結果、複数の世代がその期間内に進化することを保証することによって達成される。よって、１つの例では、１月の間に組織によって受信されるライブのユーザトラフィックの量が１０万のユーザ（すなわち、１０００００ユーザ／月）である場合、本明細書で開示される進化的計算は次いで、各々の候補個体が少なくとも２千のユーザによってライブで評価されるように、１月内に３つの世代にわたって少なくとも５０の候補個体を生成及び処理するように構成されてもよい。別の例では、本明細書で開示される進化的計算は、３つの世代の各々においてわずか１７の候補個体を生成及び処理するように構成されてもよい。
【００７１】
更なる別の実装態様では、第１の世代を初期化するための特殊化方式は、最大の個体数サイズの候補個体数をライブのユーザトラフィック及びパフォーマンス測定値１０６（例えば、変換率、収益率（ユーザのサンプルに対して判定される））の関数とすることを含む。更に、そのライブのユーザトラフィック及びパフォーマンス測定値１０６に基づいて組織について計算された最大の個体数サイズが、組織の設計者によって指定されたスタータ次元の数及び／またはスタータ次元値の数と一致しないとき、本明細書で開示される進化的計算は、いくつか（例えば、第１の世代のみ）または全ての世代において候補個体数の個体数サイズが組織について計算された最大の個体数サイズによって制約されることを保証する方式で候補個体の初期化のためのスタータ次元及びスタータ次元値を選択するために特殊化選択方式を使用する。１つの実装態様では、これは、遺伝子ごとに基づいてスタータ次元及び／またはスタータ次元値をトラバースし、各々の遺伝子における値のサブセットのみ、及び／または候補個体の初期化のための遺伝子のサブセットのみを選択することによって達成される。そのような実装態様では、各々の遺伝子における値のサブセット及び／または遺伝子のサブセットの選択は、前の値及び／若しくは前の遺伝子、または後の値及び／若しくは後の遺伝子について偏重されてもよく、遺伝子及び／または遺伝子レベルにおける値の均一選択であってもよく、遺伝子及び／または遺伝子レベルにおける値の一点選択であってもよく、遺伝子及び／または遺伝子レベルにおける値の二点選択であってもよく、或いは遺伝子及び／または遺伝子レベルにおける値のランダム選択であってもよい。他の実装態様では、遺伝子及び／または遺伝子レベルにおける値の選択は、いずれかの従来または後に開発される選択技術に基づいてもよい。
【００７２】
別の実装態様では、最大の個体数サイズに基づく制約は、組織の設計者によって指定されたスタータ次元及び／またはスタータ次元値のいくつかのサブセットが前の世代において選択され、他のサブセットが後の世代において選択されるように、異なる世代にわたってスタータ次元及び／またはスタータ次元値の選択を分散させることによって達成される。サブセットの選択は、均一、一点、二点、ランダムであってもよく、またはいずれかの従来若しくは後に開発される選択技術に基づいてもよい。
【００７３】
１つの例では、１月の間に組織によって受信されるライブのユーザトラフィックの量が５万のユーザ（すなわち、５００００ユーザ／月）であり、各々の候補個体が少なくとも２千のユーザによってライブで評価されることになると想定すると、組織について判定された最大の個体数サイズは、３つの世代にわたる２５の候補個体である。また、組織の設計者が３０のスタータ次元を選択しており、各々が４つのスタータ次元値を有することを想定されたい。各々のスタータ次元値が１つのみの候補個体において発生することを必要とする標準的な初期化方式が実装される場合、１２０のスタータ次元値は、少なくとも９１の候補個体がまさに第１の世代において作成されることを必要とする。しかしながら、これは、組織について計算された２５の最大の個体数サイズと不一致となり、所与の世代における候補個体の総数を８または９のいずれかに制限する。
【００７４】
この不一致を解決するために、本明細書で開示される進化的計算の特殊化初期化及び選択方式は、１つの実装態様によって、第１及び第２の世代の各々における８つの候補個体のみ、並びに第３の世代における９つの候補個体のみを初期化するために、１２０のスタータ次元値のサブセット及び／または３０のスタータ次元のサブセットを選択することができる。実装態様では、選択は、ランダムであってもよく、または前の若しくは後のスタータ次元値及び／若しくはスタータ次元に偏重されてもよい。他の実装態様では、第１の世代の間に選択されないスタータ次元値及び／またはスタータ次元は、第２の世代の終わり、またはいずれかの他の後続の世代における候補個体数に含まれてもよい。
【００７５】
実装態様では、本明細書で開示される進化的計算のいずれかの段階、並びに／または世代（例えば、第１、第２、第３、第４、第１０、若しくは第２０の世代など）は、特殊化及び／または標準的な初期化方式を利用することができる。本明細書で使用されるように、用語「初期化」または「初期化する」は、新たな候補個体を作成し、及び／または生殖させるために進化的計算のいずれかの世代に適用することができる進化的操作を指す。
【００７６】
個体数の初期化を理解した上で、個体がどのようにテストされるかに目を向ける。
【００７７】
個体のテスト
候補テストモジュール２１２は、個体数１０２における候補個体をテストする。各々の候補個体は、テストまたはトライアルの組を受け、各々のトライアルは、数百、数千、及び数百万のユーザに及ぶサンプルサイズを有するユーザの１つまたは複数のサンプルに関して候補個体をテストする。別の実装態様では、テストまたはサンプルサイズの数は、テストと関連付けられたパラメータによって判定される。そのようなテストパラメータの例は、単位時間当たりの訪問者の数、既存の変換率、候補探索空間のサイズ、好ましいリスク許容度、及びパフォーマンス測定値のタイプを含む。テストまたはトライアルは、候補個体に従って生成されたファネルがテストのための実世界のユーザに提示されるライブのオンライン評価１０８として実装される。次いで、パフォーマンス測定値１０６は、実世界のユーザがファネルと対話する間、ライブのオンライン評価１０８に基づいて収集される。候補テストモジュール２１２は、テストされた候補個体の各々と関連付けられたパフォーマンス測定値１０６をリアルタイムで更新する。更新の頻度はまた、テストパラメータによって判定される。
【００７８】
適応度比例生殖
ライブのユーザトラフィックを効率的に消費するために、本明細書で開示される進化的計算は、いくつかの実装態様では、個体の第２の世代を作成するために特殊化生殖方式を使用する。１つの実装態様では、第２の世代を生殖させるための特殊化方式は、第１の世代、すなわち、親ゲノムの間に作成されたゲノムを適応度比例選択（例えば、ルーレットホイール選択、確率的ユニバーサルサンプリング）に付す生殖モジュール２２８を含む。そのような実装態様では、あらゆる親ゲノムは、繁殖するように選択される機会を有するが、より適合する親ゲノムは、より弱い親ゲノムよりも選択される確率が高い。これは、親ゲノムの選択確率をパフォーマンス測定値１０６（例えば、変換率、収益率（ユーザのサンプルに対して判定される））の関数とすることによって達成される。１つの実装態様では、所与の親ゲノムからの選択は、特定の遺伝子の選択確率に従って遺伝子ごとに基づいて行われる。いくつかの実装態様では、特定の遺伝子の選択確率は、特定の遺伝子を含むゲノムのパフォーマンス測定値１０６（例えば、変換率、収益率（ユーザのサンプルに対して判定される））に応じている。従って、第２の世代における結果として生じるゲノムは、それらのそれぞれの選択確率に従って親ゲノムから選択された遺伝子を含む。
【００７９】
更なる別の実装態様では、第２の世代は、親ゲノムのランダムな選択を遺伝子ごとに基づくようにすることによって生殖される。
【００８０】
実装態様では、本明細書で開示される進化的計算のいずれかの段階、及び／または世代（例えば、第１、第２、第３、第４、第１０、若しくは第２０の世代など）は、特殊化生殖方式を利用することができる。
【００８１】
生殖の後、候補テストモジュール２１２は、更新された個体数１０２に関して再度動作する。処理は、繰り返して続く。実装態様では、制御モジュール２３０は、候補テストモジュール２１２及び生殖モジュール２２８を反復する。
【００８２】
競争
１つの実装態様では、進化的計算は、或る世代では操作を可能にする競争モジュール２２２を利用する。競争モジュール２２２は、更新されたパフォーマンス測定値１０６に従って候補個体数１０２の内容を更新する。いくつかの実装態様では、競争モジュール２２２は、最小のベースラインの個体適応度（例えば、管理者によって予め設定され、若しくは自動設定された）を満たさない候補個体、またはその「個体適応度」が同様にテストされた候補個体の「個体適応度」に相対的に遅れる候補個体を破棄する。個体数１０２は、改正された内容で更新される。
【００８３】
競争モジュール２２２は、１つの世代から次への候補個体の卒業を管理する。この処理は、以下のように、一度に１つずつの候補個体が発生するとして考えられてもよい。最初に、競争モジュール１２２が実行された最後の時からそれらに対してパフォーマンス測定値１０６が更新された全ての候補個体を通じてループが始まる。１つの実装態様では、現在の候補個体についてのパフォーマンス測定値１０６がなおベースラインの個体適応度（例えば、管理者によって予め設定され、若しくは自動設定される）を下回り、または他の候補個体の個体適応度に相対的に十分に遅れる場合、現在の候補個体は次いで破棄され、次の１つが考慮される。現在の個体についてのパフォーマンス測定値１０６がベースラインの個体適応度（例えば、管理者によって予め設定され、若しくは自動設定される）を上回り、または他の候補個体の個体適応度と相対的に同等である場合、現在の候補個体は次いで、次の世代に追加される。処理は次いで、次の候補個体を考慮するために順番に進む。
【００８４】
相対的パフォーマンス測定値
あまり経験を有さない個体の高いパフォーマンス測定値は、真の適応度ではなく運に起因する（例えば、ホリデイシーズンに起因した個体へのユーザの非現実的な親和性に起因する）。すなわち、より経験を有する他の個体と比較する場合、高い能力を有すると判定されたより若い、幸運な個体はなお、その適応度レベルがより低いが、より現実的である個体に取って代わる。そのような個体が絶対的適応度に基づいて一人で相互に競争することを可能にすることは、幸運な個体についての進化的計算を最適化する。
【００８５】
この課題への解法は、候補個体がそれらの絶対的パフォーマンス測定値の代わりに、それらの「相対的パフォーマンス測定値」に基づいて比較されることである。候補個体の相対的パフォーマンス測定値は、第１の期間において判定された対照個体の絶対的パフォーマンス測定値と、第１の期間においてまた判定された候補個体の絶対的パフォーマンス測定値との間の差に基づいて計算される。よって、例えば、第１の世代の間に作成された第１の候補個体が４０％の絶対的平均変換率を有し、第１の世代においてまた初期化された第１の対照個体が３５％の絶対的平均変換率を有する場合、第１の候補個体の相対的パフォーマンス測定値は次いで、５％（４０％−３５％＝５％）である。同様に、第２の世代の間に作成された第２の候補個体が４５％の絶対的平均変換率を有し、第２の世代における第１の対照個体の絶対的平均変換率が４２％まで増加した場合、第２の候補個体の相対的パフォーマンス測定値は次いで、３％（４５％−４２％＝３％）である。従って、第１及び第２の候補個体は、それらのそれぞれの相対的パフォーマンス測定値に基づいて比較され、第１の候補個体は、第２の候補個体の絶対的パフォーマンス測定値が第１の候補個体の絶対的パフォーマンス測定値よりも５％高い（４５％−４０％＝５％）としても、第１の候補個体よりも２％良好（５％−３％＝２％）であると見出される。１つの個体の相対的パフォーマンス測定値と別の個体の相対的パフォーマンス測定値との間の競争モジュール２２２によって行われる各々の比較は、本明細書で比較「インスタンス」と称されることがある。
【００８６】
１つの実装態様では、競争モジュール２２２は、現在の候補個体の相対的パフォーマンス測定値が候補個体数１０２における最も適応しない候補個体の相対的パフォーマンス測定値を上回るかを判定する。そうである場合、最も適応しない候補個体は次いで破棄され、現在の候補個体が次の世代に移動される。そうでない場合、現在の候補個体は次いで破棄される。処理は次いで、次の候補個体を考慮するために順番に移動する。
【００８７】
クロスオーバー及び変異に基づく生殖
生殖に関して、いずれかの従来のまたは後に開発される技術は、生殖のために使用されてもよい。実装態様では、親の個体からの条件、出力、またはルールは、子の個体を形成するための様々な方法で組み合わされ、次いで、時に、それらは変異する。組み合わせ処理は、例えば、クロスオーバー、すなわち、子の個体を形成するために親の個体の間で条件、出力、またはルール全体を交換することを含んでもよい。生殖を通じて作成された新たな個体は、定義されていないとして示されるパフォーマンス測定値から始まる。
【００８８】
生殖モジュール２２８は、候補個体数１０２に、候補個体数１０２からの１つ以上の親の個体のそれぞれのセットに従って形成され、破棄するために競争モジュール２２２によってまだ選択されていない新たな個体を追加する。１つの実装態様では、ゲノムの第３の世代は、親ゲノムのペアを第２の世代から選択し、親ゲノムのペアをクロスオーバー方式に付すことによって作成される。他の実装態様では、生殖（例えば、クロスオーバー及び／または変異）は、例えば、第１、第２、第３、第４、または第１０の世代などのいずれかの他の世代において初期化されてもよい。
【００８９】
クロスオーバー
クロスオーバーに関して、後続の選択された第２の親ゲノムが第２の親ゲノムの直前に候補個体数から選択された第１の親ゲノムとは異なるとときにクロスオーバーについての親ゲノムのペアが識別される。実装態様では、親ゲノムは、同一の世代の間に複数のクロスオーバー操作に参加するために選択されてもよい。いくつかの実装態様では、所与の世代内で、様々なクロスオーバー方式は、孫ゲノムの総数が所与の世代について判定された最大の個体数サイズに到達するまで、親ゲノムのペアの間でクロスオーバーを実施するために使用される。１つの実装態様では、クロスオーバーは、遺伝子ごとに基づいて行われる。よって、１つの例では、親ゲノムは、図８に示されるように、サブ要素８０６及び／またはサブ要素値８０８に基づいてクロスオーバーすることができる。他の実装態様では、特定の世代を進化させるために遺伝子レベルで適用されるクロスオーバー方式は、均一クロスオーバー（例えば、親ゲノムのペアから二者択一で遺伝子値を選択すること）、一点クロスオーバー、二点クロスオーバー、及び／またはランダムクロスオーバーなどの様々なクロスオーバー方式に基づいてもよい。更なる他の実装態様では、特定のを進化させるために遺伝子レベルで適用されるクロスオーバー方式は、いずれかの他の従来のまたは後に開発されるクロスオーバー技術に基づいてもよい。
【００９０】
図１１は、クロスオーバー技術を使用して新たな候補個体を生殖させる１つの実装態様の符号図を示す。図１１では、親の候補個体Ａの二進数列は、第１のテキストタイプ（例えば、Ｔｉｍｅｓ  Ｒｏｍａｎ）を有するロゴＡ、メインヘッドラインＡ、部分ヘッドラインＡ、及びアクションボタンＡを表す。また、図１１では、親の候補個体Ｂの二進数列は、第２のテキストタイプ（例えば、Ａｒｉａｌ）を有するロゴＢ、メインヘッドラインＢ、部分ヘッドラインＢ、及びアクションボタンＢを表す。１つの例示的な実装態様では、生殖モジュール２２８は、親の候補個体ＡからのロゴＡ及び部分ヘッドラインＡを含み、親の候補個体ＢからのメインヘッドラインＢ及びアクションボタンＢを含むクロスオーバーの子の個体ＡＢ１を作成する。別の例示的な実装態様では、生殖モジュール２２８は、第２のテキストタイプ（例えば、Ａｒｉａｌ）（親の候補個体Ｂからの）を有するロゴＡ（親の候補個体Ａからの）及び親の個体Ｂからの部分ヘッドラインＢを含み、親候補個体ＡからでもあるメインヘッドラインＡ及びアクションボタンＡをも含むクロスオーバーの子の候補個体ＡＢ２を作成する。
【００９１】
変異
図１２は、変異技術を使用して候補個体を生殖させる１つの実装態様の符号図である。図１２では、親ゲノムの第１の遺伝子は、ロゴＡのテキストタイプが第１のテキスト（例えば、Ｔｉｍｅｓ  Ｒｏｍａｎ）から第２のテキスト（例えば、Ａｒｉａｌ）に変異するように変異する。
【００９２】
好ましくは、生殖は、新たな個体の小さなサブセットのみの変異がそれに続く、小さな予め定められた数の新たな個体を作成するためのクロスオーバーを含む。変異は、この実装態様では候補個体の数を増加させず、クロスオーバーによって作成された個体を修正するにすぎない。
【００９３】
本明細書で開示される進化的計算は、極大値を回避または克服するために変異を使用する。従って、いくつかの実装態様では、本明細書で開示される進化的計算は、或る数の世代においてクロスオーバーを実施した後、及び／または同一の世代内で或る数の生殖操作においてクロスオーバーを実施した後のみ、変異を実施するように構成される（例えば、変異は、第３の世代の後でのみ行われる）。他の実装態様では、生殖（例えば、クロスオーバー及び／または変異）は、第１、第２、第３、第４、または第１０の世代などのいずれかの他の世代において初期化されてもよい。
【００９４】
実装態様では、各々の親ゲノムは、生成の間にわずかでも変異に付される尤度を判定するゲノム変異確率が割り当てられる。「ゲノム変異確率」は、ランダム確率、均一確率、重み付け確率、及び／または適応度比例確率などのいずれかの確率方式に基づいてもよい。親ゲノムが選択されるとき、変異は、１つの実装態様によって、遺伝子ごとに基づいて行われる。よって、１つの例では、親ゲノムは、図８に示されるように、サブ要素８０６及び／またはサブ要素値８０８に基づいて変異されてもよい。
【００９５】
親ゲノム内で、遺伝子ごとの変異についての遺伝子及び／または遺伝子値の選択は、「遺伝子変異確率」に基づいてもよい。遺伝子変異確率は、ランダム確率、均一確率、重み付け確率、及び／または適応度比例確率などのいずれかの確率方式に基づいてもよい。よって、例えば、ゲノム（図１２に示される１つなど）のＢｏｏｌｅａｎ、二進、またはベクトル符号化は、確率方式に基づいて遺伝子ごとに基づいて変異されてもよい。他の実装態様では、遺伝子レベルにおける変異は、均一変異、非均一変異、境界変異、及び／または勾配変異であってもよい。更なる他の実装態様では、遺伝子レベルにおける変異は、いずれかの他の従来のまたは後に開発される変異技術に基づいてもよい。
【００９６】
個体の生殖を理解した上で、本明細書で開示される進化的計算が擬似進化を使用して候補探索空間のトラバースをどのように加速化するかに目を向ける。
【００９７】
加速化された擬似進化
パフォーマンスの効率性は、ＭＬＣＯの効果的な実装のための最優先のものである。本明細書で開示される進化的計算は、候補探索空間（例えば、小さい探索空間）のトラバースを加速化させることによって、パフォーマンスの効率性を進化的過程に加える。上記議論されたように、候補探索空間は、次元及び次元値の全ての可能な組み合わせを識別するが、その組み合わせのサブセットのみが各々の世代において初期化される。上記使用された例に続いて、候補探索空間が次元及び次元値の６４０の組み合わせを識別する場合、１３の組み合わせのみが次いで、第１の世代において初期化される。更に、前に生成された組み合わせ（すなわち、候補個体またはゲノム）が世代の中でまたは世代間でいつ再生成されようと、それは、複製として識別され、拒絶される。複製を作成する進化的事象または進化的操作は、本明細書で「衝突」と称される。衝突の結果（すなわち、複製）が拒絶され、進化的過程を前進させないため、衝突は、パフォーマンスの非効率性を生じさせる。
【００９８】
１つの例では、衝突の総数における急増は、次元及び次元値の全ての可能な組み合わせの大部分が既に生成され、進化的操作が複製を頻繁に作成するときに発生することがある。結果として、それは、次元及び次元値の残りの組み合わせを生成するのに甚大な時間を要する可能性がある。上記使用された例に続いて、６４０の可能な組み合わせのうちの６２０が５０の世代を通じて作成される場合、ルーチンの進化は次いで、残りの２０の組み合わせを作成するために更に２０〜５０世代かかる。
【００９９】
本明細書で開示される進化的計算は、衝突の総数が予め設定された閾値に到達するときに擬似進化に切り替わることによってこの技術的課題を解決する。１つの実装態様では、本明細書で開示される進化的計算は、次元及び次元値の全ての可能な組み合わせのいずれが既に生成されているか（例えば、注釈及び／または列挙方式を使用して）を追跡し、衝突の総数が予め設定された閾値に到達するとき、それらは、まだ生成されていないそれらの組み合わせ（すなわち、候補個体またはゲノム）のみをランダムに生成する。従って、進化的過程は、先の世代のいずれかの間にまだ選択または作成されていないそれらの組み合わせのみに焦点を当てて人為的に行われる。これは、本明細書で「擬似進化」と称される。擬似進化は、それがルーチン進化をバイパスし（例えば、初期化及び／または生殖方式を終了させ、並列化し、無効にし、または回避する）、更に少ない世代において残りの組み合わせを作成することを理由に、進化的過程を加速化する。上記使用された例に続いて、６４０の可能な組み合わせのうちの６２０が５０の世代を通じて作成され、衝突の総数が１０の閾値に到達する場合、擬似進化は、残りの２０の組み合わせのみを作成するために、次の２つの世代を排他的に利用することができる。
【０１００】
進化疑似コード
以下の疑似コードは、進化的計算の１つの実装態様を示す。
ｓｅｔ＿ｅｖｏｌｕｔｉｏｎ＿ｐａｒａｍｅｔｅｒｓ
ｃｒｅａｔｅ＿ｃａｎｄｉｄａｔｅｓ＿ｇｅｎｅｒａｔｉｏｎ＿１
ｒｅｐｅａｔ
ｒｅｐｅａｔ
ｔｅｓｔ＿ｃａｎｄｉｄａｔｅｓ
ｕｎｔｉｌｃａｎｄｉｄａｔｅ＿ｓｐｒｅａｄ＿ｉｓ＿ｓｕｆｆｉｃｉｅｎｔｏｒｒｅｍｏｖｅ＿ｃｒｉｔｅｒｉａ＿ｉｓ＿ｍｅｔ
ｒｅｍｏｖｅ＿ｌｏｗ＿ｐｅｒｆｏｒｍｉｎｇ＿ｃａｎｄｉｄａｔｅｓ
ｃｒｅａｔｅ＿ｎｅｗ＿ｃａｎｄｉｄａｔｅｓ
Ｕｎｔｉｌｐｅｒｆｏｒｍａｎｃｅ＿ｉｓ＿ｓｕｆｆｉｃｉｅｎｔｏｒｎｏ＿ｍｏｒｅ＿ｄｅｓｉｇｎｓ＿ａｒｅ＿ｐｏｓｓｉｂｌｅ
【０１０１】
以下の拡張されたバッカスナウア記法は、進化的計算の別の実装態様を示す。
ｇｅｎｏｍｅ：：＝［ｅｌｅｍｅｎｔ＿ｃｌｕｓｔｅｒ＋］
ｅｌｅｍｅｎｔ＿ｃｌｕｓｔｅｒ：：＝［ｅｌｅｍｅｎｔ＋］｜ｅｌｅｍｅｎｔ
ｅｌｅｍｅｎｔ：：＝［ａｃｔｉｏｎ＋］
ａｃｔｉｏｎ：：＝［ｃｏｎｔｒｏｌ、ａｃｔｉｏｎ＿ｖａｌｕｅ］
ａｃｔｉｏｎ＿ｖａｌｕｅ：：＝ｔｅｘｔ｜ｆｏｒｍａｔｔｉｎｇ｜ｈｔｍｌ｜ｈｉｄ｜ｒｅｍｏｖｅ｜ｉｍａｇｅ｜ｃｌａｓｓ｜ｃｕｓｔｏｍ
ｔｅｘｔ、ｆｏｒｍａｔｔｉｎｇ、ｈｔｍｌ、ｉｍａｇｅ、ｃｌａｓｓ、ｃｕｓｔｏｍ：：＝ｂｉｔ＿ｖａｌｕｅ
ｈｉｄｅ、ｒｅｍｏｖｅ：：＝ｂｉｔ＿ｖａｌｕｅ
ｂｉｔ＿ｖａｌｕｅ：：＝０｜１
【０１０２】
議論は、エンドユーザへのフロントエンド提示のためにファネル及び構成するウェブインタフェースを生成するために候補個体がどのように使用されるかに向けられる。
【０１０３】
フロントエンド提示
図１３及び１４は、エンドユーザへのフロントエンド提示のために対応する候補個体に従って１つ以上のウェブインタフェースのファネルを生成する１つの実装態様を示す。図１３は、それに基づいて４つのウェブインタフェースが生成される４つの候補個体（ＣＩ１〜ＣＩ４）を示す。個体（ＣＩ１〜ＣＩ４）は、個体数１０２におけるいずれかの候補個体であってもよく、すなわち、それらは、それに対してパフォーマンス測定値１０６がライブのオンライン評価１０８の間に発展する候補個体であってもよい。
【０１０４】
図１３はまた、各々のゲノムが二進数列（文字列）によって表されることを示す。各々の二進数列は、本明細書で「遺伝子」と称される部分列（部分文字列）に更に区分化される。各々の遺伝子は、ファネルについての次元及び対応する次元値を表す。従って、各々の遺伝子は、ゲノム（ＣＩ１〜ＣＩ４）に従って生成されることになるウェブインタフェースについてのサブ要素及び対応するサブ要素値を識別する。ウェブインタフェースがコンテンツを含むフロントエンド（例えば、グラフィカル）オブジェクトである実装態様では、遺伝子は、ゲノム（ＣＩ１〜ＣＩ４）に基づいて生成されたウェブインタフェースに含まれることになる、フロントエンド（例えば、グラフィカル）要素／構成要素及び対応する要素／構成要素値を識別する。
【０１０５】
図１３及び１４の実装態様では、ファネルの各々の要素は、遺伝子としてグループ化されるビットの固定長の部分文字列として符号化されることに留意されたい。例えば、部分ヘッドライン要素は、２つの遺伝子にグループ化される４つのビットを有する。遺伝子ごとに、ビットのうちの１つのみが利用可能な次元値のセットから特定の次元値を識別するように活性または「ホット」であってもよい（例えば、「１」によって表される）。最も左のビットは、１つの例では、メインヘッドラインについて「プレーンテキスト」を示すことができる、遺伝子の「対照」値を表す。２つ目、３つ目、及び４つ目のビットは、例えば、「ボールド」、「イタリック」、及び「ボールド下線」それぞれを示してもよい。多くの他の符号化が異なる実装態様において可能であることが認識されよう。例えば、２ビットの数値は、対照を示す０、「ボールド」を示す１、「イタリック」を示す２、及び「ボールド下線」を示す３で使用されてもよい。
【０１０６】
図１３及び１４の他の実装態様では、ゲノムが提示されてもよく、構成する要素は、量的若しくは数的データタイプ、質的データタイプ、離散データタイプ、連続的データタイプ（上限及び下限を有する）、整数データタイプ（上限及び下限を有する）、公称データタイプ、序数若しくはランク付けデータタイプ、分類別データタイプ、間隔的データタイプ、並びに／または比率データタイプなど、二進データタイプ（０または１）以外のデータタイプに依存した他の方式を使用して符号化される。例えば、図１３及び１４におけるゲノム及び構成する要素の符号化は、０〜１の実数値、０〜２５６の赤、緑、青（ＲＧＢ）値などの連続値、ＣＳＳ色の１６進数値（例えば、＃Ｆ０Ｆ８ＦＦ）、ＣＳＳ色の分類別色値（例えば、ＡｌｉｃｅＢｌｕｅ）、他のＣＳＳ特性グループ及び特性のそれぞれの値（＜ｈｔｔｐ：／／ｗｗｗ．ｗ３ｓｃｈｏｏｌｓ．ｃｏｍ／ｃｓｓｒｅｆ／＃ａｎｉｍａｔｉｏｎ＞におけるウェブ上でリスト化された１つなど）、特定の次元のサイズ（例えば、高さ及び幅）、異なる値及びデータタイプのセット（例えば、異なる数的なドル価格値、若しくは異なる数的なドル価格値と、高さ及び幅との組み合わせ）、並びにその他に基づいてもよく、またはそれらのいずれかの組み合わせに基づいてもよい。
【０１０７】
ゲノム（ＣＩ１〜ＣＩ４）は、上記議論されたように、開示される進化的計算を使用して、変換システム１０４によって生成及び提供される。変換システム１０４は次いで、ゲノム（ＣＩ１〜ＣＩ４）を１つ以上のウェブインタフェースの出力ファネルに転換するためにプレゼンテーションデータベース１３２０及びプレゼンテーションモジュール１３１０を利用する。
【０１０８】
プレゼンテーションデータベース１３２０は、ファネルの次元の各々の少なくとも１つの利用可能な値ごとのフロントエンド要素値を識別するルールリポジトリとしての役割を果たす。プレゼンテーションモジュール１３１０は、選択された候補個体によって識別される次元値に対応するフロントエンド要素値を判定するために、候補個体のうちの選択された１つをプレゼンテーションデータベース１３２０に適用する。従って、プレゼンテーションモジュール１３１０は、プレゼンテーションデータベース１３２０に対して変換システム１０４によって提供されるゲノムを評価し、ゲノムに基づいてファネルの適切な変動を生成することが可能である。
【０１０９】
プレゼンテーションデータベース１３２０は、様々な要素ルールを含む。プレゼンテーションデータベース１３２０では、探索空間における全ての可能な次元、すなわち、ウェブインタフェースに含まれることができる全ての可能なフロントエンド（例えば、グラフィカル）要素／構成要素についての要素ルールが提供されてもよい。また、各々の要素ルールは、所与の次元またはページ要素／構成要素についての全ての可能な次元値またはページ要素／構成要素を識別するポインタを含む。例えば、「部分ヘッドライン」要素ルールは、色、テキスト、サイズ、及び配置など、「部分ヘッドライン」要素の全ての可能な特性についてのポインタを含む。
【０１１０】
選択されたゲノムについて、プレゼンテーションモジュール１３１０は、プレゼンテーションデータベース１３２０にアクセスし、選択されたゲノムにおける遺伝子ごとの適用可能な要素ルールを評価する。図１３の例では、要素１のルールは、全てのロゴの遺伝子について識別され、要素２のルールは、全てのメインヘッドラインの遺伝子について識別され、要素３のルールは、全ての部分ヘッドラインの遺伝子について識別され、要素４のルールは、全てのアクションボタンの遺伝子について識別される。更に、各々の要素ルールは、それぞれの遺伝子値についてのポインタを識別し、対応するフロントエンド（例えば、グラフィカル）要素／構成要素及び要素／構成要素値を生成する。
【０１１１】
１つの実装態様では、次元ごとの利用可能な値のうちの１つがデフォルトの値であるとき、結果として生じるファネルは、次元の各々のデフォルトの次元値についてのデフォルトのフロントエンド要素値を有する。そのような実装態様では、プレゼンテーションモジュール１３１０は、次元ごとのデフォルトの次元値以外の、選択された候補個体によって識別される全ての次元値に対応するフロントエンド要素値を判定するために、選択された候補個体をプレゼンテーションデータベース１３２０に適用する。
【０１１２】
他の実装態様では、ウェブインタフェースファネルの特定の変動について、ファネルの次元ごとの値を記憶するファネルカスタム化仕様メモリが利用される。そのような実装態様では、プレゼンテーションモジュール１３１０は、ユーザに対し、プレゼンテーションデータベース１３２０によって示されるフロントエンド要素値を有するファネルをファネルファネルカスタム化仕様メモリに記憶された次元値に対応するとして提示する。ファネルファネルカスタム化仕様メモリはまた、ファネルの次元ごとの値の新たなセットで更新される。ファネルカスタム化仕様メモリについての更新された値は、ファネルを入力するためのユーザの行動（例えば、ユーザがブラウザを介してランディングページＵＲＬを提供すること）に応じて取り出される。加えて、プレゼンテーションモジュール１３１０は、ユーザの行動（例えば、ユーザがブラウザを介してランディングページＵＲＬを提供すること）に応じてプレゼンテーションデータベース１３２０にアクセスする。
【０１１３】
１つの実装態様では、次元ごとの利用可能な値のうちに１つがデフォルトの値であるとき、ファネルは、次元の各々のデフォルトの次元値についてのデフォルトのフロントエンド要素値を有する。そのような実装態様では、プレゼンテーションモジュール１３１０によってユーザに対して提示されるファネルは、次元ごとのデフォルトの次元値以外の、ファネルカスタム化仕様メモリにおいて識別される次元値の全てに対応するとしてプレゼンテーションデータベース１３２０によって示されるフロントエンド要素値を有する。
【０１１４】
図１４では、４つのウェブインタフェース（ＷＩ１〜ＷＩ４）は、候補個体（ＣＩ１〜ＣＩ４）の各々に従って、プレゼンテーションモジュール１３１０によって生成される。ウェブインタフェースの各々は、プレゼンテーションデータベース１３２０におけるルールによって識別されるフロントエンド（例えば、グラフィカル）要素／構成要素及び要素／構成要素値を含む。次いで、ウェブインタフェース（ＷＩ１〜ＷＩ４）は、ライブのオンライン評価１０８のためにエンドユーザに提示される。
【０１１５】
機械学習ユーザデバイス（ＭＬＵＤ）
図１５は、本明細書で「機械学習ユーザデバイス」（ＭＬＵＤ）と称される、改善されたユーザデバイスの１つの実装態様を示す。図１５では、エンドユーザは、ベンダウェブサイトにアクセスするためにＭＬＵＤ１１０４上で実行するブラウザを使用する。ベンダウェブサーバは、エンドユーザがベンダウェブサイトにアクセスしたことに応じて、ウェブページの一部として、変換スニペットをＭＬＵＤ１５０４に配置するように構成される。変換スニペットがＭＬＵＤ１５０４に送信された後、及びウェブページがエンドユーザにレンダリングされる前に、変換スニペットは、ネットワークサーバインフラストラクチャを呼び出す。ネットワークサーバインフラストラクチャは、変換システム１０４、候補個体数１０２、及びコンテンツ配信ネットワーク（ＣＤＮ）１５０８を含む。
【０１１６】
ＭＬＵＤ１５０４に配置される変換スニペットは、プレゼンテーションファイル１３３０をＣＤＮ１５０８から取り出し、プレゼンテーションファイル１３３０をＭＬＵＤ１５０４に記憶する。ＣＤＮ１５０８は、プレゼンテーションファイル１３３０と共に事前にロードされる。今日の一般的なＣＤＮサービスの例は、Ａｋａｍａｉ（商標）、ＣｌｏｕｄＦｌａｒｅ（商標）、ＣｌｏｕｄＦｒｏｎｔ（商標）、Ｆａｓｔｌｙ（商標）、ＭａｘＣＤＮ（商標）、ＫｅｙＣＤＮ（商標）、Ｉｎｃａｐｓｕｌａ（商標）、及びＧｌｏｂａｌＤｏｔｓ（商標）を含む。プレゼンテーションファイル１３３０は、上記議論された、プレゼンテーションデータベース１３２０及びプレゼンテーションモジュール１３１０を含む。
【０１１７】
次いで、ＭＬＵＤ１５０４に配置される変換スニペットは、変換システム１０４からのゲノムを要求する。それに応じて、変換システム１０４は、ゲノムを候補個体数１０２から取り出し、選択されたゲノムをＭＬＵＤ１５０４に配信する。
【０１１８】
次いで、選択されたゲノムを変換システム１０４から受信し、プレゼンテーションファイル１３３０をＣＤＮ１５０８から受信したＭＬＵＤ１５０４は、プレゼンテーションモジュール１３１０を実行する。プレゼンテーションモジュール１３１０は、上記議論されたように、プレゼンテーションデータベース１３２０のルールに対して選択されたゲノムを評価し、１つ以上のウェブインタフェースのファネルを生成する。従って、標準的なユーザデバイスは、アルゴリズム的に進化したウェブインタフェースを生成するために改善される。
【０１１９】
機械学習コンテンツ配信ネットワーク（ＭＬＣＤＮ）
図１６は、本明細書で「機械学習コンテンツ配信ネットワーク」（ＭＬＣＤＮ）と称される、改善されたコンテンツ配信ネットワーク（ＣＤＮ）の１つの実装態様を示す。図１６では、エンドユーザは、ベンダウェブサイトにアクセスするためにユーザデバイス１６０２上で実行するブラウザを使用する。ベンダウェブサーバは、エンドユーザがベンダウェブサイトにアクセスしたことに応じて、ウェブページの一部として、変換スニペットをユーザデバイス１６０２に配置するように構成される。変換スニペットがユーザデバイス１６０２に送信された後、及びウェブページがエンドユーザにレンダリングされる前に、変換スニペットは、ネットワークサーバインフラストラクチャを呼び出す。ネットワークサーバインフラストラクチャは、変換システム１０４、候補個体数１０２、及びＭＬＣＤＮ１６０４を含む。
【０１２０】
ＭＬＣＤＮ１６０４は、プレゼンテーションファイル１３３０と共に事前にロードされる。プレゼンテーションファイル１３３０は、上記議論された、プレゼンテーションデータベース１３２０及びプレゼンテーションモジュール１３１０を含む。
【０１２１】
次いで、ＭＬＣＤＮ１６０４は、変換システム１０４からのゲノムを要求する。それに応じて、変換システム１０４は、ゲノムを候補個体数１０２から取り出し、選択されたゲノムをＭＬＣＤＮ１６０４に配信する。
【０１２２】
次いで、選択されたゲノム及びプレゼンテーションファイル１３３０の両方を有するＭＬＣＤＮ１６０４は、プレゼンテーションモジュール１３１０を実行する。プレゼンテーションモジュール１３１０は、上記議論されたように、プレゼンテーションデータベース１３２０のルールに対して選択されたゲノムを評価し、１つ以上のウェブインタフェースのファネルを生成する。ＭＬＣＤＮ１６０４は次いで、エンドユーザへのフロントエンド提示のためにウェブインタフェースをユーザデバイス１６０２に配信する。従って、標準的なＣＤＮは、アルゴリズム的に進化したウェブインタフェースを生成するために改善される。
【０１２３】
例示的な結果
ライブのオンライン評価１０８の間、パフォーマンス測定値１０６は、ユーザ対話３２４に基づいて、ファネルごとに収集される。いくつかの実装態様では、対話メタデータは、セッションごとに基づいてユーザごとに追跡されてもよい。例えば、ユーザ＿ｍ、ユーザ＿ｊ、ユーザ＿（ｊ＋１）、及びユーザ＿ｎのような対話するユーザごとに、対応するセッションの対話＿ｉｍ、対話＿ｉｊ、対話＿ｉ（ｊ＋１）、及び対話＿ｉｎは、ライブのオンライン評価１０８の間に作成されてもよい。それらのセッションの間、個体＿ｉ、個体＿ｉ＋１、及び個体＿ｎのような候補個体に対応するファネルは、ユーザに提示されてもよく、並列して評価されてもよい。ユーザ対話３２４に基づいて、候補個体ごとのパフォーマンス測定値１０６が収集及び配置されてもよい。
【０１２４】
図１７は、対照個体及び獲得個体、並びに構成する次元及び次元値をグラフィカルに示す。図１７に示される例では、最良なパフォーマンスを示す獲得ヘッドラインページ要素が対照バナーに沿って示される。
【０１２５】
図１８は、ＭＬＣＯを実施する開示される進化的計算の１つの実装態様の例示的な結果をグラフィカルに示すグラフである。図１８では、グラフは、図１７の最良なパフォーマンスを示す獲得ヘッドラインページ要素が変換率をほぼ０％から４．４４％に改善することができることを示す。
【０１２６】
リスク許容度及び個体数区分化
現実のユーザに関するライブのテストを含む既存の変換最適化解法は、それらが変換を中断させるときの非常に早い段階で中止にされることがある。変換最適化のリスク及び利益は、「逆相関する」。結果として、本明細書で開示されるＭＬＣＯは、所望のリスク許容度の範囲内で変換を増大させるシステム及び方法を提供する。図１９は、開示される進化的計算についてのリスク許容度を実装するリスク許容度モジュールの１つの実装態様を示す。図１９に示される例では、リスク許容度モジュールは、管理インタフェースにわたってアクセス可能な構成可能パラメータとしての役割を果たすことができるノブ１９０４の形式で記される。
【０１２７】
１つの実装態様では、どのくらいの割合または量のライブのユーザトラフィック（すなわち、何人のユーザ）がアルゴリズム的に進化したファネルまたは候補個体を提示され、どのくらいの割合または量のライブのユーザトラフィック（すなわち、何人のユーザ）が対照ファネルまたは候補個体を提示されるかを判定するリスク許容度レベルが指定される。例えば、控えめなリスク許容度レベルにおいて、ユーザにサービス提供されるウェブページの５％のみが進化的計算によって判定され、ウェブページの９５％が対照バージョンである。他の実装態様では、適度に控えめな（例えば、１５％の進化したウェブページ、８５％の対照ウェブページ）、適度な（例えば、２０％の進化したウェブページ、８０％の対照ウェブページ）、適度に積極的な（例えば、６０％の進化したウェブページ、４０％の対照ウェブページ）、及び積極的な（例えば、７０％の進化したウェブページ、３０％の対照ウェブページ）など、異なるリスク許容度レベルが指定されてもよい。それらのリスク許容度レベルごとに、アルゴリズム的に進化した候補個体及び対照候補個体へのユーザの露出する適切な部分が設定されてもよい。
【０１２８】
１つの実装態様では、候補個体数１０２における候補個体は、複数のヒューリスティックに従って、割当モジュール１９０２によって複数のグループまたはプールに区分化されてもよい。そのようなヒューリスティックの例は、どの程度良好に候補個体がパフォーマンス測定値（例えば、変換率若しくは収益率）に基づいているか、候補個体がライブのユーザ評価の程度に基づいてどの程度経験しているか、どのくらい最近に候補個体が作成されたか、エリートプールに選択されることに起因していくつの候補個体が生き残ったか若しくは候補個体が保護された回数、または候補個体が設計者の仕様に基づいた対照個体であるかを含む。
【０１２９】
１つの実装態様では、候補個体数内の第１の個体数グループは、対照個体のみを含み、候補個体数内の第２の個体数グループは、エリート個体のみを含み、候補個体数内の第３の個体数は、非エリートの前から存在する個体（すなわち、前の世代において形成された）のみを含み、候補個体数内の第４の個体数は、新たに形成された個体（すなわち、現在の世代において形成された）のみを含む。
【０１３０】
ノブ１９０４の構成に応じて、エリートプール１９１２及び対照プール１９２２からの候補個体の代替的な配置の頻度が設定されてもよい。例えば、ノブ１９０４が２０％に設定される場合、変換システム１０４は次いで、その時間の８０％のとき対照プール１９２２からの候補個体にアクセスし、それを配置する。他の実装態様では、当業者にとって直ちに明らかな異なるアクセス頻度ルールが設定されてもよい。
【０１３１】
加えて、ライブのユーザトラフィックが、ノブ１９０４と共に作動する候補テストモジュール２１２によって候補個体数の様々なグループまたはプールに割り振られてもよい。１つの例では、ライブのユーザトラフィックの５０％が対照プールにおける対照個体に割り当てられてもよく、リバーユーザトラフィックの３０％がエリートプールにおけるエリート個体（例えば、前の世代の最良に適応するメンバ及び次の世代に保存された）に割り当てられてもよく、ライブのユーザトラフィックの２０％が非エリートプールにおける非エリート個体（例えば、最近作成された孫ゲノム）に割り当てられてもよい。更に、候補個体数の異なる区分にわたるライブのユーザトラフィックの多用な分散は、リスク許容度方式を実装するために組織によって使用されてもよい。例えば、エリート個体が対照個体よりも優れているので、積極的なリスク許容度方式は、ライブのユーザトラフィックの大部分をエリートプールにおけるエリート個体に経路選択すること、並びにライブのユーザトラフィックの少数のみを対照プール及び非エリートプールに経路選択することを含むことができる。例えば、ライブのユーザトラフィックの６０％がエリートプールに割り当てられてもよく、リバーユーザトラフィックの２０％が対照プールに割り当てられてもよく、ライブのユーザトラフィックの２０％が非エリートプールに割り当てられてもよい。そのような方式では、更なるユーザがエリートウェブインタフェースに露出されることを理由に、組織的なパフォーマンス測定値（例えば、組織的な変換率または組織的な収益率）はより早く改善する。同様に、他の実装態様では、控えめな、半積極的な、または半控えめな方式が組織によって選択及び／または実装されてもよい。
【０１３２】
更なる他の実装態様では、異なるヒューリスティックは、ヒューリスティックによって定義された候補個体数の異なる区分、グループ、プール、またはクラスタにライブのユーザトラフィックを様々に分散することができるように、候補個体数を区分化するために使用されてもよい（例えば、組織内の重み付け確率、領域、ドメイン名、部門）。
【０１３３】
コンピュータシステム
図２０は、開示される技術を実装するために使用することができるコンピュータシステムの簡易ブロック図である。コンピュータシステム２０１０は、典型的には、バスサブシステム２０１２を介していくつかの周辺機器デバイスと通信する少なくとも１つのプロセッサ２０１４を含む。それらの周辺機器デバイスは、例えば、メモリデバイス及びファイル記憶サブシステムを含む記憶サブシステム２０２４、ユーザインタフェース入力デバイス２０２２、ユーザインタフェース出力デバイス２０１８、並びにネットワークインタフェースサブシステム２０１６を含むことができる。入力及び出力デバイスによって、コンピュータシステム２０１０とのユーザ対話が可能になる。ネットワークインタフェースサブシステム２０１６は、外部ネットワークへのインタフェースを提供し、外部ネットワークへのインタフェースは、他のコンピュータシステムにおける対応するインタフェースデバイスへのインタフェースを含む。
【０１３４】
１つの実装態様では、変換システム１０４は、記憶サブシステム２０２４及びユーザインタフェース入力デバイス２０２２に通信可能にリンクされる。
【０１３５】
ユーザインタフェース入力デバイス２０２２、またはクライアント若しくはクライアントデバイスは、キーボード、マウス、トラックボール、タッチパッド、またはグラフィックタブレットなどのポインティングデバイス、スキャナ、ディスプレイに組み込まれたタッチスクリーン、音声認識システム及びマイクロフォンなどの音声入力デバイス、並びに他のタイプの入力デバイスを含むことができる。概して、用語「入力デバイス」の使用は、情報をコンピュータシステム２０１０に入力する全ての可能なタイプのデバイス及び方法を含むことが意図される。
【０１３６】
ユーザインタフェース出力デバイス２０１８は、ディスプレイサブシステム、プリンタ、ファクシミリ、または音声出力デバイスなどの非視覚的ディスプレイを含むことができる。ディスプレイサブシステムは、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）などのフラットパネルデバイス、投射デバイス、または可視画像を作成するためのいくつかの他のメカニズムを含むことができる。ディスプレイサブシステムはまた、音声出力デバイスなどの非視覚的ディスプレイを提供することができる。概して、用語「出力デバイス」の使用は、情報をコンピュータシステム２０１０からユーザまたは別のマシン若しくはコンピュータシステムに出力する全ての可能なタイプのデバイス及び方法を含むことが意図される。記憶サブシステム２０２４は、本明細書で説明されるモジュール及び方法のいくつかまたは全ての機能性を提供するプログラミング及びデータ構造を記憶する。それらのソフトウェアモジュールは、概して、プロセッサ２０１４によって単独で、または他のプロセッサとの組み合わせで実行される。
【０１３７】
記憶サブシステムにおいて使用されるメモリ２０２６は、プログラムの実行の間に命令及びデータの記憶のためのメインランダムアクセスメモリ（ＲＡＭ）２０３４、並びに固定命令が記憶されるリードオンリメモリ（ＲＯＭ）２０３２を含むいくつかのメモリを含むことができる。ファイル記憶サブシステム２０２８は、プログラム及びデータファイルについての永続的な記憶を提供することができ、ハードディスクドライブ、関連付けられた着脱可能媒体を伴うフロッピーディスクドライブ、ＣＤ−ＲＯＭドライブ、光学ドライブ、または着脱可能媒体カートリッジを含むことができる。或る実装態様の機能性を実装するモジュールは、ファイル記憶サブシステム２０２８によって、記憶サブシステム２０２４、またはプロセッサによってアクセス可能な他のマシンに記憶されてもよい。
【０１３８】
バスサブシステム２０１２は、コンピュータシステム２０１０の様々な構成要素及びサブシステムに、意図するように相互に通信させるためのメカニズムを提供する。バスサブシステム２０１２が単一のバスとして概略的に示されるが、バスサブシステムの代替的な実装態様は、複数のバスを使用することができる。アプリケーションサーバ２０２０は、ハードウェア及び／またはソフトウェア、例えば、オペレーティングシステムなど、コンピュータシステム２０１０のアプリケーションが実行することを可能にするフレームワークであってもよい。
【０１３９】
コンピュータシステム２０１０自体は、パーソナルコンピュータ、ポータブルコンピュータ、ワークステーション、コンピュータ端末、ネットワークコンピュータ、テレビ、メインフレーム、サーバファーム、大まかにネットワークで結ばれたコンピュータの広範囲に分散されたセット、またはいずれかの他のデータ処理システム若しくユーザデバイスを含む可変タイプのコンピュータシステムであってもよい。コンピュータ及びネットワークのこれまでの変化する性質に起因して、図２０に記されるコンピュータシステム２０１０の説明は、本発明の好ましい実施形態を例示する目的のための特定の例としてのみ意図される。図２０に記されるコンピュータシステムよりも多くのまたは少ない構成要素を有するコンピュータシステム２０１０の多くの他の構成が可能である。
【０１４０】
これによって、出願人は、そのような特徴または特徴の組み合わせが本明細書で開示されるいずれかの課題を解決するかに関わらず、且つ請求項の範囲を限定することなく、本明細書で説明される各々の個々の特徴及び２つ以上のそのような特徴のいずれかの組み合わせと分離して、そのような特徴または組み合わせが、当業者の共通する一般的な知識を全体として考慮して現在の仕様に基づいてある程度実施されることが可能であることを開示する。出願人は、本発明の態様が、いずれかのそのような特徴または特徴の組み合わせから構成されてもよいことを示す。上述した説明を考慮して、様々な修正が本発明の範囲内で行われてもよいことが当業者にとって明らかである。
【０１４１】
前述の説明は、開示される技術を行うことを可能にし、使用するために提示される。開示される実装態様への様々な修正が明らかであり、本明細書で定義される一般的な原理は、開示される技術の精神及び範囲から逸脱することなく他の実装態様及び適用例に適用されてもよい。よって、開示される技術は、示される実装態様を限定することを意図していないが、本明細書で開示される原理及び特徴と一貫した最も広い範囲に一致することになる。開示される技術の範囲は、添付の特許請求の範囲によって定義される。
【図１】
2019504428.tif 000003
【図２】
2019504428.tif 000004
【図３】
2019504428.tif 000005
【図４】
2019504428.tif 000006
【図５】
2019504428.tif 000007
【図６】
2019504428.tif 000008
【図７】
2019504428.tif 000009
【図８】
2019504428.tif 000010
【図９】
2019504428.tif 000011
【図１０】
2019504428.tif 000012
【図１１】
2019504428.tif 000013
【図１２】
2019504428.tif 000014
【図１３】
2019504428.tif 000015
【図１４】
2019504428.tif 000016
【図１５】
2019504428.tif 000017
【図１６】
2019504428.tif 000018
【図１７】
2019504428.tif 000019
【図１８】
2019504428.tif 000020
【図１９】
2019504428.tif 000021
【図２０】
2019504428.tif 000022
【国際調査報告】
2019504428.tif 000023
2019504428.tif 000024
2019504428.tif 000025