寄能 昌子 栗林 恵梨 崔 麻美 趙 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
中川 裕子 村田 佳與子 SHARMA KRISHNA 張 大全 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
指導 吉田 信夫 |
1 はじめに
2次元パターンには、基本パターンを繰り返すものと繰り返さないものとがあり、
繰り返しパターンにはその対称性から17通りのタイプがあることが知られている。
私達は、Javaを用いて繰り返しなしの2次元パターンを生成することを試みた。
Javaを用いた主な理由は、Javaはプラットホームに依存しないということからである。
Javaには、Javaアプリケーション、Javaアプレット、Javaサーブレットなど、
用途によって使い分けることができるが、私たちはJavaアプレットを用いた。
その理由は、Javaアプレットはホームページから利用できることである。
また、パターン生成には大量の計算を要するため、サーブレットでは同時にアクセスがあったとき、
サーバーに負荷がかかり動作が遅くなる可能性があるためである。
さらに、アプレットを利用すると、生成されたパターンを印刷したいときブラウザの印刷機能が使用でき、
作成するシステムに印刷機能を持たせる必要性がないことも理由の一つである。
2 2次元パターン生成システム
私たちが考えた2次元パターンの生成方法は図1のような周期的に変化する波形スレートを 図2のように回転させて重ね合せる方法である。 波形スレートを重ね合せてできる凹凸を色や明度に変えて2次元に表示するとパターンが生成されるが、 連続的な変化だとパターンにならないので、重ね合せる前に図3に示すシグモイド関数を用いて単純化し、重ね合せた。 以上の手順は図4に示す4層ニューラルネットモデルに対応する。 このニューラルネットに学習機能を持たせ、教師パターンを入力すればその教師パターンに類似した 別のパターンを自動的に生成するシステムができるはずである。
2−1 2次元パターン生成システムを作成する過程
2次元パターン生成システムを作成するに先立って、
私達は、Javaアプレットによるグラフィックスプログラミングを次の手順によって段階的に学んだ。
B三角関数の利用方法を学ぶ
2次元パターンを生成するには周期関数を必要とするので 私達、はここでサインカーブとコサインカーブ、及びsinとcosとを媒介変数で結合して円とリサージュ図形を描く4つのプログラムを作成した。
3 おわりに
私達は、ニューラルネットを用いて2次元パターンを
生成するプログラムをJavaアプレットを用い作成した。このプログラムによって、
ホームページ上から2次元パターンを生成させるシステムの基本的な形を作ることができた。
しかし、今回は放射状に展開していくパターンまでであり、17通り
あると言われている繰り返しパターンの生成までには至っていない。また、
ニューラルネットに学習機能を持たせてパターンを自動生成さ
せるという段階にも至っていない。
今後は、まず、17通りすべての2次元繰り返しパターンが生成でき
るシステムに改良していくことが必要とされる。