一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种具有改进后可发现性的检索方法与流程

2021-12-14 12:12:00 来源:中国专利 TAG:
一种具有改进后可发现性的检索方法与流程

本申请涉及计算机化数据搜索领域,具体涉及用于在线游戏平台数据中以改进后可发现性进行检索的方法、系统和计算机可读介质。

背景技术

一些在线游戏平台允许用户创建内容、相互连接、相互交互(例如,在游戏内)并通过互联网相互共享信息。在线游戏平台的用户可以参与多人游戏环境,其中其他用户已经创建了游戏或游戏的一部分。

当用户检索用户生成的内容(例如,游戏、游戏项目等)或其他内容时,检索引擎可以基于历史数据返回结果,例如在下载数量方面的流行度、用户评级等。然而,此类检索引擎可能会忽略或不强调较新的内容,因为此类内容可能不具有较旧内容可能具有的历史数据。因此,较新的内容可能不像较旧的内容那样容易被发现。因此,需要在线游戏平台(或其他系统)的内容(例如,用户生成的内容等)检索引擎具有针对较新内容的改进后可发现性。

考虑到上述需要等,提供了一些实施方式。



技术实现要素:

一些实施例提高了在用户进行的检索中新增内容的可发现性。

一些实施例包括一种方法。该方法包括:接收,在服务器处,来自设备的检索查询;从第一标准和第二标准中选择检索标准。该方法还包括使用所述检索标准对数据存储器执行所述检索查询,以及响应于执行所述检索查询,从所述数据存储器接收检索结果。该方法还包括传输所述检索结果的至少一部分和与所述检索标准相对应的状态指示给所述设备。

该方法还包括接收针对所述检索结果的附加结果请求,其中,所述请求包括所请求的附加结果的指示和所述状态指示;和根据所述状态指示提供附加检索结果。在一些实施例中,所述数据存储器包括一个或者多个游戏以及每个游戏的相关信息;其中,所述每个游戏的相关信息包括游戏名称、游戏类型、游戏开发者名字、游戏第一可用时间、游戏最新版本可用时间或者游戏流行度中的一个或者多个;其中,使用所述检索标准对数据存储器执行所述检索查询包括将所述检索标准与所述每个游戏的相关信息进行匹配。

在一些实施例中,所述检索标准是所述第一标准并且所述检索结果包括根据每个检索结果的相应流行度排列的检索结果。在一些实施例中,所述检索标准是所述第二标准,所述方法还包括基于匹配所述检索查询的每个项目的相关最近度来排列所述检索结果。

在一些实施例中,所述检索结果根据所述检索查询确定且不基于所述检索标准,并且所述检索标准被用于确定所述检索结果的排序。在一些实施例中,所述检索查询包括多个术语,选择所述检索标准基于每个检索术语并且独立于针对其它检索术语的检索标准选择。

该方法还包括计算所述检索查询中的一个或者多个检索术语的哈希值与随机值相加的模结果,以及比较所述模结果和检索标准选择阈值。该方法还包括如果所述模结果超过所述检索标准选择阈值,选择所述第一标准;和如果所述模结果不超过所述检索标准选择阈值,选择所述第二标准。

一些实施例包括一种其上存储有软件指令的非暂时性计算机可读介质,所述软件指令在由客户端设备的处理器执行时使所述处理器执行操作。操作包括接收检索查询,以及从第一标准和第二标准中选择检索标准。操作还包括传输所述检索查询和所述检索标准,以及响应于执行所述检索查询,从数据存储器接收检索结果。操作还包括存储与所述检索标准相对应的状态指示。

操作还包括接收针对所述检索结果的附加结果请求,其中,所述请求包括所请求的附加结果的指示和所述状态指示;和根据所述状态指示提供附加检索结果。

在一些实施例,所述数据存储器包括一个或者多个游戏以及每个游戏的相关信息,其中,所述每个游戏的相关信息包括游戏名称、游戏类型、游戏开发者名字、游戏第一可用时间、游戏最新版本可用时间或者游戏流行度中的一个或者多个,其中,使用所述检索标准对数据存储器执行所述检索查询包括将所述检索标准与所述每个游戏的相关信息进行匹配。在一些实施例,所述检索标准选择基于可配置阈值。在一些实施例,所述检索标准选择基于可针对一个或者多个特定检索术语独立配置的阈值。

在一些实施例,所述检索标准是所述第二标准,所述检索结果包括基于与相应检索结果对应的每个项目的相关最近度来排列的检索结果。在一些实施例,所述检索结果根据所述检索查询确定且不基于所述检索标准,其中所述检索标准被用于确定所述检索结果的排序。

在一些实施例,选择所述检索标准基于评估一个或者多个检索术语关键词的哈希值与随机值相加的模结果,其中,所述评估包括比较所述模结果和检索标准选择阈值,从而使得所述检索的第一部分使用所述第一标准进行而所述检索的剩余部分使用所述第二标准进行。

一些实施例包括一种系统,包括:耦合到其上存储有软件指令的非暂时性计算机可读介质的一个或多个处理器,当该软件指令由该一个或多个处理器执行时,使得该一个或多个处理器执行操作。操作包括在服务器处接收检索查询;从第一标准和第二标准中选择检索标准,其中,选择所述检索标准基于评估模结果,所述评估包括比较所述模结果和检索标准选择阈值,从而使得所述检索的第一部分使用所述第一标准进行而所述检索的剩余部分使用所述第二标准进行。操作还包括使用所述检索标准对数据存储器执行所述检索查询;响应于执行所述检索查询,从所述数据存储器接收检索结果。操作还包括传输所述检索结果的一部分给设备,所述检索查询来自该设备;和传输与所述检索标准相对应的状态指示给该设备,所述检索查询来自该设备。

