Skip to content

taikis/amidakuji

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

amidakuji

English

Japanese

What's Amidakuji?

Amidakuji (あみだくじ) is also known as "Ghost Leg" in Asia. Ghost Leg - Wikipedia

Japanese use Amidakuji when they make decisions and believe it is fair and random.

Is it true? I tested it.

Definition of Amidakuji

Amidakuji is composed of vertical line and horizontal line.

Vertical line is an array, and horizontal line is array replace in programing.

ex:

image

Step1 Make array.

[1, 2, 3, 4]

def repoti(potision):
    potision = list(range(v_num ))
    #print(potision)
    return potision

Step2 replace

[2, 1, 3, 4] [2, 3, 1, 4] [2, 1, 3, 4] [2, 1, 4, 3]

def swap(potision):
    s = random.randint(0,v_num-2)
    temp = potision[s]
    potision[s] = potision [s+1]
    potision [s+1] = temp
    #print(potision)

Step3 End

result is [2, 1, 4, 3]

sheet = pd.DataFrame(result)
sheet.to_csv("result.csv")

what I do?

I tested 10,000 times.

I found that Amidakuji is not completely random.

So. if you play Amidakuji, you should choose right over that you want.



あみだくじって?

あみだくじとは、アジアではGhost Legとも呼ばれています。

日本人はよく、何かを決定するときにこれを用いています。(用いてますよね?)また、みんなこれが公平で、ランダムなものと信じています。

ほんとうでしょうか。検証します。

あみだくじの定義

あみだくじは縦棒と横棒で構成されています。

縦棒は配列で、横棒はその置換と捉えることができます。

例:

image

Step1 配列を作る

[1, 2, 3, 4]

def repoti(potision):
    potision = list(range(v_num ))
    #print(potision)
    return potision

Step2 置換

[2, 1, 3, 4] [2, 3, 1, 4] [2, 1, 3, 4] [2, 1, 4, 3]

def swap(potision):
    s = random.randint(0,v_num-2)
    temp = potision[s]
    potision[s] = potision [s+1]
    potision [s+1] = temp
    #print(potision)

Step3 終わり!

result is [2, 1, 4, 3]

sheet = pd.DataFrame(result)
sheet.to_csv("result.csv")

何をしたの?

一万回試しました。

あみだくじは完全にランダムではありませんでした。

あたりの真上を取るといいですね。