このマクロでは、どの順番でどの技を検討するかの順番を指定する。
AE
Sheet 1 の AH1 のセルに input_form を代入する。AE2~AE8をダブルクリックすると、AE1にその文字が入る。
2014年5月29日木曜日
2014年5月27日火曜日
transfer_probrem
マクロ transfer_problem は isheet に貯えられた データを Sheet 1 の盤面に移す他にさまざまな設定を行う。
マクロは次の順番で実施される。
Transfer_problem
> basic_setting (M1)
基本設定(前出)
> kind_order_search (M1)
技をかける種類と順番をいろいろな方法で設定する。
> hot_candy (M4)
Candidate matrix や g-matrix を作成する。
> font_size_color (M10)
Sheet 1 の盤面において、表れる数字の大きさや色を決める。
> font_size_color_Sheet16 (M10)
Sheet 16 で同様の設定をする。
> keisen (M10)
Sheet 1 の盤面にブロック境界、セル境界にそれぞれ太字、細字の線をひく。
> num_of_cells (M6)
Givens の数、empty cellの数を求める。
> full_number_check (M27)
> kosu_in_unit (M27)
> diagonal_vacua (M27)
> aroma_impression (M53)
数字の形状による印象を数値化して%で表し点数を計算する。
> symmetry_check (M27)
7種類の図形の対称性を判定し、対称点数を求める。
> number_of_entrance (M29)
初期段階で基本技で取れるセルの個数を求める。
> search_order_list (M29)
設定された技をかける順番 md(imm) をSheet 6 にoutput する。
2014年5月15日木曜日
number_distribution
計算を行う時には、先に格納した問題をDatabase Sheet より Sheet 1に呼び出しておく。それには Fig. 8 の Diagram の上にあるコマンド Input Problem をクリックする。
このとき呼び出されるマクロが、この Number_distribution である。
このマクロでは、
number_distribution
> clear_table
> transfer_problem
> minimam_givens_for_present_diagram
> artistic_point
のように初期セットの他にいくつかの準備計算やLooks に関するポイント計算がおこなわれる。
Fig.8 Call the Problem from Databese ( Sheet 6 ) by clicking command bottum "Input Problem"
2014年5月11日日曜日
basic_setting
basic_setting のマクロは 計算に必要な基本情報を設定するマクロである。
計算を実行する前に 下図 のピンクの文字のように設定する。使用できる文字または数字は、周りにある該当するものを Double Click する。
isheet Sheet 1 “S1” 入力Data のあるSheet 番号
dsheet Sheet 1 “U1” 出力Data のあるSheet 番号
ver Sheet 1 “AN1” Version を選択
beg Sheet 1 “AP1” 各種の技(Strategy)を試す方法を選択
mondai Sheet 1 “D2” isheet の当該問題の記載の行番号
ppp=2 , qqq=10 Sheet 1 の Diagram (盤面)の原点となるセル位置
Sheet 1 の 盤面 ( i , j ) のセルは、 Cells ( ppp+I , qqq+j ) で表す。
ppA=6 , qqA=2 Sheet 2 の盤面の原点の位置。
msga Sheet 1 “C9” 計算を制御する記号
msgt Sheet 1 “B9” 技の選択肢を制御する記号
fmsd Sheet 1 “AS1” 基本技を設定する。
input_form Sheet 1 “AE1” 技の順番の方法を指定する
pt=3 , ps=3 Block の 縦横のサイズを指定する。
z=pt*ps=9
通常サイズナンプレは、9*9=81なので、z=9
16×16 ナンプレの場合には、 pt=ps=4, z=16.
この数字を換えることで、大型ナンプレ、変則ナンプレに対応できる。
2014年5月5日月曜日
Input_to_sheet11
Fig.2 のコマンド・ボタン 「 Input to isheet」(Sheet 1)をクリックすると、
input_to_sheet11 (Module 12 )
が実行される。
ここに、isheet はデータベースのあるSheet番号で、Sheet11、Sheet12、Sheet14、Sheet15などである。
このmacroでは、
① basic_setting 計算に先だって基本的な条件を設定するマクロの実行
② Fig.1の盤面の問題を isheet に書き込む。
Matrix 表示で セル (I,j) の値を isheet の mondai 行の
Cells(mondai, 9*i+1+j) に書き込む。
③ Visual Data Input
ntype(クラスターの種類の数)
nsum(クラスターの総数)
Fig.5 のクラスター毎の粒子数、個数、クラスター記号を読み込む。
また数字の配列や美しさに関するデータを読み込む。
④ number_distribution
> clear_table
> transfer_problem
> minimam_givens_for_present_diagram
> artistic_point
Number Place Simulation ( Output )
問題のインプットが済むと、Fig. 2 の右側の上から二番目のコマンド・ボタンの「Input to isheet 」 をクリックすると Fig.1 に示したデータ・ベースに 書き込まれてストアされる。
一度データベース・シートに格納されたデータは他の操作で消えることはない。もし消去したい時には同じ問題番号(Fig.1の762)にして、盤面を全てクリア(Clear ボタンをクリック)してから「Input to isheet」を押す。インプット・ミスの場合も同じ要領で訂正する。
解析計算を行うには、
① Clear をクリック (盤面をクリアする)
② Input Problem をクリック (データベースから問題が呼び出される)
③ Calculation Start をクリック
すると、ワン・クリックで次のような解答が得られる。
Fig.4 Final Answer Output of Sheet 1 Diagram
Fig.5 Digit Infomation Output of Givens Distribution
Order Cell Digit Obtained Stratege Time Each Technical Point Block,Row,Column
Fig. 6 Digital Output ( Sheet 6 )
Fig.7 Output of Visual Data Characteristics
2014年5月3日土曜日
Number Place Simulation ( Input )
数独の解法シミュレーションをするにはどのような順序で何をすればよいか?そのときアルゴリズムはどのようになっているか?使用されるマクロはどんなものか?について纏めてみよう。
(1)問題のインプット
問題のインプットは極めて簡単である。
① まず新しい問題を格納するSheet の番号と行番号を確認する。問題は一行に納められ、最初にインプットするのは、次のデータシートの Aから Eまでの5項目である。
A Puzzle Number 問題番号
B Book Name
C Author
D Date Calculated
E Level Published
② Sheet 1 の盤面に Puzzle の表出数(Givens)をインプットする。 (赤字)
登録:
投稿 (Atom)