操作还包括接收针对所述检索结果的附加结果请求,其中,所述请求包括所请求的附加结果的指示和所述状态指示;和根据所述状态指示提供附加检索结果。

在一些实施例,所述第一标准指示检索引擎返回按每个查询结果的相应流行度排名的检索结果。在一些实施例,所述第二标准指示检索引擎返回基于与相应检索结果对应的每个项目的相关最近度来排列的检索结果。

附图说明

通过下面的详细描述以及本申请的各种实施方式的附图,将更全面地理解本申请的各种实施方式。

图1示出了本申请实施例提供的具有改进后可发现性的检索的示例环境。

图2示出了本申请实施例提供的具有改进后可发现性的示例检索方法的流程图。

图3示出了本申请实施例提供的具有改进后可发现性的示例检索方法的流程图。

图4示出了本申请实施例提供的示例计算设备的框图。

图5示出了本申请实施例提供的示例图形用户界面展示检索结果。

图6示出了本申请实施例提供的示例图形用户界面展示检索结果。

具体实施方式

在线游戏平台(也称为“用户生成内容平台”或“用户生成内容系统”)为用户提供多种交互方式。例如,在线游戏平台的用户可以于在线游戏平台内创建游戏或其他内容或资源(例如,角色、图形、虚拟世界中的游戏项目等)。在线游戏平台的用户也可以检索游戏或其他内容。

在线游戏平台的用户可以朝着共同的目标一起工作、共享各种虚拟游戏项目、相互发送电子消息等等。在线游戏平台的用户可以使用角色玩游戏。在线游戏平台也可能允许平台的用户相互交流。例如,在线游戏平台的用户可以使用语音消息(例如,通过语音聊天)、文本消息、视频消息或以上的组合相互通信。在线游戏平台可以提供一个虚拟的三维环境,用户可以在其中玩在线游戏。为了帮助提升网络游戏的娱乐价值,在线游戏平台可以提供游戏、游戏内容或其他游戏相关资源的检索引擎,其中检索引擎提高了对最近添加的游戏、内容或资源的可发现性。

图1示出了根据本申请的一些实施例的示例系统架构100。系统架构100(这里也称为系统)包括在线游戏平台102、第一客户端设备110(一般称为客户端设备110/116)、网络122和第二客户端设备116。在线游戏平台102可以包括游戏引擎104、一个或多个游戏105、检索引擎106和数据存储器108等。客户端设备110可以包括游戏应用程序112。客户端系统116可以包括游戏应用程序118。用户114和120可以分别使用客户端设备110和116来与在线游戏平台102交互。

系统架构100用于说明而非限制。在一些实施例中,系统架构100可以包括以与图1所示相同或不同的方式配置的相同、更少、更多或不同的元件。

在一种实现方式中,网络122可以包括公共网络(例如,因特网)、专用网络(例如,局域网(LAN)或广域网(WAN))、有线网络(例如,以太网网络)、无线网络(例如802.11网络、Wi-Fi网络或无线LAN(WLAN))、蜂窝网络(例如长期演进(LTE)网络)、路由器、集线器、交换机、服务器计算机,或其组合。

在一种实施方式中,数据存储器108可以是非暂时性计算机可读存储器(例如随机存取存储器)、高速缓存、驱动器(例如硬盘驱动器)、闪存驱动器、数据库系统,或另一种能够存储数据的组件或设备。数据存储器108还可以包括也可以跨越多个计算设备(例如多个服务器计算机)的多个存储组件(例如多个驱动器或多个数据库)。

在一些实施例中,在线游戏平台102可以包括具有一个或多个计算设备的服务器(例如,云计算系统、机架式服务器、服务器计算机、物理服务器集群等)。在一些实施例中,服务器可能包含于在线游戏平台102中,是一个独立的系统,或者是另一个系统或平台的一部分。

在一些实施例中,在线游戏平台102可以包括一个或多个计算设备(例如机架式服务器、路由器计算机、服务器计算机、个人计算机、大型计算机、膝上型计算机、平板计算机、台式计算机等),数据存储器(例如硬盘、存储器、数据库)、网络、软件组件和/或硬件组件,可用于在在线游戏平台102上执行操作并提供用户访问在线游戏平台102。在线游戏平台102还可包括网站(例如网页)或应用后端软件,其可用于向用户提供对在线游戏平台102提供的内容的访问。例如,用户可以分别使用客户端设备110/116上的游戏应用程序112/118访问在线游戏平台102。

在一些实施例中,在线游戏平台102可以是一种提供用户之间联系的社交网络或一种允许用户(例如最终用户或消费者)与其他用户于在线游戏平台102上进行交流的用户生成内容系统。其中通信可以包括语音聊天(例如,同步和/或异步语音通信)、视频聊天(例如,同步和/或异步视频通信)或文本聊天(例如,同步和/或异步基于文本的通信)。在本申请的一些实施例中,“用户”可以表示为一个人。然而,本申请的其他实施例包括“用户”(例如,创建用户)是由一组用户或自动化源控制的实体。例如,在用户生成的内容系统中联合为社区或群组的一组个人用户可以被视为“用户”。

