CN110400020A - 用于输出信息的方法和装置 - Google Patents

用于输出信息的方法和装置 Download PDF

Info

Publication number
CN110400020A
CN110400020A CN201910699465.3A CN201910699465A CN110400020A CN 110400020 A CN110400020 A CN 110400020A CN 201910699465 A CN201910699465 A CN 201910699465A CN 110400020 A CN110400020 A CN 110400020A
Authority
CN
China
Prior art keywords
coordinate points
clustering cluster
allocated
updated
cluster
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910699465.3A
Other languages
English (en)
Inventor
陈科第
白恩洋
周淼
孙芳媛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910699465.3A priority Critical patent/CN110400020A/zh
Publication of CN110400020A publication Critical patent/CN110400020A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06311Scheduling, planning or task assignment for a person or group
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0835Relationships between shipper or supplier and carriers
    • G06Q10/08355Routing methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Educational Administration (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例公开了用于输出信息的方法和装置,涉及云计算领域。该方法的一具体实施方式包括:在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以第一初始中心点为聚类中心,对坐标点集合中的坐标点进行聚类,得到预设数目个第一初始聚类簇;对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇;基于预设的距离衰减函数,重新确定预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;基于每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,得到预设数目个目标聚类簇,输出预设数目个目标聚类簇的簇信息。该实施方式可以达到均衡配送工作量的目的。

Description

用于输出信息的方法和装置
技术领域
本申请实施例涉及计算机技术领域,具体涉及用于输出信息的方法和装置。
背景技术
在实际的大规模车辆路径规划问题中,为了满足算法的计算速度和司机配送区域熟悉度的双重需求,都需要对大片的配送区域进行区域划分。这样可以将一个大规模问题划分为小规模问题并发求解,加快规划速度;同时,由于划分的区域在地理上相对聚集,可以每次安排同一名司机进行配送,从而提升该司机对该片区域的熟悉程度,进而降低配送时间。
发明内容
本申请实施例提出了用于输出信息的方法和装置。
第一方面,本申请实施例提供了一种用于输出信息的方法,包括:在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以第一初始中心点为聚类中心,对坐标点集合中的坐标点进行聚类,得到预设数目个第一初始聚类簇;对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇;基于预设的距离衰减函数,重新确定预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;基于每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,得到预设数目个目标聚类簇,输出预设数目个目标聚类簇的簇信息。
在一些实施例中,以第一初始中心点为聚类中心,对坐标点集合中的坐标点进行聚类,得到预设数目个第一初始聚类簇,包括:针对至少一个第一待分配坐标点中的每个第一待分配坐标点,基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益,其中,至少一个第一待分配坐标点包括坐标点集合中除第一初始中心点之外的其它坐标点;基于至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对至少一个第一待分配坐标点进行聚类,得到预设数目个第一初始聚类簇,其中,各个第一初始聚类簇中的坐标点的数目是对坐标点集合中的坐标点的数目与预设数目的比值进行取整所得到的数值。
在一些实施例中,基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益,包括:确定该第一待分配坐标点与各个第一初始中心点之间的各个距离,将各个距离中的最大距离与最小距离之差确定为该第一待分配坐标点的增益。
在一些实施例中,基于至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对至少一个第一待分配坐标点进行聚类,包括:按照至少一个第一待分配坐标点的增益由大到小的顺序,将各个第一待分配坐标点分配到对应的聚类簇中,其中,针对至少一个第一待分配坐标点中的每个第一待分配坐标点,该第一待分配坐标点所对应的聚类簇为当前所包含的坐标点的数目小于第一目标数值、且对应的第一初始中心点与该第一待分配坐标点距离最近的聚类簇。
在一些实施例中,对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇,包括:执行如下更新步骤:重新确定预设数目个第一初始聚类簇中每个第一初始聚类簇的中心点作为更新后的中心点;针对至少一个第二待分配坐标点中的每个第二待分配坐标点,基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇,其中,至少一个第二待分配坐标点包括坐标点集合中除更新后的中心点之外的其它坐标点。
在一些实施例中,基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇,包括:将该第二待分配坐标点与该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第一距离,将该第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的各个距离中的最小距离确定为第二距离,将第一距离与第二距离之间的差值确定为该第二待分配坐标点对应的代价值;针对预设数目个第一初始聚类簇中的每个第一初始聚类簇,基于该第一初始聚类簇中的各个第二待分配坐标点对应的代价值,生成该第一初始聚类簇对应的待交换坐标点集合;按照第二待分配坐标点集合中各个第二待分配坐标点对应的代价值由小到大的顺序,基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中,其中,第二待分配坐标点集合中的第二待分配坐标点的代价值为非负数。
在一些实施例中,基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中,包括:按照第二待分配坐标点与各个其它第一初始聚类簇的更新后的中心点之间的距离由近到远的顺序对各个其它第一初始聚类簇进行排序,按照排序结果,执行如下转移步骤:将第二待分配坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第三距离,将第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第四距离,将第三距离与第四距离之间的差值确定为第一交换增益;确定其它第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点;响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中存在待交换坐标点,将所存在的待交换坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第五距离,将所存在的待交换坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第六距离,将第五距离与第六距离之间的差值确定为第二交换增益;确定第一交换增益和第二交换增益之和是否大于预设第一数值;响应于确定出第一交换增益和第二交换增益之和大于预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在一些实施例中,其它第一初始聚类簇对应的待交换坐标点集合中存在至少两个待交换坐标点;以及响应于确定出第一交换增益和第二交换增益之和大于预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中,包括:响应于确定出第一交换增益和至少两个待交换坐标点对应的各个第二交换增益之和中存在至少两个和值大于预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的至少两个待交换坐标点中对应最大代价值的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在一些实施例中,转移步骤还包括:响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中不存在待交换坐标点或者确定出第一交换增益和第二交换增益之和小于等于预设第一数值,确定第一交换增益是否大于预设第二数值,以及确定其它第一初始聚类簇所包含的坐标点的数目是否小于第一目标数值;响应于确定出第一交换增益大于预设第二数值且其它第一初始聚类簇所包含的坐标点的数目小于第一目标数值,将第二待分配坐标点转移到其它第一初始聚类簇中。
在一些实施例中,转移步骤还包括:响应于确定出第一交换增益大于预设第二数值且其它第一初始聚类簇所包含的坐标点的数目等于第一目标数值,将第二待分配坐标点添加到第二待分配坐标点所属的第一初始聚类簇对应的待交换坐标点集合中。
在一些实施例中,转移步骤还包括:响应于确定出第二待分配坐标点集合中不存在未被执行转移步骤的第二待分配坐标点,清空预设数目个第一初始聚类簇中每个第一初始聚类簇对应的待交换坐标点集合。
在一些实施例中,在确定是否将第二待分配坐标点移动到其它第一初始聚类簇中之后,该方法还包括:响应于确定出将第二待分配坐标点移动到其它第一初始聚类簇中,重新执行更新步骤。
在一些实施例中,基于预设的距离衰减函数,重新确定预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目,包括:确定预设数目个更新后的聚类簇中每个更新后的聚类簇的聚类中心与目标位置点之间的距离;按照距离由远到近的顺序,生成各个更新后的聚类簇所对应的由小到大的排序编号;确定排序编号的中位数;针对预设数目个更新后的聚类簇中的每个更新后的聚类簇,基于该更新后的聚类簇的排序编号和中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,以及基于衰减值,确定该更新后的聚类簇所包含的坐标点的数目。
在一些实施例中,基于该更新后的聚类簇的排序编号和中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,包括:确定该更新后的聚类簇的排序编号与中位数之间的差值的绝对值,求取绝对值与预设第三数值之和的对数,确定预设系数与对数的乘积,将乘积与预设第四数值的比值确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。
在一些实施例中,基于衰减值,确定该更新后的聚类簇所包含的坐标点的数目,包括:基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,其中,第二目标数值为对坐标点集合中的坐标点的数目与预设数目的比值进行向下取整得到的数值;将最小值与预设第五数值之和确定为该更新后的聚类簇所包含的坐标点的数目的最大值。
在一些实施例中,基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,包括:响应于确定出该更新后的聚类簇的排序编号小于中位数,将第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之差确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
在一些实施例中,基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,包括:响应于确定出该更新后的聚类簇的排序编号大于中位数,将第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之和确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
在一些实施例中,基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,包括:响应于确定出该更新后的聚类簇的排序编号等于中位数,将第二目标数值确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
在一些实施例中,基于每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,得到预设数目个目标聚类簇,输出预设数目个目标聚类簇的簇信息,包括:在坐标点集合中重新选取预设数目个坐标点作为第二初始中心点,以第二初始中心点为聚类中心,重新对坐标点集合中的坐标点进行聚类,得到预设数目个第二初始聚类簇,其中,每个第二初始聚类簇所包含的坐标点的数目为对应的更新后的聚类簇所包含的坐标点的数目;对预设数目个第二初始聚类簇进行更新,得到预设数目个更新后的第二聚类簇作为目标聚类簇。
第二方面,本申请实施例提供了一种用于输出信息的装置,包括:聚类单元,被配置成在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以第一初始中心点为聚类中心,对坐标点集合中的坐标点进行聚类,得到预设数目个第一初始聚类簇;更新单元,被配置成对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇;确定单元,被配置成基于预设的距离衰减函数,重新确定预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;输出单元,被配置成基于每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,得到预设数目个目标聚类簇,输出预设数目个目标聚类簇的簇信息。
在一些实施例中,聚类单元进一步被配置成按照如下方式以第一初始中心点为聚类中心,对坐标点集合中的坐标点进行聚类,得到预设数目个第一初始聚类簇:针对至少一个第一待分配坐标点中的每个第一待分配坐标点,基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益,其中,至少一个第一待分配坐标点包括坐标点集合中除第一初始中心点之外的其它坐标点;基于至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对至少一个第一待分配坐标点进行聚类,得到预设数目个第一初始聚类簇,其中,各个第一初始聚类簇中的坐标点的数目是对坐标点集合中的坐标点的数目与预设数目的比值进行取整所得到的数值。
在一些实施例中,聚类单元进一步被配置成按照如下方式基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益:确定该第一待分配坐标点与各个第一初始中心点之间的各个距离,将各个距离中的最大距离与最小距离之差确定为该第一待分配坐标点的增益。
在一些实施例中,聚类单元进一步被配置成按照如下方式基于至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对至少一个第一待分配坐标点进行聚类:按照至少一个第一待分配坐标点的增益由大到小的顺序,将各个第一待分配坐标点分配到对应的聚类簇中,其中,针对至少一个第一待分配坐标点中的每个第一待分配坐标点,该第一待分配坐标点所对应的聚类簇为当前所包含的坐标点的数目小于第一目标数值、且对应的第一初始中心点与该第一待分配坐标点距离最近的聚类簇。
在一些实施例中,更新单元进一步被配置成按照如下方式对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇:执行如下更新步骤:重新确定预设数目个第一初始聚类簇中每个第一初始聚类簇的中心点作为更新后的中心点;针对至少一个第二待分配坐标点中的每个第二待分配坐标点,基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇,其中,至少一个第二待分配坐标点包括坐标点集合中除更新后的中心点之外的其它坐标点。
在一些实施例中,更新单元进一步被配置成按照如下方式基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇:将该第二待分配坐标点与该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第一距离,将该第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的各个距离中的最小距离确定为第二距离,将第一距离与第二距离之间的差值确定为该第二待分配坐标点对应的代价值;针对预设数目个第一初始聚类簇中的每个第一初始聚类簇,基于该第一初始聚类簇中的各个第二待分配坐标点对应的代价值,生成该第一初始聚类簇对应的待交换坐标点集合;按照第二待分配坐标点集合中各个第二待分配坐标点对应的代价值由小到大的顺序,基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中,其中,第二待分配坐标点集合中的第二待分配坐标点的代价值为非负数。
在一些实施例中,更新单元进一步被配置成按照如下方式基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中:按照第二待分配坐标点与各个其它第一初始聚类簇的更新后的中心点之间的距离由近到远的顺序对各个其它第一初始聚类簇进行排序,按照排序结果,执行如下转移步骤:将第二待分配坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第三距离,将第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第四距离,将第三距离与第四距离之间的差值确定为第一交换增益;确定其它第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点;响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中存在待交换坐标点,将所存在的待交换坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第五距离,将所存在的待交换坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第六距离,将第五距离与第六距离之间的差值确定为第二交换增益;确定第一交换增益和第二交换增益之和是否大于预设第一数值;响应于确定出第一交换增益和第二交换增益之和大于预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在一些实施例中,其它第一初始聚类簇对应的待交换坐标点集合中存在至少两个待交换坐标点;以及更新单元进一步被配置成按照如下方式响应于确定出第一交换增益和第二交换增益之和大于预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中:响应于确定出第一交换增益和至少两个待交换坐标点对应的各个第二交换增益之和中存在至少两个和值大于预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的至少两个待交换坐标点中对应最大代价值的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在一些实施例中,转移步骤还包括:响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中不存在待交换坐标点或者确定出第一交换增益和第二交换增益之和小于等于预设第一数值,确定第一交换增益是否大于预设第二数值,以及确定其它第一初始聚类簇所包含的坐标点的数目是否小于第一目标数值;响应于确定出第一交换增益大于预设第二数值且其它第一初始聚类簇所包含的坐标点的数目小于第一目标数值,将第二待分配坐标点转移到其它第一初始聚类簇中。
在一些实施例中,转移步骤还包括:响应于确定出第一交换增益大于预设第二数值且其它第一初始聚类簇所包含的坐标点的数目等于第一目标数值,将第二待分配坐标点添加到第二待分配坐标点所属的第一初始聚类簇对应的待交换坐标点集合中。
在一些实施例中,转移步骤还包括:响应于确定出第二待分配坐标点集合中不存在未被执行转移步骤的第二待分配坐标点,清空预设数目个第一初始聚类簇中每个第一初始聚类簇对应的待交换坐标点集合。
在一些实施例中,该装置还包括:执行单元,被配置成响应于确定出将第二待分配坐标点移动到其它第一初始聚类簇中,重新执行更新步骤。
在一些实施例中,确定单元进一步被配置成按照如下方式基于预设的距离衰减函数,重新确定预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目:确定预设数目个更新后的聚类簇中每个更新后的聚类簇的聚类中心与目标位置点之间的距离;按照距离由远到近的顺序,生成各个更新后的聚类簇所对应的由小到大的排序编号;确定排序编号的中位数;针对预设数目个更新后的聚类簇中的每个更新后的聚类簇,基于该更新后的聚类簇的排序编号和中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,以及基于衰减值,确定该更新后的聚类簇所包含的坐标点的数目。
在一些实施例中,确定单元进一步被配置成按照如下方式基于该更新后的聚类簇的排序编号和中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值:确定该更新后的聚类簇的排序编号与中位数之间的差值的绝对值,求取绝对值与预设第三数值之和的对数,确定预设系数与对数的乘积,将乘积与预设第四数值的比值确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。
在一些实施例中,确定单元进一步被配置成按照如下方式基于衰减值,确定该更新后的聚类簇所包含的坐标点的数目:基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,其中,第二目标数值为对坐标点集合中的坐标点的数目与预设数目的比值进行向下取整得到的数值;将最小值与预设第五数值之和确定为该更新后的聚类簇所包含的坐标点的数目的最大值。
在一些实施例中,确定单元进一步被配置成按照如下方式基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值:响应于确定出该更新后的聚类簇的排序编号小于中位数,将第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之差确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
在一些实施例中,确定单元进一步被配置成按照如下方式基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值:响应于确定出该更新后的聚类簇的排序编号大于中位数,将第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之和确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
在一些实施例中,确定单元进一步被配置成按照如下方式基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值:响应于确定出该更新后的聚类簇的排序编号等于中位数,将第二目标数值确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
在一些实施例中,输出单元进一步被配置成按照如下方式基于每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,得到预设数目个目标聚类簇,输出预设数目个目标聚类簇的簇信息:在坐标点集合中重新选取预设数目个坐标点作为第二初始中心点,以第二初始中心点为聚类中心,重新对坐标点集合中的坐标点进行聚类,得到预设数目个第二初始聚类簇,其中,每个第二初始聚类簇所包含的坐标点的数目为对应的更新后的聚类簇所包含的坐标点的数目;对预设数目个第二初始聚类簇进行更新,得到预设数目个更新后的第二聚类簇作为目标聚类簇。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本申请的上述实施例提供的用于输出信息的方法和装置,通过在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以选取出的第一初始中心点为聚类中心,对上述坐标点集合中的坐标点进行聚类,得到上述预设数目个第一初始聚类簇;之后,对上述预设数目个第一初始聚类簇进行更新,得到上述预设数目个更新后的聚类簇;而后,基于预设的距离衰减函数,重新确定上述预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;最后,基于上述每个更新后的聚类簇所包含的坐标点的数目,重新对上述坐标点集合中的坐标点进行聚类,得到上述预设数目个目标聚类簇,输出上述预设数目个目标聚类簇的簇信息。这种方式既保证了配送点之间的地理聚集性,又考虑了配送区域的中心点与目标位置点之间的距离,从而可以根据聚类簇与目标位置点之间的距离,对聚类簇所包含的坐标点的数目进行调整,从而可以达到均衡配送工作量的目的。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请的各个实施例可以应用于其中的示例性系统架构图;
图2是根据本申请的用于输出信息的方法的一个实施例的流程图;
图3是根据本申请的用于输出信息的方法中对聚类簇进行更新的流程图;
图4是根据本申请的用于输出信息的方法中重新确定每个更新后的聚类簇所包含的坐标点的数目的流程图;
图5是根据本申请的用于输出信息的方法中重新对坐标点集合中的坐标点进行聚类的流程图;
图6是根据本申请的用于输出信息的装置的一个实施例的结构示意图;
图7是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于输出信息的方法的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备1011、1012、1013,网络102和服务器103。网络102用以在终端设备1011、1012、1013和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备1011、1012、1013通过网络102与服务器103交互,以发送或接收消息等,例如,终端设备1011、1012、1013可以将坐标点集合和预设数目发送给服务器103。终端设备101、102、103上可以安装有各种通讯客户端应用,例如语音合成类应用、搜索类应用、翻译类应用等。
终端设备1011、1012、1013可以是硬件,也可以是软件。当终端设备1011、1012、1013为硬件时,可以是具有扬声器并且支持信息交互的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机等。当终端设备1011、1012、1013为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器103可以是提供各种服务的服务器。例如,可以对终端设备1011、1012、1013发送的坐标点集合和预设数目进行分析的服务器。服务器103可以首先从终端设备1011、1012、1013中获取坐标点集合和预设数目,在上述坐标点集合中选取上述预设数目个坐标点作为第一初始中心点,以上述第一初始中心点为聚类中心,对上述坐标点集合中的坐标点进行聚类,得到上述预设数目个第一初始聚类簇;之后,可以对上述预设数目个第一初始聚类簇进行更新,得到上述预设数目个更新后的聚类簇;而后,可以基于预设的距离衰减函数,重新确定上述预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;最后,可以基于上述每个更新后的聚类簇所包含的坐标点的数目,重新对上述坐标点集合中的坐标点进行聚类,得到上述预设数目个目标聚类簇,输出上述预设数目个目标聚类簇的簇信息,例如,可以将上述预设数目个目标聚类簇的簇信息输出到终端设备1011、1012、1013中。
需要说明的是,服务器103可以是硬件,也可以是软件。当服务器103为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器103为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的用于输出信息的方法通常由服务器103执行。
还需要说明的是,服务器103的本地也可以存储有坐标点集合和预设数目,服务器103可以从本地获取坐标点集合和预设数目。此时示例性系统架构100可以不存在网络102和终端设备1011、1012、1013。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的用于输出信息的方法的一个实施例的流程200。该用于输出信息的方法,包括以下步骤:
步骤201,在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以第一初始中心点为聚类中心,对坐标点集合中的坐标点进行聚类,得到预设数目个第一初始聚类簇。
在本实施例中,用于输出信息的方法的执行主体(例如图1所示的服务器)可以在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点。上述坐标点集合可以为包括指定区域内的各个坐标点的集合,也可以为包括预设兴趣点的坐标点的集合。在这里,上述执行主体可以在上述坐标点集合中随机选取预设数目个坐标点作为第一初始中心点;上述执行主体也可以利用Kmeans++算法在上述坐标点集合中选取预设数目个坐标点作为第一初始中心点,Kmeans++算法是一种k均值聚类算法,利用Kmeans++算法所选取出的初始聚类中心之间的相互距离通常会尽可能的远。
之后,上述执行主体可以以上述第一初始中心点为聚类中心,对上述坐标点集合中的坐标点进行聚类,得到上述预设数目个第一初始聚类簇。聚类是将物理或抽象对象的集合分成由类似的对象组成的多个类的过程。由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相异。在这里,针对每个聚类中心,上述执行主体可以将上述坐标点集合中与该聚类中心之间的距离小于预设第一距离阈值的坐标点聚为一簇。
步骤202,对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇。
在本实施例中,上述执行主体可以对上述预设数目个第一初始聚类簇进行更新,得到上述预设数目个更新后的聚类簇。具体地,上述执行主体可以重新确定上述预设数目个更新后的聚类簇中每个更新后的聚类簇的中心点。针对上述坐标点集合中的每个坐标点,上述执行主体可以确定该坐标点与该坐标点所属的第一初始聚类簇的更新后的中心点之间的距离;之后,确定该坐标点与其它第一初始聚类簇的更新后的中心点之间的距离;而后,确定该坐标点与该坐标点所属的第一初始聚类簇的更新后的中心点之间的距离是否大于该坐标点与其它第一初始聚类簇的更新后的中心点之间的距离;若是,则可以将该坐标点转移到上述距离较近的其它第一初始聚类簇中。
步骤203,基于预设的距离衰减函数,重新确定预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目。
在本实施例中,上述执行主体可以基于预设的距离衰减函数,重新确定上述预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目。上述距离衰减函数通常与上述更新后的聚类簇的聚类中心与目标位置点之间的距离相关。上述目标位置点通常是仓库所在的位置点。具体地,上述执行主体可以首先确定各个更新后的聚类簇分别与上述目标位置点之间的距离。之后,将各个距离之和与更新后的聚类簇的数目的比值确定为距离平均值。而后,将上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向下取整得到坐标点数目的平均值。之后,针对上述预设数目个更新后的聚类簇中的每个更新后的聚类簇,将上述距离平均值减去该更新后的聚类簇的聚类中心点与目标位置点之间的距离,得到距离差值,确定上述距离差值与预设系数的乘积。最后,将上述乘积与上述坐标点数目的平均值之和确定为该更新后的聚类簇所包含的坐标点的数目。
步骤204,基于每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,得到预设数目个目标聚类簇,输出预设数目个目标聚类簇的簇信息。
在本实施例中,上述执行主体可以基于每个更新后的聚类簇所包含的坐标点的数目,重新对上述坐标点集合中的坐标点进行聚类,得到上述预设数目个目标聚类簇。具体地,针对每个更新后的聚类簇,上述执行主体可以将上述坐标点集合中与该更新后的聚类簇的聚类中心之间的距离等于预设第二距离阈值的坐标点聚为一簇。需要说明的是,上述第二距离阈值是利用该更新后的聚类簇所包含的坐标点的数目所确定出的,这样,可以使得每个更新后的聚类簇所包含的坐标点的数目为上述步骤203中所确定出的数目。
在本实施例中,上述执行主体可以输出上述预设数目个目标聚类簇的簇信息。上述簇信息可以包括但不限于以下至少一项:各个目标聚类簇所包含的坐标点的坐标信息、各个目标聚类簇所包含的坐标点的数目和各个目标聚类簇与上述目标位置点之间的距离。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下方式以上述第一初始中心点为聚类中心,对上述坐标点集合中的坐标点进行聚类,得到上述预设数目个第一初始聚类簇:针对至少一个第一待分配坐标点中的每个第一待分配坐标点,上述执行主体可以首先基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益。上述至少一个第一待分配坐标点可以包括上述坐标点集合中除上述第一初始中心点之外的其它坐标点。之后,上述执行主体可以基于上述至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对上述至少一个第一待分配坐标点进行聚类,得到上述预设数目个第一初始聚类簇。需要说明的是,各个第一初始聚类簇中的坐标点的数目可以是对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行取整所得到的数值。各个第一初始聚类簇中的坐标点的数目可以是对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向下取整所得到的数值,也可以是对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向上取整所得到的数值。作为示例,若上述坐标点集合中的坐标点的数目为100,上述预设数目为7,则各个第一初始聚类簇中的坐标点的数目可以是14(向下取整所得到的),也可以是15(向上取整所得到的)。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下方式基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益:上述执行主体可以确定该第一待分配坐标点与各个第一初始中心点之间的各个距离,可以将上述各个距离中的最大距离与最小距离之差确定为该第一待分配坐标点的增益。作为示例,若该第一待分配坐标点与五个第一初始中心点之间的距离分别为120米、140米、115米、80米和150米,则可以将最大距离150米与最小距离80米之差70米确定为该第一待分配坐标点的增益。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下方式基于上述至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对上述至少一个第一待分配坐标点进行聚类:上述执行主体可以按照上述至少一个第一待分配坐标点的增益由大到小的顺序,将各个第一待分配坐标点分配到对应的聚类簇中。针对上述至少一个第一待分配坐标点中的每个第一待分配坐标点,该第一待分配坐标点所对应的聚类簇可以为当前所包含的坐标点的数目小于第一目标数值、且对应的第一初始中心点与该第一待分配坐标点距离最近的聚类簇。上述第一目标数值为对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向上取整所得到的数值。
在本实施例的一些可选的实现方式中,上述执行主体可以执行如下更新步骤:首先,可以重新确定上述预设数目个第一初始聚类簇中每个第一初始聚类簇的中心点作为更新后的中心点。在这里,针对每个第一初始聚类簇,上述执行主体可以将第一初始聚类簇所包含的所有坐标点在预设坐标系下的横坐标值的平均值作为更新后的中心点的横坐标值,将第一初始聚类簇所包含的所有坐标点在上述坐标系下的纵坐标值的平均值作为更新后的中心点的纵坐标值。之后,针对至少一个第二待分配坐标点中的每个第二待分配坐标点,上述执行主体可以基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇。具体地,上述执行主体可以确定与该第二待分配坐标点距离最近的更新后的中心点是否为该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点;若否,则可以将该第二待分配坐标点转移到距离最近的更新后的中心点所属的第一初始聚类簇中。需要说明的是,上述至少一个第二待分配坐标点可以包括上述坐标点集合中除更新后的中心点之外的其它坐标点。
本申请的上述实施例提供的方法通过基于上述每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,这种方式既保证了配送点之间的地理聚集性,又考虑了配送区域的中心点与目标位置点之间的距离,从而可以根据聚类簇与目标位置点之间的距离,对聚类簇所包含的坐标点的数目进行调整,从而可以达到均衡配送工作量的目的。
继续参见图3,图3是根据本申请的用于输出信息的方法中对聚类簇进行更新的流程300。如图3所示,本实施例中,对聚类簇进行更新的更新步骤包括:
步骤301,重新确定预设数目个第一初始聚类簇中每个第一初始聚类簇的中心点作为更新后的中心点。
在本实施中,用于输出信息的方法的执行主体(例如图1所示的服务器)可以重新确定上述预设数目个第一初始聚类簇中每个第一初始聚类簇的中心点作为更新后的中心点。在这里,针对每个第一初始聚类簇,上述执行主体可以将第一初始聚类簇所包含的所有坐标点在预设坐标系下的横坐标值的平均值作为更新后的中心点的横坐标值,将第一初始聚类簇所包含的所有坐标点在上述坐标系下的纵坐标值的平均值作为更新后的中心点的纵坐标值。
步骤302,针对至少一个第二待分配坐标点中的每个第二待分配坐标点,将该第二待分配坐标点与该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第一距离,将该第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的各个距离中的最小距离确定为第二距离,将第一距离与第二距离之间的差值确定为该第二待分配坐标点对应的代价值。
在本实施例中,针对上述至少一个第二待分配坐标点中的每个第二待分配坐标点,上述执行主体可以将该第二待分配坐标点与该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第一距离,将该第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的各个距离中的最小距离确定为第二距离,将第一距离与第二距离之间的差值确定为该第二待分配坐标点对应的代价值。在这里,其它第一初始聚类簇是上述预设数目个第一初始聚类簇中除该第二待分配坐标点所属的第一初始聚类簇之外的其他初始聚类簇。需要说明的是,上述至少一个第二待分配坐标点包括上述坐标点集合中除更新后的中心点之外的其它坐标点。该坐标点对应的代价值可以理解为将该坐标点从该坐标点所属的初始聚类簇中移出,移入到其它初始聚类簇中的代价。
步骤303,针对预设数目个第一初始聚类簇中的每个第一初始聚类簇,基于该第一初始聚类簇中的各个第二待分配坐标点对应的代价值,生成该第一初始聚类簇对应的待交换坐标点集合。
在本实施例中,针对上述预设数目个第一初始聚类簇中的每个第一初始聚类簇,上述执行主体可以基于该第一初始聚类簇中的各个第二待分配坐标点对应的代价值,生成该第一初始聚类簇对应的待交换坐标点集合。具体地,上述执行主体可以将对应的代价值为正数的第二待分配坐标点添加到该第一初始聚类簇对应的待交换坐标点集合中。上述执行主体可以按照对应的代价值由大到小的顺序选取预设第一数目个(例如,三个)第二待分配坐标点添加到该第一初始聚类簇对应的待交换坐标点集合中。
步骤304,按照第二待分配坐标点集合中各个第二待分配坐标点对应的代价值由小到大的顺序,基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中。
在本实施例中,上述执行主体可以按照上述第二待分配坐标点集合中各个第二待分配坐标点对应的代价值由小到大的顺序,基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中。具体地,上述执行主体可以确定与第二待分配坐标点距离最近的更新后的中心点是否为第二待分配坐标点所属的第一初始聚类簇的更新后的中心点;若否,则可以确定与第二待分配坐标点距离最近的更新后的中心点所属的第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点;若存在,则将第二待分配坐标点转移到距离最近的更新后的中心点所属的第一初始聚类簇中,以及将所存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。需要说明的是,上述第二待分配坐标点集合中的第二待分配坐标点的代价值为非负数。
在本实施例的一些可选的实现方式中,上述执行主体可以按照如下方式确定是否将第二待分配坐标点移动到其它第一初始聚类簇中:上述执行主体可以按照第二待分配坐标点与各个其它第一初始聚类簇的更新后的中心点之间的距离由近到远的顺序对各个其它第一初始聚类簇进行排序,按照排序结果,执行如下转移步骤:
步骤3041,将第二待分配坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第三距离,将第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第四距离,将第三距离与第四距离之间的差值确定为第一交换增益。
在这里,上述执行主体可以将第二待分配坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第三距离,将第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第四距离,将第三距离与第四距离之间的差值确定为第一交换增益。作为示例,若第三距离为5,第四距离为3,则第一交换增益为2。
步骤3042,确定其它第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点。
在这里,上述执行主体可以确定其它第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点。若存在待交换坐标点,则上述执行主体可以执行步骤3043。
步骤3043,响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中存在待交换坐标点,将所存在的待交换坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第五距离,将所存在的待交换坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第六距离,将第五距离与第六距离之间的差值确定为第二交换增益。
在这里,若在步骤3042中确定出其它第一初始聚类簇对应的待交换坐标点集合中存在待交换坐标点,上述执行主体可以将所存在的待交换坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第五距离,将所存在的待交换坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第六距离,将第五距离与第六距离之间的差值确定为第二交换增益。在这里,上述执行主体可以对待交换坐标点集合中的待交换坐标点进行遍历,作为示例,可以按照对应的代价值由大到小的顺序进行遍历。
步骤3044,确定第一交换增益和第二交换增益之和是否大于预设第一数值。
在这里,上述执行主体可以确定第一交换增益和第二交换增益之和是否大于预设第一数值。在这里,上述第一数值可以为0。若第一交换增益和第二交换增益之和大于预设第一数值,则上述执行主体可以执行步骤3045。
步骤3045,响应于确定出第一交换增益和第二交换增益之和大于预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在这里,若在步骤3044中确定出第一交换增益和第二交换增益之和大于预设第一数值,上述执行主体可以将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在本实施例的一些可选的实现方式中,其它第一初始聚类簇对应的待交换坐标点集合中可以存在至少两个待交换坐标点。上述执行主体可以确定第一交换增益和所存在的至少两个待交换坐标点对应的各个第二交换增益之和中是否存在至少两个和值大于上述预设第一数值,若是,则可以将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的至少两个待交换坐标点中对应最大代价值的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在本实施例的一些可选的实现方式中,上述转移步骤还可以包括:
步骤3046,响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中不存在待交换坐标点或者确定出第一交换增益和第二交换增益之和小于等于预设第一数值,确定第一交换增益是否大于预设第二数值。
在这里,若在步骤3042中确定出其它第一初始聚类簇对应的待交换坐标点集合中不存在待交换坐标点,或者在步骤3044中确定出第一交换增益和第二交换增益之和小于等于上述预设第一数值,上述执行主体可以确定第一交换增益是否大于预设第二数值,在这里,上述第二数值可以为0。若确定出第一交换增益大于上述第二数值,上述执行主体可以执行步骤3047。
步骤3047,响应于确定出第一交换增益大于预设第二数值,确定其它第一初始聚类簇所包含的坐标点的数目是否小于第一目标数值。
在这里,若在步骤3046中确定出第一交换增益大于预设第二数值,上述执行主体可以确定其它第一初始聚类簇所包含的坐标点的数目是否小于第一目标数值。在这里,上述第一目标数值通常是对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向上取整所得到的数值,即其它第一初始聚类簇所能包含的坐标点的上限值。
步骤3048,响应于确定出其它第一初始聚类簇所包含的坐标点的数目小于第一目标数值,将第二待分配坐标点转移到其它第一初始聚类簇中。
在这里,若在步骤3046中确定出第一交换增益大于上述第二数值且在步骤3047中确定出其它第一初始聚类簇所包含的坐标点的数目小于上述第一目标数值,上述执行主体可以将第二待分配坐标点转移到其它第一初始聚类簇中。
在本实施例的一些可选的实现方式中,上述转移步骤还可以包括:
步骤3049,响应于确定出第一交换增益大于预设第二数值,确定其它第一初始聚类簇所包含的坐标点的数目是否等于第一目标数值。
在这里,若在步骤3046中确定出第一交换增益大于上述第二数值,上述执行主体可以确定其它第一初始聚类簇所包含的坐标点的数目是否等于第一目标数值,即确定其它第一初始聚类簇所包含的坐标点的数目是否达到上限值。
步骤3050,响应于确定出第一交换增益大于所述预设第二数值且其它第一初始聚类簇所包含的坐标点的数目等于所述第一目标数值,将第二待分配坐标点添加到第二待分配坐标点所属的第一初始聚类簇对应的待交换坐标点集合中。
在这里,若在步骤3046中确定出第一交换增益大于上述第二数值且在步骤3049中确定出其它第一初始聚类簇所包含的坐标点的数目等于上述第一目标数值,上述执行主体可以将第二待分配坐标点添加到第二待分配坐标点所属的第一初始聚类簇对应的待交换坐标点集合中。
在本实施例的一些可选的实现方式中,上述转移步骤还可以包括:确定上述第二待分配坐标点集合中是否不存在未被执行上述转移步骤的第二待分配坐标点。若确定出上述第二待分配坐标点集合中不存在未被执行上述转移步骤的第二待分配坐标点,上述执行主体可以清空上述预设数目个第一初始聚类簇中每个第一初始聚类簇对应的待交换坐标点集合。
在本实施例的一些可选的实现方式中,在确定是否将第二待分配坐标点移动到其它第一初始聚类簇中之后,上述执行主体还可以在确定出将第二待分配坐标点移动到其它第一初始聚类簇中的情况下,重新执行上述更新步骤。若确定出不需要将第二待分配坐标点移动到其它第一初始聚类簇中,则说明当前的所有更新后的聚类簇收敛。
本申请的上述实施例提供的对聚类簇进行更新的方法,通过对坐标点的代价值进行确定,并按照代价值从小到大的顺序将满足预设条件的坐标点进行转移,或者与其他聚类簇中的待交换坐标点进行交换,从而使得每个更新后的聚类簇达到收敛。
进一步参考图4,图4是根据本申请的用于输出信息的方法中重新确定每个更新后的聚类簇所包含的坐标点的数目的流程400。如图4所示,本实施例中,重新确定每个更新后的聚类簇所包含的坐标点的数目的步骤包括:
步骤401,确定预设数目个更新后的聚类簇中每个更新后的聚类簇的聚类中心与目标位置点之间的距离。
在本实施中,用于输出信息的方法的执行主体(例如图1所示的服务器)可以确定上述预设数目个更新后的聚类簇中每个更新后的聚类簇的聚类中心与目标位置点之间的距离。在这里,在物流运输场景中,上述目标位置点可以为仓库所在的位置点。
步骤402,按照距离由远到近的顺序,生成各个更新后的聚类簇所对应的由小到大的排序编号。
在本实施中,上述执行主体可以按照步骤401中确定出的距离由远到近的顺序,生成各个更新后的聚类簇所对应的由小到大的排序编号。作为示例,若存在五个更新后的聚类簇,第一聚类簇的聚类中心、第二聚类簇的聚类中心、第三聚类簇的聚类中心、第四聚类簇的聚类中心和第五聚类簇的聚类中心与目标位置点之间的距离分别为100米、58米、39米、125米和68米,则按照距离由远到近的顺序,所生成的第一聚类簇的排序编号为2、第二聚类簇的的排序编号为4、第三聚类簇的排序编号为5、第四聚类簇的排序编号为1、第五聚类簇的排序编号为3。
步骤403,确定排序编号的中位数。
在本实施中,上述执行主体可以确定上述排序编号的中位数。中位数代表一个样本、种群或概率分布中的一个数值,其可将数值集合划分为相等的上下两部分。对于有限的数集,可以通过把所有观察值高低排序后找出正中间的一个作为中位数。在这里,可以将排序编号按照由小到大进行排序,查找出正中间的一个作为中位数。作为示例,对于排序编号1、2、3、4和5,正中间的3为中位数。
步骤404,针对预设数目个更新后的聚类簇中的每个更新后的聚类簇,基于该更新后的聚类簇的排序编号和中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,以及基于衰减值,确定该更新后的聚类簇所包含的坐标点的数目。
在本实施中,针对上述预设数目个更新后的聚类簇中的每个更新后的聚类簇,上述执行主体可以基于该更新后的聚类簇的排序编号和中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,以及基于衰减值,确定该更新后的聚类簇所包含的坐标点的数目。作为示例,上述执行主体可以确定该更新后的聚类簇的排序编号与上述中位数的差值,将该更新后的聚类簇的排序编号与上述中位数的差值乘以预设系数所得到的乘积确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。之后,可以对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行取整操作,得到坐标点数目的平均值,可以将上述衰减值与上述坐标点数目的平均值之和确定为该更新后的聚类簇所包含的坐标点的数目。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下步骤确定衰减值以及确定该更新后的聚类簇所包含的坐标点的数目:
步骤4041,确定该更新后的聚类簇的排序编号与中位数之间的差值的绝对值,求取绝对值与预设第三数值之和的对数,确定预设系数与对数的乘积,将乘积与预设第四数值的比值确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。
在这里,上述执行主体可以首先确定该更新后的聚类簇的排序编号与中位数之间的差值的绝对值。之后,可以求取上述绝对值与预设第三数值之和的对数。上述第三数值可以为1。而后,可以确定预设系数与对数的乘积。上述系数可以用于调整距离上述目标位置点最远的更新后的聚类簇相比于排序编号为上述中位数的更新后的聚类簇的坐标点的下降数量。最后,上述执行主体可以将上述乘积与预设第四数值的比值确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。上述第四数值可以为10。作为示例,上述执行主体可以按照如下公式(1)确定排序编号为i的更新后的聚类簇所包含的坐标点的数目对应的衰减值:
其中,i为更新后的聚类簇的排序编号,reducei为排序编号为i的更新后的聚类簇所包含的坐标点的数目对应的衰减值,xi为排序编号i与中位数的差值,α为用于调整距离上述目标位置点最远的更新后的聚类簇相比于排序编号为上述中位数的更新后的聚类簇的坐标点的下降数量的系数。
步骤4042,基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值。
在这里,上述执行主体可以基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值。上述第二目标数值可以为对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向下取整得到的数值。作为示例,若上述坐标点集合中的坐标点的数目为120,上述预设数目为7,则上述第二目标数值可以为17。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下方式确定该更新后的聚类簇所包含的坐标点的数目的最小值:上述执行主体可以确定该更新后的聚类簇的排序编号是否小于上述中位数,若确定出该更新后的聚类簇的排序编号小于上述中位数,可以将上述第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之差确定为该更新后的聚类簇所包含的坐标点的数目的最小值。若该更新后的聚类簇的排序编号小于上述中位数,排序编号的最小值为0,上述执行主体可以按照如下公式(2)确定该更新后的聚类簇所包含的坐标点的数目的最小值:
其中,i为更新后的聚类簇的排序编号,reducei为排序编号为i的更新后的聚类簇所包含的坐标点的数目对应的衰减值,N为上述坐标点集合中的坐标点的数目,K为上述预设数目,ClusterSizei min为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最小值,m为中位数。
在本实施例的一些可选的实现方式中,上述执行主体还可以通过如下方式确定该更新后的聚类簇所包含的坐标点的数目的最小值:上述执行主体可以确定该更新后的聚类簇的排序编号是否大于上述中位数,若确定出该更新后的聚类簇的排序编号大于上述中位数,可以将上述第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之和确定为该更新后的聚类簇所包含的坐标点的数目的最小值。若该更新后的聚类簇的排序编号大于上述中位数,排序编号的最小值为0,上述执行主体可以按照如下公式(3)确定该更新后的聚类簇所包含的坐标点的数目的最小值:
其中,i为更新后的聚类簇的排序编号,reducei为排序编号为i的更新后的聚类簇所包含的坐标点的数目对应的衰减值,N为上述坐标点集合中的坐标点的数目,K为上述预设数目,ClusterSizei min为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最小值,m为中位数。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下方式确定该更新后的聚类簇所包含的坐标点的数目的最小值:上述执行主体可以确定该更新后的聚类簇的排序编号是否等于上述中位数,若确定出该更新后的聚类簇的排序编号等于上述中位数,可以将上述第二目标数值确定为该更新后的聚类簇所包含的坐标点的数目的最小值。若该更新后的聚类簇的排序编号等于上述中位数,上述执行主体可以按照如下公式(4)确定该更新后的聚类簇所包含的坐标点的数目的最小值:
其中,i为更新后的聚类簇的排序编号,N为上述坐标点集合中的坐标点的数目,K为上述预设数目,ClusterSizei min为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最小值,m为中位数。
步骤4043,将最小值与预设第五数值之和确定为该更新后的聚类簇所包含的坐标点的数目的最大值。
在这里,上述执行主体可以将在步骤4042中确定出的最小值与预设第五数值之和确定为该更新后的聚类簇所包含的坐标点的数目的最大值。在这里,上述第五数值可以为1。上述执行主体可以按照如下公式(5)确定该更新后的聚类簇所包含的坐标点的数目的最大值:
ClusterSizei max=ClusterSizei min+1,(i∈[0,N-1]) (5)
其中,i为更新后的聚类簇的排序编号,N为上述坐标点集合中的坐标点的数目,ClusterSizei max为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最大值,ClusterSizei min为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最小值。
本申请的上述实施例提供的重新确定每个更新后的聚类簇所包含的坐标点的数目的方法,可以根据距离调整聚类簇所包含的坐标点的数目,从而可以确定出更符合物流配送场景下的每个配送区域中的待配送坐标点的数量。
进一步参考图5,图5是根据本申请的用于输出信息的方法中重新对坐标点集合中的坐标点进行聚类的流程500。如图5所示,本实施例中,重新对坐标点集合中的坐标点进行聚类的步骤包括:
步骤501,在坐标点集合中重新选取预设数目个坐标点作为第二初始中心点,以第二初始中心点为聚类中心,重新对坐标点集合中的坐标点进行聚类,得到预设数目个第二初始聚类簇。
在本实施例中,用于输出信息的方法的执行主体(例如图1所示的服务器)可以在上述坐标点集合中重新选取上述预设数目个坐标点作为第二初始中心点。在这里,上述执行主体可以将上述步骤301中所确定出的更新后的中心点确定为第二初始中心点。之后,可以以上述第二初始中心点为聚类中心,重新对坐标点集合中的坐标点进行聚类,得到预设数目个第二初始聚类簇。具体地,针对至少一个第三待分配坐标点中的每个第三待分配坐标点,上述执行主体可以首先基于该第三待分配坐标点与各个第二初始中心点之间的距离,确定该第三待分配坐标点的增益。上述至少一个第三待分配坐标点可以包括上述坐标点集合中除上述第二初始中心点之外的其它坐标点。之后,上述执行主体可以基于上述至少一个第三待分配坐标点中每个第三待分配坐标点的增益和每个第三待分配坐标点与各个第二初始中心点之间的距离,对上述至少一个第三待分配坐标点进行聚类,得到上述预设数目个第二初始聚类簇。需要说明的是,每个第二初始聚类簇所包含的坐标点的数目为对应的更新后的聚类簇所包含的坐标点的数目。
步骤502,对预设数目个第二初始聚类簇进行更新,得到预设数目个更新后的第二聚类簇作为目标聚类簇。
在本实施例中,上述执行主体可以对上述预设数目个第二初始聚类簇进行更新,得到上述预设数目个更新后的第二聚类簇作为目标聚类簇。具体地,上述执行主体可以利用与步骤301-步骤304相类似的聚类簇更新方法对上述预设数目个第二初始聚类簇进行更新。上述执行主体也可以利用与步骤3041-步骤3050相类似的坐标点转移方法对各个第二初始聚类簇中的坐标点进行转移。同时利用所确定出的每个更新后的聚类簇所包含的坐标点的数目对聚类大小进行限制,得到预设数目个目标聚类簇。
本申请的上述实施例提供的重新对坐标点集合中的坐标点进行聚类的方法,可以确定出预设数目个目标聚类簇,且每个目标聚类簇中的坐标点的数量为所确定出的数量,从而可以达到均衡配送工作量的目的。
进一步参考图6,作为对上述各图所示方法的实现,本申请提供了一种用于输出信息的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的用于输出信息的装置600包括:聚类单元601、更新单元602、确定单元603和输出单元604。其中,聚类单元601被配置成在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以第一初始中心点为聚类中心,对坐标点集合中的坐标点进行聚类,得到预设数目个第一初始聚类簇;更新单元602被配置成对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇;确定单元603被配置成基于预设的距离衰减函数,重新确定预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;输出单元604被配置成基于每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,得到预设数目个目标聚类簇,输出预设数目个目标聚类簇的簇信息。
在本实施例中,用于输出信息的装置600的聚类单元601、更新单元602、确定单元603和输出单元604的具体处理可以参考图2对应实施例中的步骤201、步骤202、步骤203和步骤204。
在本实施例的一些可选的实现方式中,上述聚类单元601可以通过如下方式以上述第一初始中心点为聚类中心,对上述坐标点集合中的坐标点进行聚类,得到上述预设数目个第一初始聚类簇:针对至少一个第一待分配坐标点中的每个第一待分配坐标点,上述聚类单元601可以首先基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益。上述至少一个第一待分配坐标点可以包括上述坐标点集合中除上述第一初始中心点之外的其它坐标点。之后,上述聚类单元601可以基于上述至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对上述至少一个第一待分配坐标点进行聚类,得到上述预设数目个第一初始聚类簇。需要说明的是,各个第一初始聚类簇中的坐标点的数目可以是对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行取整所得到的数值。各个第一初始聚类簇中的坐标点的数目可以是对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向下取整所得到的数值,也可以是对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向上取整所得到的数值。
在本实施例的一些可选的实现方式中,上述聚类单元601可以通过如下方式基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益:上述聚类单元601可以确定该第一待分配坐标点与各个第一初始中心点之间的各个距离,可以将上述各个距离中的最大距离与最小距离之差确定为该第一待分配坐标点的增益。作为示例,若该第一待分配坐标点与五个第一初始中心点之间的距离分别为120米、140米、115米、80米和150米,则可以将最大距离150米与最小距离80米之差70米确定为该第一待分配坐标点的增益。
在本实施例的一些可选的实现方式中,上述聚类单元601可以通过如下方式基于上述至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对上述至少一个第一待分配坐标点进行聚类:上述聚类单元601可以按照上述至少一个第一待分配坐标点的增益由大到小的顺序,将各个第一待分配坐标点分配到对应的聚类簇中。针对上述至少一个第一待分配坐标点中的每个第一待分配坐标点,该第一待分配坐标点所对应的聚类簇可以为当前所包含的坐标点的数目小于第一目标数值、且对应的第一初始中心点与该第一待分配坐标点距离最近的聚类簇。上述第一目标数值为对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向上取整所得到的数值。
在本实施例的一些可选的实现方式中,上述更新单元602可以执行如下更新步骤:首先,可以重新确定上述预设数目个第一初始聚类簇中每个第一初始聚类簇的中心点作为更新后的中心点。在这里,针对每个第一初始聚类簇,上述更新单元602可以将第一初始聚类簇所包含的所有坐标点在预设坐标系下的横坐标值的平均值作为更新后的中心点的横坐标值,将第一初始聚类簇所包含的所有坐标点在上述坐标系下的纵坐标值的平均值作为更新后的中心点的纵坐标值。之后,针对至少一个第二待分配坐标点中的每个第二待分配坐标点,上述更新单元602可以基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇。具体地,上述更新单元602可以确定与该第二待分配坐标点距离最近的更新后的中心点是否为该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点;若否,则可以将该第二待分配坐标点转移到距离最近的更新后的中心点所属的第一初始聚类簇中。需要说明的是,上述至少一个第二待分配坐标点可以包括上述坐标点集合中除更新后的中心点之外的其它坐标点。
在本实施例的一些可选的实现方式中,针对上述至少一个第二待分配坐标点中的每个第二待分配坐标点,上述更新单元602可以将该第二待分配坐标点与该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第一距离,将该第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的各个距离中的最小距离确定为第二距离,将第一距离与第二距离之间的差值确定为该第二待分配坐标点对应的代价值。在这里,其它第一初始聚类簇是上述预设数目个第一初始聚类簇中除该第二待分配坐标点所属的第一初始聚类簇之外的其他初始聚类簇。需要说明的是,上述至少一个第二待分配坐标点包括上述坐标点集合中除更新后的中心点之外的其它坐标点。该坐标点对应的代价值可以理解为将该坐标点从该坐标点所属的初始聚类簇中移出,移入到其它初始聚类簇中的代价。
之后,针对上述预设数目个第一初始聚类簇中的每个第一初始聚类簇,上述更新单元602可以基于该第一初始聚类簇中的各个第二待分配坐标点对应的代价值,生成该第一初始聚类簇对应的待交换坐标点集合。具体地,上述更新单元602可以将对应的代价值为正数的第二待分配坐标点添加到该第一初始聚类簇对应的待交换坐标点集合中。上述更新单元602可以按照对应的代价值由大到小的顺序选取预设第一数目个(例如,三个)第二待分配坐标点添加到该第一初始聚类簇对应的待交换坐标点集合中。
最后,上述更新单元602可以按照上述第二待分配坐标点集合中各个第二待分配坐标点对应的代价值由小到大的顺序,基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中。具体地,上述更新单元602可以确定与第二待分配坐标点距离最近的更新后的中心点是否为第二待分配坐标点所属的第一初始聚类簇的更新后的中心点;若否,则可以确定与第二待分配坐标点距离最近的更新后的中心点所属的第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点;若存在,则将第二待分配坐标点转移到距离最近的更新后的中心点所属的第一初始聚类簇中,以及将所存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。需要说明的是,上述第二待分配坐标点集合中的第二待分配坐标点的代价值为非负数。
在本实施例的一些可选的实现方式中,上述更新单元602可以按照如下方式确定是否将第二待分配坐标点移动到其它第一初始聚类簇中:上述更新单元602可以按照第二待分配坐标点与各个其它第一初始聚类簇的更新后的中心点之间的距离由近到远的顺序对各个其它第一初始聚类簇进行排序,按照排序结果,执行如下转移步骤:
步骤一,上述更新单元602可以将第二待分配坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第三距离,将第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第四距离,将第三距离与第四距离之间的差值确定为第一交换增益。作为示例,若第三距离为5,第四距离为3,则第一交换增益为2。
步骤二,上述更新单元602可以确定其它第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点。
步骤三,若在步骤二中确定出其它第一初始聚类簇对应的待交换坐标点集合中存在待交换坐标点,上述更新单元602可以将所存在的待交换坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第五距离,将所存在的待交换坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第六距离,将第五距离与第六距离之间的差值确定为第二交换增益。在这里,上述更新单元602可以对待交换坐标点集合中的待交换坐标点进行遍历,作为示例,可以按照对应的代价值由大到小的顺序进行遍历。
步骤四,上述更新单元602可以确定第一交换增益和第二交换增益之和是否大于预设第一数值。在这里,上述第一数值可以为0。若第一交换增益和第二交换增益之和大于预设第一数值,则上述更新单元602可以执行步骤五。
步骤五,若在步骤四中确定出第一交换增益和第二交换增益之和大于预设第一数值,上述更新单元602可以将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在本实施例的一些可选的实现方式中,其它第一初始聚类簇对应的待交换坐标点集合中可以存在至少两个待交换坐标点。上述更新单元602可以确定第一交换增益和所存在的至少两个待交换坐标点对应的各个第二交换增益之和中是否存在至少两个和值大于上述预设第一数值,若是,则可以将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的至少两个待交换坐标点中对应最大代价值的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
在本实施例的一些可选的实现方式中,上述转移步骤还可以包括:若确定出其它第一初始聚类簇对应的待交换坐标点集合中不存在待交换坐标点,或者确定出第一交换增益和第二交换增益之和小于等于上述预设第一数值,上述更新单元602可以确定第一交换增益是否大于预设第二数值,在这里,上述第二数值可以为0。若确定出第一交换增益大于预设第二数值,上述更新单元602可以确定其它第一初始聚类簇所包含的坐标点的数目是否小于第一目标数值。在这里,上述第一目标数值通常是对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向上取整所得到的数值,即其它第一初始聚类簇所能包含的坐标点的上限值。若确定出第一交换增益大于上述第二数值且确定出其它第一初始聚类簇所包含的坐标点的数目小于上述第一目标数值,上述更新单元602可以将第二待分配坐标点转移到其它第一初始聚类簇中。
在本实施例的一些可选的实现方式中,上述转移步骤还可以包括:若确定出第一交换增益大于上述第二数值,上述更新单元602可以确定其它第一初始聚类簇所包含的坐标点的数目是否等于第一目标数值,即确定其它第一初始聚类簇所包含的坐标点的数目是否达到上限值。若确定出第一交换增益大于上述第二数值且确定出其它第一初始聚类簇所包含的坐标点的数目等于上述第一目标数值,上述更新单元602可以将第二待分配坐标点添加到第二待分配坐标点所属的第一初始聚类簇对应的待交换坐标点集合中。
在本实施例的一些可选的实现方式中,上述转移步骤还可以包括:确定上述第二待分配坐标点集合中是否不存在未被执行上述转移步骤的第二待分配坐标点。若确定出上述第二待分配坐标点集合中不存在未被执行上述转移步骤的第二待分配坐标点,上述更新单元602可以清空上述预设数目个第一初始聚类簇中每个第一初始聚类簇对应的待交换坐标点集合。
在本实施例的一些可选的实现方式中,上述用于输出信息的装置600还可以包括执行单元(图中未示出)。上述执行单元还可以在确定出将第二待分配坐标点移动到其它第一初始聚类簇中的情况下,重新执行上述更新步骤。若确定出不需要将第二待分配坐标点移动到其它第一初始聚类簇中,则说明当前的所有更新后的聚类簇收敛。
在本实施例的一些可选的实现方式中,上述确定单元603可以首先确定上述预设数目个更新后的聚类簇中每个更新后的聚类簇的聚类中心与目标位置点之间的距离。在这里,在物流运输场景中,上述目标位置点可以为仓库所在的位置点。之后,上述确定单元603可以按照确定出的距离由远到近的顺序,生成各个更新后的聚类簇所对应的由小到大的排序编号。作为示例,若存在五个更新后的聚类簇,第一聚类簇的聚类中心、第二聚类簇的聚类中心、第三聚类簇的聚类中心、第四聚类簇的聚类中心和第五聚类簇的聚类中心与目标位置点之间的距离分别为100米、58米、39米、125米和68米,则按照距离由远到近的顺序,所生成的第一聚类簇的排序编号为2、第二聚类簇的的排序编号为4、第三聚类簇的排序编号为5、第四聚类簇的排序编号为1、第五聚类簇的排序编号为3。而后,上述确定单元603可以确定上述排序编号的中位数。中位数代表一个样本、种群或概率分布中的一个数值,其可将数值集合划分为相等的上下两部分。对于有限的数集,可以通过把所有观察值高低排序后找出正中间的一个作为中位数。在这里,可以将排序编号按照由小到大进行排序,查找出正中间的一个作为中位数。作为示例,对于排序编号1、2、3、4和5,正中间的3为中位数。最后,针对上述预设数目个更新后的聚类簇中的每个更新后的聚类簇,上述确定单元603可以基于该更新后的聚类簇的排序编号和中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,以及基于衰减值,确定该更新后的聚类簇所包含的坐标点的数目。作为示例,上述确定单元603可以确定该更新后的聚类簇的排序编号与上述中位数的差值,将该更新后的聚类簇的排序编号与上述中位数的差值乘以预设系数所得到的乘积确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。之后,可以对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行取整操作,得到坐标点数目的平均值,可以将上述衰减值与上述坐标点数目的平均值之和确定为该更新后的聚类簇所包含的坐标点的数目。
在本实施例的一些可选的实现方式中,上述确定单元603可以首先确定该更新后的聚类簇的排序编号与中位数之间的差值的绝对值。之后,可以求取上述绝对值与预设第三数值之和的对数。上述第三数值可以为1。而后,可以确定预设系数与对数的乘积。上述系数可以用于调整距离上述目标位置点最远的更新后的聚类簇相比于排序编号为上述中位数的更新后的聚类簇的坐标点的下降数量。最后,上述确定单元603可以将上述乘积与预设第四数值的比值确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。上述第四数值可以为10。作为示例,上述确定单元603可以按照如下公式(1)确定排序编号为i的更新后的聚类簇所包含的坐标点的数目对应的衰减值:
其中,i为更新后的聚类簇的排序编号,reducei为排序编号为i的更新后的聚类簇所包含的坐标点的数目对应的衰减值,xi为排序编号i与中位数的差值,α为用于调整距离上述目标位置点最远的更新后的聚类簇相比于排序编号为上述中位数的更新后的聚类簇的坐标点的下降数量的系数。
在本实施例的一些可选的实现方式中,上述确定单元603可以基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值。上述第二目标数值可以为对上述坐标点集合中的坐标点的数目与上述预设数目的比值进行向下取整得到的数值。作为示例,若上述坐标点集合中的坐标点的数目为120,上述预设数目为7,则上述第二目标数值可以为17。之后,上述确定单元603可以将确定出的最小值与预设第五数值之和确定为该更新后的聚类簇所包含的坐标点的数目的最大值。在这里,上述第五数值可以为1。上述确定单元603可以按照如下公式(5)确定该更新后的聚类簇所包含的坐标点的数目的最大值:
ClusterSizei max=ClusterSizei min+1,(i∈[0,N-1]) (5)
其中,i为更新后的聚类簇的排序编号,N为上述坐标点集合中的坐标点的数目,ClusterSizei max为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最大值,ClusterSizei min为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最小值。
在本实施例的一些可选的实现方式中,上述确定单元603可以通过如下方式确定该更新后的聚类簇所包含的坐标点的数目的最小值:上述确定单元603可以确定该更新后的聚类簇的排序编号是否小于上述中位数,若确定出该更新后的聚类簇的排序编号小于上述中位数,可以将上述第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之差确定为该更新后的聚类簇所包含的坐标点的数目的最小值。若该更新后的聚类簇的排序编号小于上述中位数,排序编号的最小值为0,上述确定单元603可以按照如下公式(2)确定该更新后的聚类簇所包含的坐标点的数目的最小值:
其中,i为更新后的聚类簇的排序编号,reducei为排序编号为i的更新后的聚类簇所包含的坐标点的数目对应的衰减值,N为上述坐标点集合中的坐标点的数目,K为上述预设数目,ClusterSizei min为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最小值,m为中位数。
在本实施例的一些可选的实现方式中,上述确定单元603还可以通过如下方式确定该更新后的聚类簇所包含的坐标点的数目的最小值:上述确定单元603可以确定该更新后的聚类簇的排序编号是否大于上述中位数,若确定出该更新后的聚类簇的排序编号大于上述中位数,可以将上述第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之和确定为该更新后的聚类簇所包含的坐标点的数目的最小值。若该更新后的聚类簇的排序编号大于上述中位数,排序编号的最小值为0,上述确定单元603可以按照如下公式(3)确定该更新后的聚类簇所包含的坐标点的数目的最小值:
其中,i为更新后的聚类簇的排序编号,reducei为排序编号为i的更新后的聚类簇所包含的坐标点的数目对应的衰减值,N为上述坐标点集合中的坐标点的数目,K为上述预设数目,ClusterSizei min为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最小值,m为中位数。
在本实施例的一些可选的实现方式中,上述确定单元603可以通过如下方式确定该更新后的聚类簇所包含的坐标点的数目的最小值:上述确定单元603可以确定该更新后的聚类簇的排序编号是否等于上述中位数,若确定出该更新后的聚类簇的排序编号等于上述中位数,可以将上述第二目标数值确定为该更新后的聚类簇所包含的坐标点的数目的最小值。若该更新后的聚类簇的排序编号等于上述中位数,上述确定单元603可以按照如下公式(4)确定该更新后的聚类簇所包含的坐标点的数目的最小值:
其中,i为更新后的聚类簇的排序编号,N为上述坐标点集合中的坐标点的数目,K为上述预设数目,ClusterSizei min为排序编号为i的更新后的聚类簇所包含的坐标点的数目的最小值,m为中位数。
在本实施例的一些可选的实现方式中,上述输出单元604可以在上述坐标点集合中重新选取上述预设数目个坐标点作为第二初始中心点。在这里,上述输出单元604可以将所确定出的更新后的中心点确定为第二初始中心点。之后,可以以上述第二初始中心点为聚类中心,重新对坐标点集合中的坐标点进行聚类,得到预设数目个第二初始聚类簇。具体地,针对至少一个第三待分配坐标点中的每个第三待分配坐标点,上述输出单元604可以首先基于该第三待分配坐标点与各个第二初始中心点之间的距离,确定该第三待分配坐标点的增益。上述至少一个第三待分配坐标点可以包括上述坐标点集合中除上述第二初始中心点之外的其它坐标点。之后,上述输出单元604可以基于上述至少一个第三待分配坐标点中每个第三待分配坐标点的增益和每个第三待分配坐标点与各个第二初始中心点之间的距离,对上述至少一个第三待分配坐标点进行聚类,得到上述预设数目个第二初始聚类簇。需要说明的是,每个第二初始聚类簇所包含的坐标点的数目为对应的更新后的聚类簇所包含的坐标点的数目。之后,上述输出单元604可以对上述预设数目个第二初始聚类簇进行更新,得到上述预设数目个更新后的第二聚类簇作为目标聚类簇。
下面参考图7,其示出了适于用来实现本公开的实施例的电子设备(例如图1中的服务器)700的结构示意图。图7示出的电子设备仅仅是一个示例,不应对本公开的实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700可以包括处理装置(例如中央处理器、图形处理器等)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储装置708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有电子设备700操作所需的各种程序和数据。处理装置701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
通常,以下装置可以连接至I/O接口705:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置706;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置707;包括例如磁带、硬盘等的存储装置708;以以及通信装置709。通信装置709可以允许电子设备700与其他设备进行无线或有线通信以交换数据。虽然图7示出了具有各种装置的电子设备700,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。图7中示出的每个方框可以代表一个装置,也可以根据需要代表多个装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置709从网络上被下载和安装,或者从存储装置708被安装,或者从ROM 702被安装。在该计算机程序被处理装置701执行时,执行本公开的实施例的方法中限定的上述功能。需要说明的是,本公开的实施例所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以第一初始中心点为聚类中心,对坐标点集合中的坐标点进行聚类,得到预设数目个第一初始聚类簇;对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇;基于预设的距离衰减函数,重新确定预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;基于每个更新后的聚类簇所包含的坐标点的数目,重新对坐标点集合中的坐标点进行聚类,得到预设数目个目标聚类簇,输出预设数目个目标聚类簇的簇信息。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的实施例的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开的实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括聚类单元、更新单元、确定单元和输出单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,更新单元还可以被描述为“对预设数目个第一初始聚类簇进行更新,得到预设数目个更新后的聚类簇的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (40)

1.一种用于输出信息的方法,包括:
在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以所述第一初始中心点为聚类中心,对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个第一初始聚类簇;
对所述预设数目个第一初始聚类簇进行更新,得到所述预设数目个更新后的聚类簇;
基于预设的距离衰减函数,重新确定所述预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;
基于所述每个更新后的聚类簇所包含的坐标点的数目,重新对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个目标聚类簇,输出所述预设数目个目标聚类簇的簇信息。
2.根据权利要求1所述的方法,其中,所述以所述第一初始中心点为聚类中心,对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个第一初始聚类簇,包括:
针对至少一个第一待分配坐标点中的每个第一待分配坐标点,基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益,其中,所述至少一个第一待分配坐标点包括所述坐标点集合中除所述第一初始中心点之外的其它坐标点;
基于所述至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对所述至少一个第一待分配坐标点进行聚类,得到所述预设数目个第一初始聚类簇,其中,各个第一初始聚类簇中的坐标点的数目是对所述坐标点集合中的坐标点的数目与所述预设数目的比值进行取整所得到的数值。
3.根据权利要求2所述的方法,其中,所述基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益,包括:
确定该第一待分配坐标点与各个第一初始中心点之间的各个距离,将所述各个距离中的最大距离与最小距离之差确定为该第一待分配坐标点的增益。
4.根据权利要求2或3所述的方法,其中,所述基于所述至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对所述至少一个第一待分配坐标点进行聚类,包括:
按照所述至少一个第一待分配坐标点的增益由大到小的顺序,将各个第一待分配坐标点分配到对应的聚类簇中,其中,针对所述至少一个第一待分配坐标点中的每个第一待分配坐标点,该第一待分配坐标点所对应的聚类簇为当前所包含的坐标点的数目小于第一目标数值、且对应的第一初始中心点与该第一待分配坐标点距离最近的聚类簇。
5.根据权利要求1所述的方法,其中,所述对所述预设数目个第一初始聚类簇进行更新,得到所述预设数目个更新后的聚类簇,包括:
执行如下更新步骤:重新确定所述预设数目个第一初始聚类簇中每个第一初始聚类簇的中心点作为更新后的中心点;针对至少一个第二待分配坐标点中的每个第二待分配坐标点,基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇,其中,所述至少一个第二待分配坐标点包括所述坐标点集合中除更新后的中心点之外的其它坐标点。
6.根据权利要求5所述的方法,其中,所述基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇,包括:
将该第二待分配坐标点与该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第一距离,将该第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的各个距离中的最小距离确定为第二距离,将所述第一距离与所述第二距离之间的差值确定为该第二待分配坐标点对应的代价值;
针对所述预设数目个第一初始聚类簇中的每个第一初始聚类簇,基于该第一初始聚类簇中的各个第二待分配坐标点对应的代价值,生成该第一初始聚类簇对应的待交换坐标点集合;
按照第二待分配坐标点集合中各个第二待分配坐标点对应的代价值由小到大的顺序,基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中,其中,所述第二待分配坐标点集合中的第二待分配坐标点的代价值为非负数。
7.根据权利要求6所述的方法,其中,所述基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中,包括:
按照第二待分配坐标点与各个其它第一初始聚类簇的更新后的中心点之间的距离由近到远的顺序对各个其它第一初始聚类簇进行排序,按照排序结果,执行如下转移步骤:将第二待分配坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第三距离,将第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第四距离,将第三距离与第四距离之间的差值确定为第一交换增益;确定其它第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点;响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中存在待交换坐标点,将所存在的待交换坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第五距离,将所存在的待交换坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第六距离,将第五距离与第六距离之间的差值确定为第二交换增益;确定第一交换增益和第二交换增益之和是否大于预设第一数值;响应于确定出第一交换增益和第二交换增益之和大于所述预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
8.根据权利要求7所述的方法,其中,其它第一初始聚类簇对应的待交换坐标点集合中存在至少两个待交换坐标点;以及
所述响应于确定出第一交换增益和第二交换增益之和大于所述预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中,包括:
响应于确定出第一交换增益和所述至少两个待交换坐标点对应的各个第二交换增益之和中存在至少两个和值大于所述预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的至少两个待交换坐标点中对应最大代价值的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
9.根据权利要求7所述的方法,其中,所述转移步骤还包括:
响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中不存在待交换坐标点或者确定出第一交换增益和第二交换增益之和小于等于所述预设第一数值,确定第一交换增益是否大于预设第二数值,以及确定其它第一初始聚类簇所包含的坐标点的数目是否小于第一目标数值;响应于确定出第一交换增益大于所述预设第二数值且其它第一初始聚类簇所包含的坐标点的数目小于所述第一目标数值,将第二待分配坐标点转移到其它第一初始聚类簇中。
10.根据权利要求7所述的方法,其中,所述转移步骤还包括:
响应于确定出第一交换增益大于所述预设第二数值且其它第一初始聚类簇所包含的坐标点的数目等于所述第一目标数值,将第二待分配坐标点添加到第二待分配坐标点所属的第一初始聚类簇对应的待交换坐标点集合中。
11.根据权利要求7-10之一所述的方法,其中,所述转移步骤还包括:
响应于确定出所述第二待分配坐标点集合中不存在未被执行所述转移步骤的第二待分配坐标点,清空所述预设数目个第一初始聚类簇中每个第一初始聚类簇对应的待交换坐标点集合。
12.根据权利要求6所述的方法,其中,在所述确定是否将第二待分配坐标点移动到其它第一初始聚类簇中之后,所述方法还包括:
响应于确定出将第二待分配坐标点移动到其它第一初始聚类簇中,重新执行所述更新步骤。
13.根据权利要求1所述的方法,其中,所述基于预设的距离衰减函数,重新确定所述预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目,包括:
确定所述预设数目个更新后的聚类簇中每个更新后的聚类簇的聚类中心与目标位置点之间的距离;
按照所述距离由远到近的顺序,生成各个更新后的聚类簇所对应的由小到大的排序编号;
确定所述排序编号的中位数;
针对所述预设数目个更新后的聚类簇中的每个更新后的聚类簇,基于该更新后的聚类簇的排序编号和所述中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,以及基于所述衰减值,确定该更新后的聚类簇所包含的坐标点的数目。
14.根据权利要求13所述的方法,其中,所述基于该更新后的聚类簇的排序编号和所述中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,包括:
确定该更新后的聚类簇的排序编号与所述中位数之间的差值的绝对值,求取所述绝对值与预设第三数值之和的对数,确定预设系数与所述对数的乘积,将所述乘积与预设第四数值的比值确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。
15.根据权利要求13或14所述的方法,其中,所述基于所述衰减值,确定该更新后的聚类簇所包含的坐标点的数目,包括:
基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,其中,所述第二目标数值为对所述坐标点集合中的坐标点的数目与所述预设数目的比值进行向下取整得到的数值;
将所述最小值与预设第五数值之和确定为该更新后的聚类簇所包含的坐标点的数目的最大值。
16.根据权利要求15所述的方法,其中,所述基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,包括:
响应于确定出该更新后的聚类簇的排序编号小于所述中位数,将第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之差确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
17.根据权利要求15所述的方法,其中,所述基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,包括:
响应于确定出该更新后的聚类簇的排序编号大于所述中位数,将第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之和确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
18.根据权利要求15所述的方法,其中,所述基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,包括:
响应于确定出该更新后的聚类簇的排序编号等于所述中位数,将第二目标数值确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
19.根据权利要求1所述的方法,其中,所述基于所述每个更新后的聚类簇所包含的坐标点的数目,重新对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个目标聚类簇,输出所述预设数目个目标聚类簇的簇信息,包括:
在所述坐标点集合中重新选取所述预设数目个坐标点作为第二初始中心点,以所述第二初始中心点为聚类中心,重新对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个第二初始聚类簇,其中,每个第二初始聚类簇所包含的坐标点的数目为对应的更新后的聚类簇所包含的坐标点的数目;
对所述预设数目个第二初始聚类簇进行更新,得到所述预设数目个更新后的第二聚类簇作为目标聚类簇。
20.一种用于输出信息的装置,包括:
聚类单元,被配置成在预设的坐标点集合中选取预设数目个坐标点作为第一初始中心点,以所述第一初始中心点为聚类中心,对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个第一初始聚类簇;
更新单元,被配置成对所述预设数目个第一初始聚类簇进行更新,得到所述预设数目个更新后的聚类簇;
确定单元,被配置成基于预设的距离衰减函数,重新确定所述预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目;
输出单元,被配置成基于所述每个更新后的聚类簇所包含的坐标点的数目,重新对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个目标聚类簇,输出所述预设数目个目标聚类簇的簇信息。
21.根据权利要求20所述的装置,其中,所述聚类单元进一步被配置成按照如下方式以所述第一初始中心点为聚类中心,对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个第一初始聚类簇:
针对至少一个第一待分配坐标点中的每个第一待分配坐标点,基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益,其中,所述至少一个第一待分配坐标点包括所述坐标点集合中除所述第一初始中心点之外的其它坐标点;
基于所述至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对所述至少一个第一待分配坐标点进行聚类,得到所述预设数目个第一初始聚类簇,其中,各个第一初始聚类簇中的坐标点的数目是对所述坐标点集合中的坐标点的数目与所述预设数目的比值进行取整所得到的数值。
22.根据权利要求21所述的装置,其中,所述聚类单元进一步被配置成按照如下方式基于该第一待分配坐标点与各个第一初始中心点之间的距离,确定该第一待分配坐标点的增益:
确定该第一待分配坐标点与各个第一初始中心点之间的各个距离,将所述各个距离中的最大距离与最小距离之差确定为该第一待分配坐标点的增益。
23.根据权利要求21或22所述的装置,其中,所述聚类单元进一步被配置成按照如下方式基于所述至少一个第一待分配坐标点中每个第一待分配坐标点的增益和每个第一待分配坐标点与各个第一初始中心点之间的距离,对所述至少一个第一待分配坐标点进行聚类:
按照所述至少一个第一待分配坐标点的增益由大到小的顺序,将各个第一待分配坐标点分配到对应的聚类簇中,其中,针对所述至少一个第一待分配坐标点中的每个第一待分配坐标点,该第一待分配坐标点所对应的聚类簇为当前所包含的坐标点的数目小于第一目标数值、且对应的第一初始中心点与该第一待分配坐标点距离最近的聚类簇。
24.根据权利要求20所述的装置,其中,所述更新单元进一步被配置成按照如下方式对所述预设数目个第一初始聚类簇进行更新,得到所述预设数目个更新后的聚类簇:
执行如下更新步骤:重新确定所述预设数目个第一初始聚类簇中每个第一初始聚类簇的中心点作为更新后的中心点;针对至少一个第二待分配坐标点中的每个第二待分配坐标点,基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇,其中,所述至少一个第二待分配坐标点包括所述坐标点集合中除更新后的中心点之外的其它坐标点。
25.根据权利要求24所述的装置,其中,所述更新单元进一步被配置成按照如下方式基于该第二待分配坐标点与各个更新后的中心点之间的各个距离,重新确定该第二待分配坐标点所属的聚类簇:
将该第二待分配坐标点与该第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第一距离,将该第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的各个距离中的最小距离确定为第二距离,将所述第一距离与所述第二距离之间的差值确定为该第二待分配坐标点对应的代价值;
针对所述预设数目个第一初始聚类簇中的每个第一初始聚类簇,基于该第一初始聚类簇中的各个第二待分配坐标点对应的代价值,生成该第一初始聚类簇对应的待交换坐标点集合;
按照第二待分配坐标点集合中各个第二待分配坐标点对应的代价值由小到大的顺序,基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中,其中,所述第二待分配坐标点集合中的第二待分配坐标点的代价值为非负数。
26.根据权利要求25所述的装置,其中,所述更新单元进一步被配置成按照如下方式基于第二待分配坐标点与各个更新后的中心点之间的各个距离以及每个第一初始聚类簇对应的待交换坐标点集合,确定是否将第二待分配坐标点移动到其它第一初始聚类簇中:
按照第二待分配坐标点与各个其它第一初始聚类簇的更新后的中心点之间的距离由近到远的顺序对各个其它第一初始聚类簇进行排序,按照排序结果,执行如下转移步骤:将第二待分配坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第三距离,将第二待分配坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第四距离,将第三距离与第四距离之间的差值确定为第一交换增益;确定其它第一初始聚类簇对应的待交换坐标点集合中是否存在待交换坐标点;响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中存在待交换坐标点,将所存在的待交换坐标点与其它第一初始聚类簇的更新后的中心点之间的距离确定为第五距离,将所存在的待交换坐标点与第二待分配坐标点所属的第一初始聚类簇的更新后的中心点之间的距离确定为第六距离,将第五距离与第六距离之间的差值确定为第二交换增益;确定第一交换增益和第二交换增益之和是否大于预设第一数值;响应于确定出第一交换增益和第二交换增益之和大于所述预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
27.根据权利要求26所述的装置,其中,其它第一初始聚类簇对应的待交换坐标点集合中存在至少两个待交换坐标点;以及
所述更新单元进一步被配置成按照如下方式响应于确定出第一交换增益和第二交换增益之和大于所述预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中:
响应于确定出第一交换增益和所述至少两个待交换坐标点对应的各个第二交换增益之和中存在至少两个和值大于所述预设第一数值,将第二待分配坐标点转移到其它第一初始聚类簇中,以及将存在的至少两个待交换坐标点中对应最大代价值的待交换坐标点转移到第二待分配坐标点所属的第一初始聚类簇中。
28.根据权利要求26所述的装置,其中,所述转移步骤还包括:
响应于确定出其它第一初始聚类簇对应的待交换坐标点集合中不存在待交换坐标点或者确定出第一交换增益和第二交换增益之和小于等于所述预设第一数值,确定第一交换增益是否大于预设第二数值,以及确定其它第一初始聚类簇所包含的坐标点的数目是否小于第一目标数值;响应于确定出第一交换增益大于所述预设第二数值且其它第一初始聚类簇所包含的坐标点的数目小于所述第一目标数值,将第二待分配坐标点转移到其它第一初始聚类簇中。
29.根据权利要求26所述的装置,其中,所述转移步骤还包括:
响应于确定出第一交换增益大于所述预设第二数值且其它第一初始聚类簇所包含的坐标点的数目等于所述第一目标数值,将第二待分配坐标点添加到第二待分配坐标点所属的第一初始聚类簇对应的待交换坐标点集合中。
30.根据权利要求26-29之一所述的装置,其中,所述转移步骤还包括:
响应于确定出所述第二待分配坐标点集合中不存在未被执行所述转移步骤的第二待分配坐标点,清空所述预设数目个第一初始聚类簇中每个第一初始聚类簇对应的待交换坐标点集合。
31.根据权利要求25所述的装置,其中,所述装置还包括:
执行单元,被配置成响应于确定出将第二待分配坐标点移动到其它第一初始聚类簇中,重新执行所述更新步骤。
32.根据权利要求20所述的装置,其中,所述确定单元进一步被配置成按照如下方式基于预设的距离衰减函数,重新确定所述预设数目个更新后的聚类簇中每个更新后的聚类簇所包含的坐标点的数目:
确定所述预设数目个更新后的聚类簇中每个更新后的聚类簇的聚类中心与目标位置点之间的距离;
按照所述距离由远到近的顺序,生成各个更新后的聚类簇所对应的由小到大的排序编号;
确定所述排序编号的中位数;
针对所述预设数目个更新后的聚类簇中的每个更新后的聚类簇,基于该更新后的聚类簇的排序编号和所述中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值,以及基于所述衰减值,确定该更新后的聚类簇所包含的坐标点的数目。
33.根据权利要求32所述的装置,其中,所述确定单元进一步被配置成按照如下方式基于该更新后的聚类簇的排序编号和所述中位数,确定该更新后的聚类簇所包含的坐标点的数目对应的衰减值:
确定该更新后的聚类簇的排序编号与所述中位数之间的差值的绝对值,求取所述绝对值与预设第三数值之和的对数,确定预设系数与所述对数的乘积,将所述乘积与预设第四数值的比值确定为该更新后的聚类簇所包含的坐标点的数目对应的衰减值。
34.根据权利要求32或33所述的装置,其中,所述确定单元进一步被配置成按照如下方式基于所述衰减值,确定该更新后的聚类簇所包含的坐标点的数目:
基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值,其中,所述第二目标数值为对所述坐标点集合中的坐标点的数目与所述预设数目的比值进行向下取整得到的数值;
将所述最小值与预设第五数值之和确定为该更新后的聚类簇所包含的坐标点的数目的最大值。
35.根据权利要求34所述的装置,其中,所述确定单元进一步被配置成按照如下方式基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值:
响应于确定出该更新后的聚类簇的排序编号小于所述中位数,将第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之差确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
36.根据权利要求34所述的装置,其中,所述确定单元进一步被配置成按照如下方式基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值:
响应于确定出该更新后的聚类簇的排序编号大于所述中位数,将第二目标数值与该更新后的聚类簇所包含的坐标点对应的衰减值之和确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
37.根据权利要求34所述的装置,其中,所述确定单元进一步被配置成按照如下方式基于第二目标数值和该更新后的聚类簇所包含的坐标点的数目对应的衰减值,确定该更新后的聚类簇所包含的坐标点的数目的最小值:
响应于确定出该更新后的聚类簇的排序编号等于所述中位数,将第二目标数值确定为该更新后的聚类簇所包含的坐标点的数目的最小值。
38.根据权利要求20所述的装置,其中,所述输出单元进一步被配置成按照如下方式基于所述每个更新后的聚类簇所包含的坐标点的数目,重新对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个目标聚类簇,输出所述预设数目个目标聚类簇的簇信息:
在所述坐标点集合中重新选取所述预设数目个坐标点作为第二初始中心点,以所述第二初始中心点为聚类中心,重新对所述坐标点集合中的坐标点进行聚类,得到所述预设数目个第二初始聚类簇,其中,每个第二初始聚类簇所包含的坐标点的数目为对应的更新后的聚类簇所包含的坐标点的数目;
对所述预设数目个第二初始聚类簇进行更新,得到所述预设数目个更新后的第二聚类簇作为目标聚类簇。
39.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-19中任一所述的方法。
40.一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-19中任一所述的方法。
CN201910699465.3A 2019-07-31 2019-07-31 用于输出信息的方法和装置 Pending CN110400020A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910699465.3A CN110400020A (zh) 2019-07-31 2019-07-31 用于输出信息的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910699465.3A CN110400020A (zh) 2019-07-31 2019-07-31 用于输出信息的方法和装置

Publications (1)

Publication Number Publication Date
CN110400020A true CN110400020A (zh) 2019-11-01

Family

ID=68326789

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910699465.3A Pending CN110400020A (zh) 2019-07-31 2019-07-31 用于输出信息的方法和装置

Country Status (1)

Country Link
CN (1) CN110400020A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111738539A (zh) * 2020-02-28 2020-10-02 北京京东乾石科技有限公司 一种拣货任务分配方法、装置、设备及介质
CN113128743A (zh) * 2020-01-15 2021-07-16 北京京东振世信息技术有限公司 一种拣货路径规划方法和装置
CN113689021A (zh) * 2020-05-19 2021-11-23 百度在线网络技术(北京)有限公司 用于输出信息的方法和装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113128743A (zh) * 2020-01-15 2021-07-16 北京京东振世信息技术有限公司 一种拣货路径规划方法和装置
CN113128743B (zh) * 2020-01-15 2024-05-28 北京京东振世信息技术有限公司 一种拣货路径规划方法和装置
CN111738539A (zh) * 2020-02-28 2020-10-02 北京京东乾石科技有限公司 一种拣货任务分配方法、装置、设备及介质
CN111738539B (zh) * 2020-02-28 2024-04-19 北京京东乾石科技有限公司 一种拣货任务分配方法、装置、设备及介质
CN113689021A (zh) * 2020-05-19 2021-11-23 百度在线网络技术(北京)有限公司 用于输出信息的方法和装置
CN113689021B (zh) * 2020-05-19 2024-04-30 百度在线网络技术(北京)有限公司 用于输出信息的方法和装置

Similar Documents

Publication Publication Date Title
CN109003028A (zh) 用于划分物流区域的方法和装置
CN110032447A (zh) 用于分配资源的方法和装置
CN110400020A (zh) 用于输出信息的方法和装置
CN108985694A (zh) 用于确定配送中心地址的方法和装置
CN107343045A (zh) 云计算系统及用于控制服务器的云计算方法和装置
CN109918040A (zh) 语音指令分发方法和装置、电子设备及计算机可读介质
CN109815365A (zh) 用于处理视频的方法和装置
CN109947565A (zh) 用于分配计算任务的方法和装置
CN109558246A (zh) 一种负载均衡方法、装置、电子设备及存储介质
CN110009059A (zh) 用于生成模型的方法和装置
CN108734559A (zh) 一种订单处理方法和装置
CN109408205A (zh) 基于hadoop集群的任务调度方法和装置
CN115473901B (zh) 一种分布式算力集群智慧调度方法、装置及计算机设备
CN109345166A (zh) 用于生成信息的方法和装置
CN107729570A (zh) 用于服务器的数据迁移方法和装置
CN109947989A (zh) 用于处理视频的方法和装置
CN110516985A (zh) 仓库选择方法、系统、计算机系统和计算机可读存储介质
CN109359281A (zh) 动态表单生成方法及装置
CN110377416A (zh) 分布式分区任务调度方法和装置
CN109101309A (zh) 用于更新用户界面方法和装置
CN110347926A (zh) 用于推送信息的方法和装置
CN108960946A (zh) 订单显示方法和装置
CN109598344A (zh) 模型生成方法和装置
CN108509179A (zh) 用于生成模型的方法和装置
CN110160548A (zh) 用于生成行驶路线的方法、系统和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination