module Yahtzee::Probability
I will need some kind of UI, Yahtzee::Probability
aids in the decisions an AI will have to make based on their score card, the dice, and the probability vs possible score
Private Class Methods
straight_possibility_from(dice, possibilities, rolls_left)
click to toggle source
# File lib/probability.rb, line 26 def self.straight_possibility_from(dice, possibilities, rolls_left) dice_left = (dice-possibilities).count possible_faces = dice_left*Yahtzee::Dice::DIE_FACES rolls_left.to_f/possible_faces.to_f end
Public Instance Methods
large_straight(dice, rolls_left)
click to toggle source
# File lib/probability.rb, line 17 def large_straight(dice, rolls_left) possibilities = dice.sort.each_cons(4).select do |a,b,c,d| a+1==b && b+1==c && c+1==d end.flatten straight_possibility_from(dice, possibilities, rolls_left) end
small_straight(dice, rolls_left)
click to toggle source
# File lib/probability.rb, line 10 def small_straight(dice, rolls_left) possibilities = dice.sort.each_cons(3).select do |a,b,c| a+1==b && b+1==c end.flatten straight_possibility_from(dice, possibilities, rolls_left) end