在一些实施例中,在线游戏平台102可以是虚拟游戏平台。例如,游戏平台可以向能通过网络122使用客户端设备110/116访问或与之交互的游戏(例如,用户生成的游戏或其他游戏)的用户社区提供单人游戏或多人游戏。例如,游戏(在此也称为“视频游戏”、“在线游戏”或“虚拟游戏”)可以是二维(2D)游戏、三维(3D)游戏(例如,3D用户生成的游戏)、虚拟现实(VR)游戏或增强现实(AR)游戏。在一些实施例中,用户可以检索游戏并与其他用户一起参与从检索结果中选择的一个或多个游戏的游戏。在一些实施例中,从检索结果中选出的游戏可以与该游戏的其他用户实时进行。

在一些实施例中,游玩可以指一个或多个玩家在游戏(例如,105)中使用客户端设备(例如,110和/或116)的交互或在显示器或其他客户端设备110或116的输出设备(例如,118/132)。

在一些实施例中,游戏105可以包括能使用被配置为向实体呈现游戏内容(例如,数字媒体项)的软件、固件或硬件来执行或加载的电子文件。在一些实施例中,可以执行游戏应用程序112/118并结合游戏引擎104呈现游戏105。在一些实施例中,游戏105可能具有一组共同的规则或共同目标,以及游戏105的环境共享一组共同的规则或共同的目标。在一些实施例中,不同的游戏可能有不同的规则或目标。

在一些实施例中,游戏可以具有一个或多个环境(这里也称为“游戏环境”或“虚拟环境”),其中多个环境可以链接。环境的示例可以是三维(3D)环境。游戏105的一个或多个环境在本文中可统称为“世界”或“游戏世界”或“虚拟世界”或“宇宙”。世界的示例可以是游戏105的3D世界。例如,用户可以构建链接到由另一个用户创建的另一个虚拟环境的虚拟环境。虚拟游戏的角色可以越过虚拟边界进入相邻的虚拟环境。

可以注意到,3D环境或3D世界使用图形,该图形使用代表游戏内容的几何数据的三维表示(或至少当前游戏内容显示为3D内容,无论是否利用几何数据的3D表示)。2D环境或2D世界使用的图形使用代表游戏内容的几何数据的二维表示。

在一些实施例中,在线游戏平台102可以托管一个或多个游戏105,并且可以允许用户使用客户端设备110/116的游戏应用程序112/118与游戏105交互(例如,游戏检索、游戏相关内容或其他内容)。在线游戏平台102的用户(例如,114和/或120)可以玩、创建、交互或构建游戏105、为游戏105进行检索、与其他用户通信、创建和构建对象(例如,也称为游戏105的“物品”或“游戏物品”或“虚拟游戏物品”),和/或物品检索。例如,在生成用户生成的虚拟物品时,用户可以创建角色、角色的装饰、交互式游戏的一个或多个虚拟环境、或构建在游戏105中使用的建筑结构等。在一些实施例中,用户可以与在线游戏平台102的其他用户购买、出售或交易游戏虚拟游戏对象,例如平台内货币(例如,虚拟货币)。在一些实施例中,在线游戏平台102可以将游戏内容传输到游戏应用程序(例如,112)。在一些实施例中,游戏内容(在此也称为“内容”)可以指与游戏相关的任何数据或软件指令(例如,游戏对象、游戏、用户信息、视频、图像、命令、媒体项等),其与在线游戏平台102或游戏应用程序相关联。在一些实施例中,游戏对象(例如,在本文中也称为“物品”或“游戏物品”或“虚拟游戏物品”)可以指在在线游戏平台102的游戏应用程序105或客户端设备110/116的游戏应用程序112或118中被使用、创建、共享或者其它描述的对象。例如,游戏对象可以包括零件、模型、角色、工具、武器、服装、建筑物、车辆、货币、植物群、动物群、上述的组件(例如建筑物的窗户)等。

可以注意到,托管游戏105的在线游戏平台102是出于说明而非限制的目的而提供的。在一些实施例中,在线游戏平台102可以托管一个或多个媒体项目,这些媒体项目可以包括从一个用户到一个或多个其他用户的通信消息。媒体项目可以包括但不限于数字视频、数字电影、数字照片、数字音乐、音频内容、旋律、网站内容、社交媒体更新、电子书、电子杂志、数字报纸、数字有声读物、电子期刊、网络博客、简易信息聚合RSS提要、电子漫画书、软件应用程序等。在一些实施例中,媒体项目可以是能使用软件、固件或硬件来执行或加载的电子文件,该软件、固件或硬件被配置为将数字媒体项目呈现给实体。

在一些实施例中,游戏105可以与特定用户或特定用户组相关联(例如,私人游戏),或者使在线游戏平台102的用户广泛可用(例如公共游戏)。在一些实施例中,在线游戏平台102将一个或多个游戏105与特定用户或用户组相关联。在一些实施例中,在线游戏平台102可以使用用户账号信息(例如,用户账号识别符,例如用户名和密码)。

在一些实施例中,在线游戏平台102或客户端设备110/116可包括游戏引擎104或游戏应用程序112/118。游戏引擎104可以包括类似于游戏应用程序112/118的游戏应用程序。在一些实施例中,游戏引擎104可以用于游戏105的开发或执行。例如,游戏引擎104可以包括用于2D、3D、VR或AR图形的渲染引擎(渲染器)、物理引擎、碰撞检测引擎(和碰撞响应)、声音引擎、脚本功能、动画引擎、人工智能引擎、网络功能、流媒体功能、内存管理功能、线程功能、场景图功能或对过场动画的视频支持,以及其他功能。游戏引擎104的组件可以生成帮助计算和渲染游戏的命令(例如,渲染命令、碰撞命令、物理命令等)。在一些实施例中,客户端设备110/116的游戏应用程序112/118可以分别独立地工作,与在线游戏平台102的游戏引擎104协作,或者,上述两者的组合。

