Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 人工智能-如何确定拍卖出价的估值?_Swift_Artificial Intelligence_Decision Tree - Fatal编程技术网

Swift 人工智能-如何确定拍卖出价的估值?

Swift 人工智能-如何确定拍卖出价的估值?,swift,artificial-intelligence,decision-tree,Swift,Artificial Intelligence,Decision Tree,我在做一个项目,有一系列的卡片被拍卖;出价最高者将在拍卖中赢得价值最高的卡 当AI玩家轮到时,他需要评估阵列并确定其出价的估值 忽略任何与验证或规则有关的内容;因为我已经对这些进行了编程和测试 我的问题更具体地说是如何将一个值与给定的值数组相关联;并提出一个投标价格 在该项目中,卡的范围为1…30;以30为最高 一次拍卖可能有6张牌,洗牌后放在拍卖场上 即: 我的问题是,计算机如何审查这些价值,并确定继续提高出价,甚至提出开盘价对他来说有多大价值 我们确实知道一些变量 所有信用卡被拍卖 库存现金

我在做一个项目,有一系列的卡片被拍卖;出价最高者将在拍卖中赢得价值最高的卡

当AI玩家轮到时,他需要评估阵列并确定其出价的估值

忽略任何与验证或规则有关的内容;因为我已经对这些进行了编程和测试

我的问题更具体地说是如何将一个值与给定的值数组相关联;并提出一个投标价格

在该项目中,卡的范围为1…30;以30为最高

一次拍卖可能有6张牌,洗牌后放在拍卖场上

即:

我的问题是,计算机如何审查这些价值,并确定继续提高出价,甚至提出开盘价对他来说有多大价值

我们确实知道一些变量

所有信用卡被拍卖 库存现金 目前还有多少轮拍卖,假设有6轮拍卖 鉴于此,我提出了一个基本的加权解决方案

即:

然后我在0和1.0之间随机化;越接近1.0,竞购者进行竞购的可能性越大

虽然它给了我一个投标的可能性,但它并没有告诉我他的出价的估值

理想情况下,我希望AI审查提供的卡,并根据他认为最高卡的价值进行出价,因为这是他出价的


这是我的疑问;给定一组具有值和已知参数的卡片;AI如何确定投标的估价。

最简单的方法是使用统计数据:

您可以对拍卖中的卡进行平均,然后将该值与已知的值分布(即所有可能集的钟形曲线)进行比较,以找到该拍卖的p值。p值越高,集合就越有价值,AI就越愿意为此付出代价

这是因为任何集合的所有值都将回归到平均值

如果拍卖集未知,也就是说玩家无法看到拍卖中的所有牌,那么AI可以根据已知的p值“猜测”,或者记住已经看到的牌,并将其从总发行中移除

您可以使用此统计库,而不必编写自己的:

听起来很有趣,我来试一试。我不擅长统计;但是值得一试
#1 - "Card name" - Value: 1
#2 - "Card name" - Value: 3
#3 - "Card name" - Value: 30
#4 - "Card name" - Value: 15
#5 - "Card name" - Value: 24
#6 - "Card name" - Value: 18
var weight = 1.0

if roundsRemaining = 1 {
   weight += 0.35
}

if weight > 1.0 { 
   weight = 1.0 
}