UNPKG

@woosh/meep-engine

Version:

Pure JavaScript game engine. Fully featured and production ready.

27 lines 1.3 kB
/** * @param {MultiNode<T>[]} node_array * @param {number} k * @param {number} random_seed * @param {number[]|Uint32Array} node_cluster_assignments pre-filled with UNASSIGNED_CLUSTER * @param {Map<T, number>} node_index_map * @param {Graph<MultiNode<T>>} graph * @returns {number[][]} */ export function graph_k_means_cluster_detailed(node_array: MultiNode<T>[], k: number, random_seed: number, node_cluster_assignments: number[] | Uint32Array, node_index_map: Map<T, number>, graph: Graph<MultiNode<T>>): number[][]; /** * Partition graph into K parts using K-medoids (graph K-means). * Iteratively reassigns nodes to the nearest medoid, then recomputes medoids * as the within-cluster node minimising the sum of distances to other members. * Stops when medoids stabilise or MAX_ITERATIONS is reached. * * Distances are BFS-based and so treat all edges as unit-weight; see * {@link graph_compute_distance_matrix}. * * @template T * @param {Graph<T>} graph * @param {number} k number of desired parts * @param {number} random_seed seed for random number generator, useful for restarting partitioning * @returns {number[][]} */ export function graph_k_means_cluster<T>(graph: Graph<T>, k: number, random_seed: number): number[][]; //# sourceMappingURL=graph_k_means_cluster.d.ts.map