在一些实施例中,在线游戏平台102和客户端设备110/116都执行游戏引擎(分别为104、112和118)。使用游戏引擎104的在线游戏平台102可以执行一些或所有游戏引擎功能(例如,生成物理命令、渲染命令等),或者将一些或所有游戏引擎功能卸载到客户端设备110的游戏引擎104。在一些实施例中,每个游戏105于在线游戏平台102上执行的游戏引擎功能与在客户端设备110和116上执行的游戏引擎功能之间可能具有不同的比例。例如,在至少两个游戏对象之间存在碰撞的情况下,在线游戏平台102的游戏引擎104可以用于生成物理命令,而附加的游戏引擎功能(例如,生成渲染命令)可以卸载到客户端设备110。在一些实施例中,在线游戏平台102和客户端设备110上执行的游戏引擎功能的比例可以基于游戏条件而改变(例如,动态地)。例如,如果参与特定游戏105的游玩的用户数量超过阈值数量,则在线游戏平台102可以执行先前由客户端设备110或116执行的一个或多个游戏引擎功能。

例如,用户可能正在客户端设备110和116上玩游戏105,并且可以发送控制指令(例如,用户输入,例如右、左、上、下、用户选择或角色位置和速度信息等)到在线游戏平台102。在从客户端设备110和116接收控制指令之后,在线游戏平台102可以基于控制指令发送游戏指令(例如,参与组队游戏的角色的位置和速度信息或命令,例如渲染命令、碰撞命令等)到客户端设备110和116。例如,在线游戏平台102可以对控制指令执行一个或多个逻辑操作(例如,使用游戏引擎104)以生成用于客户端设备110和116的游戏指令。在其他情况下,在线游戏平台102可以传输一个或多个或控制指令从一个客户端设备110到其他参与游戏105的客户端设备(例如,116)。客户端设备110和116可以使用游玩指令并呈现游戏玩法以呈现在客户端设备110和116。

在一些实施例中,控制指令可以指的是指示了用户角色在游戏中的动作的指令。例如,控制指令可以包括控制游戏中动作的用户输入,例如右、左、上、下、用户选择、陀螺仪位置和方向数据、力传感器数据等。控制指令可以包括角色位置和速度信息。在一些实施例中,控制指令直接发送到在线游戏平台102。在其他实施例中,控制指令可以从一个客户端设备110发送到另一个客户端设备(例如116),其中另一个客户端设备生成游玩指令,其利用本地游戏引擎104。控制指令可以包括在音频设备(例如,扬声器、耳机等)上播放来自另一个用户的语音通信消息或其他声音的指令。

在一些实施例中,游玩指令可以指允许客户端设备110(或116)呈现游戏的游玩的指令,例如多人游戏。游玩指令可以包括用户输入(例如,控制指令)、角色位置和速度信息或命令(例如,物理命令、渲染命令、碰撞命令等)中的一个或多个。

在一些实施例中,角色(或通常的游戏对象)由组件构成,其中一个或多个组件可由用户选择,这些组件自动连接在一起以帮助用户进行编辑。一个或多个角色(在此也称为“化身”或“模型”)可以与用户相关联,其中用户可以控制该角色以促进用户与游戏105的交互。在一些实施例中,角色可以包括例如身体部位(例如头发、手臂、腿等)和配件(例如T恤、眼镜、装饰图像、工具等)的组件。在一些实施例中,可定制的角色的身体部位包括头部类型、身体部位类型(手臂、腿、躯干和手)、面部类型、头发类型和皮肤类型等。在一些实施例中,可定制的配件包括服装(如衬衫、裤子、帽子、鞋子、眼镜等)、武器或其他工具。在一些实施例中,用户还可以控制角色的尺寸(例如,高度、宽度或深度)或角色组成部分的尺寸。在一些实施例中,用户可以控制角色的比例(例如,块状、解剖等)。需要说明的是,是一些实施例,角色可能不包含角色游戏对象(例如身体部位等),但用户可以控制角色(不包含角色游戏对象)以方便用户与游戏的交互(例如,没有渲染角色游戏对象,但用户仍然控制角色来控制游戏内动作的益智游戏)。

在一些实施例中,组件,例如身体部位,可以是原始几何形状,例如块状、圆柱体、球体等,也可以是其他一些原始形状,例如楔形、环面、管子、通道等。在一些实施例中,创建者模块可以发布用户的角色供在线游戏平台102的其他用户查看或使用。在一些实施例中,创建、修改或自定义角色,其他游戏对象,游戏105或游戏环境可以由用户通过用户界面(例如,开发者界面)并且使用或不使用脚本(或者使用或不使用应用程序编程接口AP)来执行。可以注意到,出于说明而非限制的目的,角色被描述为具有人形形式。还可以注意到,角色可以具有任何形式,例如车辆、动物、无生命物体或其他创造性形式。

在一些实施例中,在线游戏平台102可以将用户创建的角色存储在数据存储器108中。在一些实施例中,在线游戏平台102维护可以经由过程呈现给用户的角色目录和游戏目录。

在一些实施例中,游戏目录包括存储于在线游戏平台102上的游戏图像。另外,用户可以从角色目录中选择一个角色(例如,由用户或其他用户创建的角色)来参与所选择的游戏。角色目录包括在线游戏平台102上存储的角色的图像。在一些实施例中,角色目录中的一个或多个角色可能已经由用户创建或定制。在一些实施例中,所选择的角色可能具有定义角色的一个或多个组件的角色设置。

