2013-04-27 30 views
0

所以我正在建造一個岩石剪刀機器人,我需要人們能夠確定機器人不會「欺騙」並在玩家選擇他們的投擲後做出選擇。「視覺散列算法」用於人類觀察/檢查? (不是視覺散列,但算法)

通常,對於計算機的觀看,這是通過散列選擇範圍,也許提供鹽,然後露出選擇+鹽來完成。但我想要一些可以被人類「立即」驗證的東西。如果我只是揀選這個選項,那麼人們就會對使用哈希的方式犯規。

所以我的想法是有各種各樣的「視覺散列算法」 - 哈希算法,人類可以平凡,輕鬆地進行自己,並確認。

什麼我的想法是正確的,現在是有三個盒子:對面RPS箱子,石頭,剪刀和,然後有其他三個未標記盒A,B和C。然後我把Rock連接到其中的一個,使用糾結的線條,將紙張連接到另一個,將C連接到另一個。這些線條糾結在一起,因此需要時間從B框中「跟隨」回到比如Scissors。

當計算機選中它的投擲時,它會突出顯示相應的投擲框 - 也就是說,如果剪刀的纏結線導致框B,它會突出顯示框B.但它不會顯示它是剪刀。接下來人們會給出3秒的時間來接球。希望3秒鐘的速度不足以讓他們糾結線條並從B盒回溯到剪刀。

然後,當人類選擇投擲時,計算機顯示剪刀,並且還強調了從剪刀到框B的糾結線,以便清楚地看到剪刀整個時間導致框B,並且它不能剛剛被騙了。

雖然這工作,我想......它有點醜陋,不雅。人可以很容易地驗證計算機沒有作弊,但與此同時,它似乎不尋常或怪異,並引入瞭如此多的UI元素,使得屏幕顯得混亂或不可靠。 UI元素/圖形佔用越少,效果越好。

現在是否有解決此問題的解決方案?

  1. 提供了throw的「散列」以及散列算法,這需要花費時間(至少3秒)來「撤銷」。
  2. 當扔透露,應該是很容易和直觀,並立即識別的哈希算法有效地執行,而且罰球確實對應的哈希
  3. 它使用盡可能少的UI元素儘可能和具有小圖形足跡儘可能

回答

1

這很有趣。我腦海中的一個想法是用鍵顯示一個10×10的網格(每平方5個像素);

:岩石; 藍色:剪刀; 綠色:紙

然後用33個紅色,33個藍色和33個綠色隨機填充網格,然後用3種顏色中的1個隨機填充網格。一個人很難在小時間段內識別其他2種顏色的34種顏色,但計數可以在用戶輸入中顯示,並且可以選擇性地擴大網格/突出顯示細胞等。

小UI界面,並且比你的解決方案更整潔,但是否足夠好...

+0

我認爲也許計數33個方塊是太多的努力來驗證用戶的一部分,我正在尋找的東西是即刻(在幾秒鐘內)可驗證:(儘管謝謝你的想法。 – 2013-04-29 08:10:29