在一些实施例中,用户的角色可以包括组件的配置,其中组件的配置和外观以及更一般地角色的外观可以通过角色设置来定义。在一些实施例中,用户角色的角色设置至少可以部分由用户选择。在其他实施例中,用户可以选择具有默认角色设置的角色或其他用户选择的角色设置。例如,用户可以从具有预定义角色设置的角色目录中选择默认角色,并且用户可以通过改变一些角色设置(例如,添加带有自定义标志的衬衫)来进一步自定义默认角色。在线游戏平台102可以将角色设置与特定角色相关联。

在一些实施例中,客户端设备110或116可各自包括计算设备,例如个人计算机PC、移动设备(例如膝上型电脑、移动电话、智能手机、平板电脑或上网本计算机)、联网电视、游戏机等。在一些实施例中,客户端设备110或116也可称为“用户设备”。在一些实施例中,一个或多个客户端设备110或116可以在任何给定时刻连接到在线游戏平台102。可以注意的是,提供客户端设备110或116的数量作为说明而非限制。在一些实施例中,可以使用任意数量的客户端设备110或116。

在一些实施例中,每个客户端设备110或116可分别包括游戏应用程序112或118的实例。在一种实施方式中,游戏应用程序112或118可以允许用户使用在线游戏平台102并与在线游戏平台102交互,例如检索游戏或其他内容,控制在线游戏平台102托管的虚拟游戏中的虚拟角色,或查看或上传内容,例如游戏105、图像、视频项目、网页、文档等。在一个示例中,游戏应用程序可以是可以访问、检索、呈现或导航内容(例如,虚拟环境中的虚拟角色等)的网页应用程序(例如与网页浏览器结合运行的应用程序),其由网络服务器提供服务。在另一示例中,游戏应用程序可以是本地应用程序(例如移动应用程序、应用程序或游戏程序),其在客户端设备110或116本地安装和执行并且允许用户与在线游戏平台102交互。游戏应用程序可以向用户呈现、显示或呈现内容(例如网页、媒体查看器)。在一个实施例中,游戏应用程序还可以包括嵌入在网页中的嵌入式媒体播放器(例如Flash播放器)。

根据本申请的各方面,游戏应用程序112/118可以是在线游戏平台应用程序,供用户构建、创建、编辑、上传内容到在线游戏平台102以及与在线游戏平台102交互(例如,玩由在线游戏平台102主办的游戏105)。因此,游戏应用程序112/118可以由在线游戏平台102提供给客户端设备110或116。在另一个示例中,游戏应用程序112/118可以是从服务器下载的应用程序。

在一些实施例中,用户可以通过游戏应用程序登录在线游戏平台102。用户可以通过提供用户账号信息(例如,用户名和密码)来访问用户账号,其中用户账号与可用于参与在线游戏平台102的一个或多个游戏105的一个或多个角色相关联。

通常,在一个实施方式中描述为由在线游戏平台102执行的功能也可以由客户端设备110或116或服务器执行,在其他实施方式中如果合适的话。此外,归因于特定组件的功能可以由一起操作的不同或多个组件来执行。在线游戏平台102也可以作为通过适当的应用程序接口API提供给其他系统或设备的服务来访问,因此不限于在网站中使用。

在一些实施例中,在线游戏平台102可能包括检索引擎106。在一些实施例中,检索引擎106可以是允许在线游戏平台102向用户提供检索功能的系统、应用程序或模块。其中检索功能允许用户检索在线游戏平台102内的游戏、游戏相关内容或其他内容。在一些实施例中,检索引擎106可以执行如图2和图3所示的流程。

图2是根据一些实施例的具有改进的可发现性的检索的示例方法200的流程图。处理开始于202,其中在服务器处接收检索查询。例如,用户(例如,114)可以将检索查询输入到在客户端设备110上执行的游戏应用程序112中,该程序将检索查询发送到服务器(例如,102)导致在服务器接收检索查询。检索查询可以包括用户于在线游戏平台(例如,102)或其他系统中的游戏或游戏相关内容中检索的一个或多个术语或关键词。处理继续到204。

在204处,从第一标准和第二标准中选择检索标准。例如,第一标准可以包括与游戏或游戏相关内容相联系的历史数据(例如下载次数、用户评分、播放次数等),而第二标准可以包括最近度(例如上传到在线游戏平台的游戏或游戏相关内容的最近程度)。历史数据可以包括诸如用户检索关键字(例如大亨)和点击游戏结果(例如游戏A)的次数等数据。虽然这里为了说明的目的描述了两个标准,但可以使用和选择两个以上的标准。

在第一标准和第二标准之间进行选择可以包括基于检索查询(例如,一个或多个术语或关键词)和/或数值函数确定数值,从而使得第一标准被选择用于查询的特定比例(如百分之九十),第二标准被选择用于查询的剩余部分(例如剩余的百分之十)。分配给第一标准和第二标准的比例可以手动或自动调整。自动调整分配给不同检索标准的比例可以基于用户对呈现的检索结果的反应(例如,用户从检索结果中选择的比率)或其他因素。此外,分配给不同检索标准的比例可以根据在线游戏平台的用户负载、一天中的时间、星期几、日期等进行调整。此外,分配给不同检索标准的比例可能会定期调整(例如,调整以便定期引入更大的可发现性,例如每隔一天或每周一次,并在给定的时间段内如一小时或一天等)。在第一标准和第二标准之间进行选择的细节将在下面结合图3进行更详细的描述。处理继续到206。

在206处,使用所述检索标准对数据存储器执行所述检索查询。例如,检索查询是使用所选的检索标准(如在204选择的第一标准或第二标准)在数据存储器(如108)内进行检索。其中数据存储器包含用户生成的内容,例如游戏和游戏相关内容(例如用于游戏的化身、对象等),以及非用户生成的内容,例如游戏和游戏相关内容。数据存储器还可以包含与游戏相关的内容或信息,例如游戏名称、类型、开发者姓名、游戏第一次可用时间、游戏最新版本可用时间或游戏流行度中的一个或多个。数据存储器可以通过关键字、最近度时间戳等字段对项目进行索引。查询处理可以包括(a)当已经选择第一标准时,基于关键字匹配并返回由流行度排序的最佳匹配;或(b)当已经选择第二标准时,根据关键词进行匹配,将检索结果按最近的第一顺序排序。在一些实施例中,可以手动调整阈值。

例如,如果历史检索结果排序被认为是最常用于向用户显示检索结果的主要标准,而最近度标准被认为是次要标准并且较少用于显示检索结果,则阈值可以是根据次要检索标准对主要检索标准的影响程度来定义。例如,如果将近期游戏快速纳入历史标准非常重要,则应提高阈值,以使更多近期游戏更频繁地出现在检索结果中。

在另一个例子中,如果检索标准是第一标准,则检索结果可以包括按每个查询结果的相应流行度排序的检索结果。在另一个例子中,如果检索标准是第二标准,所述检索结果包括基于与相应检索结果对应的每个项目的相关最近度来排列的检索结果。在一些实施例中,基于与相应检索结果对应的每个项目的相关最近度来排列,可以包括对最新添加的项目进行排序。

除了检索查询和检索标准外,还可以使用其他检索参数进行检索,例如通过检索查询接收到的参数。参数可以包括用户在请求检索时所做的选择(例如,要检索的内容类型,在结果中包括用户生成或非用户生成的内容,和/或其他适合帮助缩小从检索返回结果范围的参数)。参数可以与作为检索界面提供的图形用户界面相关联。处理继续到208。

在208处,将初始检索结果提供给从其接收检索查询的设备。例如,响应于执行检索查询,可以从数据存储器中接收一个或多个检索结果,并且可以将检索结果的初始部分传输到从中接收到检索查询的设备。除检索结果外,还可以将与检索标准对应的状态指示传输到接收检索查询的设备。面结合图3讨论关于状态指示的细节。处理继续到210。

在210处,可选地接收来自检索结果的附加结果请求。例如,可以接收对第二页或一组检索结果的请求。处理继续到212。

在212处,可选地,获得检索状态值。例如,在210收到的附加检索结果的请求可以包括状态指示。或者,可以从与服务器耦合的数据存储器获得状态指示。状态指示可以包括用于检索的状态标准,这样检索引擎可以在检索附加结果时执行相同类型的查询从而使用户体验到一致的结果(例如基于历史数据或基于最近度)。处理继续到214。

在214处,提供附加检索结果。例如,可以根据检索查询和检索状态指示生成后续页面或一组检索结果。然后可以将后续页面或附加检索结果组传输到从中接收检索查询的设备。当用户请求附加结果时,可以重复210-214。

步骤202-214可以与上述不同的顺序执行(或重复)和/或可以省略一个或多个步骤。

图3是根据一些实施例的具有改进的可发现性的检索的示例方法300的流程图。处理开始于302,在此确定模结果(或用于逻辑决策目的的其他值)。例如,在一些实施例中,模结果可以包括一个或多个检索词关键词的哈希值与随机值相加的模结果,如示例公式所示:模结果=关键词哈希值 随机数(1to 100)mod 100。可以使用其他公式或技术来实现划分检索函数的合适结果,如下面304中所述。

在304处,评估在302中确定的模结果。评估包括将模结果与检索标准选择阈值进行比较,得出使用第一标准进行的检索的第一部分和使用第二标准进行的检索的剩余部分。例如,如果给定实施例寻求使用第一标准进行百分之九十的检索,使用第二标准进行百分之十的检索,那么检索标准选择阈值可以设置为10,这样如果模结果大于10,则进行第一标准的检索,如果模结果等于或小于10,则进行第二标准的检索。检索标准选择阈值可以调整(例如,手动或自动,如上所述),以提供使用相应标准执行的检索查询的不同百分比。

通过提供两个检索标准,一个基于历史数据,一个基于最近度,实现可以提供用户对大多数查询(例如百分之九十的查询)期望的可靠检索结果,同时还提高对基于最近度的结果的可发现性的查询的剩余百分比(例如百分之十)。这种方法可以允许较新的内容(例如,游戏或游戏相关内容)有机会通过在检索结果中出现在比基于历史数据的检索方法中通常出现的新内容更高的排名而被发现。

检索标准选择阈值可以是应用于所有检索术语或关键词的单个值,或者可以是能被配置为特定关键词或术语的单独值以及用于不与单独值相关联的任何检索术语或关键词的总括值。因此,检索标准选择值可以针对特定的关键字或术语单独配置。例如,在一些实施例中,模结果的确定和评估是对每个检索术语独立进行的(即不需要为每个检索术语存储先前的状态或其他信息以选择检索标准)。但是,在一些实施例中,可以对某些检索术语使用单独的阈值,以便根据给定检索术语的阈值来评估该检索术语的模结果。在其他实施方式中,可以使用单个阈值来评估所有检索术语的模结果。在其他实施方式中,可以使用单独阈值和全局阈值的组合,使得单独阈值用于特定检索术语并且全局阈值用于提醒输入的检索术语。

如果模结果大于检索标准选择阈值,则继续处理至306,否则继续处理至312。

在306处,使用第一标准(例如,基于历史数据)进行检索,如上所述。处理继续到308。

在308处,设置检索状态变量以指示使用第一标准进行检索。检索状态可以保存在服务器端或发送到客户端设备。例如,检索状态可以使用Javascript或其他合适的状态保存技术在客户端设备上进行维护。处理继续到310。

在310处,将检索结果和/或检索状态提供给请求检索的客户设备。

在312处,使用第二标准(例如最近度)进行检索,如上所述,处理继续到314。

在314处,设置检索状态变量以指示使用第二标准进行检索。检索状态可以保存在服务器端或发送到客户端设备。例如,检索状态可以使用Javascript或其他合适的状态保存技术在客户端设备上进行维护。处理继续到316。

在316处,将检索结果和/或检索状态提供给请求检索的客户设备。

步骤302-316可以与上述不同的顺序执行(或重复)和/或可以省略一个或多个步骤。

方法200和/或300可以在服务器(例如,102)和/或客户端设备(例如,110或116)上执行。

具有改进的可发现性的所公开的检索的实施例可以通过在存在与其他内容相关联的强历史数据的情况下使新内容对用户可见来改进用户体验。在一些实施例中,当检索引擎提供的检索的部分是基于最近度(或其他不同于历史数据的标准,如流行度、玩家数量等)时,可以更快地发现更新的内容。一些实施例可以在客户端和/或服务器端提供状态保存,这提供了检索结果的第一页与稍后加载的检索结果的后续页面之间的一致性。此外,通过推荐其他游戏,例如较新的游戏,可以减少流行或高排名游戏的服务器负载。在一些实施例中,游戏负载(例如,玩游戏或下载游戏的用户数量)可以作为一个标准来调整在第一和第二检索方法之间进行选择的阈值。

在一些实施例中,最近度标准可以不具体限于最近度,而是可以包括一个或多个其他因素,这些因素可以提供最近的质量结果或者使用不同的参数代表最近度。例如,收藏夹计数以及游戏文档的检索相关性可以用作允许最近创建的游戏浮出水面的标准。例如,系统可以根据收藏夹组合得分(例如,在给定时间段内将游戏添加到某个用户的收藏夹的次数或游戏被添加收藏的次数)以及每场比赛的检索相关性对检索结果进行排序。类似地,最近度(例如,游戏或其他内容上传在多久之前)可以与其他参数(收藏数量、下载数量、玩家评分等)的分数/计数相结合,以帮助确保首先返回高质量的内容。被评估的参数、分数或计数可以包括总值或给定时间段内的值(例如,最后一小时、最后一天等)。

在一些实施例中,检索标准的选择是在每个检索术语的基础上进行的(例如,在收到每个检索查询时独立完成),并且独立于为其他检索术语所做的检索标准选择。因此,一些实施例能够提供不同标准的检索,而无需计算检索或在服务器上维护检索数据。

图4是可用于实现本申请描述的一个或多个特征的示例计算设备400的框图。在一个示例中,设备400可用于实现计算机设备(例如图1的102、110和/或116),并执行本文所述的适当方法实例。计算设备400可以是任何合适的计算机系统、服务器或其他电子或硬件设备。例如,计算设备400可以是大型机、台式机、工作站、便携式计算机或电子设备(便携式设备、移动设备、手机、智能手机、平板电脑、电视、电视机顶盒、个人数字助理PDA、媒体播放器、游戏设备、可穿戴设备等)。在一些实施例中,设备400包括处理器402、存储器404、输入/输出(I/O)接口406和音频/视频输入/输出设备414。

处理器402可以是一个或多个处理器和/或处理电路以执行程序代码和控制设备400的基本操作。处理器包括任何合适的硬件和/或软件系统、机制或组件,其处理数据、信号或其他信息。处理器可以包括具有通用中央处理单元CPU、多个处理单元、用于实现功能的专用电路或其他系统的系统。处理不必限于特定的地理位置,或具有时间限制。例如,处理器可以以实时、离线、批处理模式等方式执行其功能。部分处理可以在不同时间和不同位置由不同(或相同)处理系统。计算机可以是与存储器通信的任何处理器。

存储器404通常设置在设备400中以供处理器402访问,并且可以是任何合适的处理器可读存储介质,例如随机存取存储器(RAM)、只读存储器(ROM)、电可擦只读存储器(EEPROM)、闪存等,适合存储由处理器执行的指令并且与处理器402分离和/或与之结合。存储器404可以存储处理器402在服务器设备400上运行的软件,包括操作系统408、检索引擎应用程序410和数据库412。在一些实施例中,检索引擎应用程序410可以包括使处理器402能够执行这里描述的功能,例如图2和图3的方法中的一些或全部。

例如,存储器404可以包括用于检索引擎410的软件指令,其可以为检索提供在线游戏平台(例如102)内改进的可发现性。存储器404中的任何软件可以替代地存储在任何其他合适的存储位置或计算机可读介质上。此外,存储器404(和/或其他连接的存储设备)可以存储在本文描述的特征中使用的指令和数据。存储器404和任何其他类型的存储(磁盘、光盘、磁带或其他有形介质)可以被视为“存储”或“存储设备”。

I/O接口406可以提供使服务器设备400能够与其他系统和设备接口的功能。例如,网络通信设备、存储设备(例如内存和/或数据存储器108)和输入/输出设备可以通过接口406进行通信。在一些实施例中,I/O接口可以连接到接口设备,其包括输入设备(键盘、指点设备、触摸屏、麦克风、摄像头、扫描仪等)和/或输出设备(显示设备、扬声器设备、打印机、电机等)。

为了便于说明,图4示出了用于处理器402、存储器404、I/O接口406、软件块408和410以及数据库412中的每一个的块。这些块可以代表一个或多个处理器或处理电路、操作系统、存储器、I/O接口、应用程序和/或软件模块。在其他实施方式中,设备400可能不具有所示出的所有组件和/或可能具有其他元件,包括其他类型的元件,以代替此处所示的元件或除此处所示的元件之外的元件。虽然在线游戏平台102被描述为执行如本文的一些实施例中所述的操作,但在线游戏平台102或类似系统的任何合适的组件或组合,或与此类系统相关联的任何合适的处理器或多个处理器,可以执行所描述的操作。

用户设备还可以实现和/或与这里描述的特征一起使用。示例用户设备可以是计算机设备,包括一些与设备400类似的组件,例如处理器402、内存404和I/O接口406。适用于客户端设备的操作系统、软件和应用程序可以在内存中提供并由处理器使用。客户端设备的I/O接口可以连接网络通信设备,也可以连接输入输出设备,例如用于捕捉声音的麦克风,用于捕捉图像或视频的摄像头,用于输出的扬声器设备声音、输出图像或视频的显示设备或其他输出设备。例如,音频/视频输入/输出设备414内的显示设备可以连接到(或包括在)设备400中以显示如本文所述的预处理和后处理的图像,其中此类显示设备可以包括任何合适的显示设备,例如LCD、LED、或等离子显示屏、CRT、电视、监视器、触摸屏、3D显示屏、投影仪或其他视觉显示设备。一些示例实施可以提供一个音频输出设备,例如,语音输出或者阅读文字的合成。

图5是根据一些实施例显示的根据历史数据排序的检索结果502的示例图形用户界面(GUI)500。GUI 500包括已与检索查询“大亨”匹配并根据历史数据(例如游玩的玩家数量)排序的检索结果的第一部分(例如第1页)的显示。GUI 500包括元素504,该元素在被选择时引起检索下一组结果(例如,第2页等)的请求被发送。当元素504被选择时,系统可以发送对下一组结果的请求,包括下一组是什么的指示(例如第2页)以及使用的检索标准(例如基于历史的第一标准或者基于最近度的第二标准)。

图6是根据一些实施例显示的根据最近度排序的检索结果602的示例图形用户界面(GUI)600。GUI 600包括已与检索查询“大亨”匹配并根据最近度(例如按照从最近到最早上传的顺序)排序的检索结果的第一部分(例如第1页)的显示。GUI 600包括元素604,该元素在被选择时引起检索下一组结果(例如,第2页等)的请求被发送。当元素604被选择时,系统可以发送对下一组结果的请求,包括下一组是什么的指示(例如第2页)以及使用的检索标准(例如基于历史的第一标准或者基于最近度的第二标准)。

本文描述的一种或多种方法(例如,方法200和/或300)可以通过计算机程序指令或代码来实现,其可以在计算机上执行。例如,代码可以由一个或多个数字处理器(例如,微处理器或其他处理电路)实现,并且可以存储在包括非暂时性计算机可读介质(例如,存储介质)的计算机程序产品上,例如磁性、光学、电磁或半导体存储介质,包括半导体或固态存储器、磁带、可移动计算机软盘、随机存取存储器(RAM)、只读存储器(ROM)、闪存、硬磁磁盘、光盘、固态存储驱动器等。程序指令也可以包含在电子信号中并作为电子信号提供,例如以从服务器交付的软件即服务(SaaS)的形式(例如分布式系统和/或云计算系统)。或者,一种或多种方法可以在硬件(逻辑门等)中或在硬件和软件的组合中实现。示例硬件可以是可编程处理器(例如现场可编程门阵列FPGA、复杂可编程逻辑设备)、通用处理器、图形处理器、专用集成电路ASIC等。一种或多种方法可以作为在系统上运行的应用程序的一部分或组件来执行,或者作为与其他应用程序和操作系统结合运行的应用程序或软件来执行。

本文描述的一种或多种方法可以在能在任何类型的计算设备上运行的独立程序、在网络浏览器上运行的程序、在移动计算设备上运行的移动应用程序app中运行(例如手机、智能手机、平板电脑、可穿戴设备(手表、臂章、首饰、头饰、护目镜、眼镜等)、笔记本电脑等)。在一个示例中,可以使用客户端/服务器架构,例如,移动计算设备(作为客户端设备)将用户输入数据发送到服务器设备并从服务器接收最终输出数据用于输出(例如,用于显示)。在另一个示例中,所有计算都可以在移动计算设备上的移动应用程序(和/或其他应用程序)内执行。在另一个示例中,计算可以在移动计算设备和一个或多个服务器设备之间拆分。

尽管已经关于其特定实施方式描述了描述,但是这些特定实施方式仅是说明性的,而不是限制性的。示例中说明的概念可以应用于其他示例和实现。

应当注意的是,本申请中描述的功能块、操作、特征、方法、设备和系统可以被集成或划分为系统、设备和功能块的不同组合,如本领域技术人员所知。可以使用任何合适的编程语言和编程技术来实现特定实现的例程。可以采用不同的编程技术,例如,面向过程的或面向对象的。例程可以在单个处理设备或多个处理器上执行。虽然步骤、操作或计算可以以特定顺序呈现,但是在不同的特定实现中可以改变顺序。在一些实施例中,本说明书中显示为顺序的多个步骤或操作可以同时执行。

再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献