Math-Model(二)-无向图最近邻路径搜索

简介: 献给Mathmodel的踩坑boys/girls

数学建模国赛2017B会员分布问题

%a=xlsread('../附件一:已结束项目任务数据.xls');
clc
clear
GPS_1=importdata('../GPS_DATA.txt');
GPS_2=importdata('../GPS_DATA2.txt');
%X=min([min(GPS_1(:,1)),min(GPS_2(:,1))]):0.01:max([max(GPS_1(:,1)),max(GPS_2(:,1))]);
%Y=min([min(GPS_1(:,2)),min(GPS_2(:,2))]):0.01:max([max(GPS_1(:,2)),max(GPS_2(:,2))]);
figure(1)
plot(GPS_1(:,2),GPS_1(:,1),'*r')%,GPS_2(:,2),GPS_2(:,1),'*b')
figure(2)
plot(GPS_2(:,2),GPS_2(:,1),'*b')
figure(3)
plot(GPS_1(:,2),GPS_1(:,1),'*r',GPS_2(:,2),GPS_2(:,1),'*b')
%插入人员密度值
%Z=griddata(x,y,z,X,Y,'v4');
%%
for i=1:length(GPS_1)
    counter=1;
    counter_task=1;
    gps_point=[0 0 0 0];
    real_distance_list=[0];
    for j=1:length(GPS_2)
        real_distance=eular_distance(GPS_1(i,2),GPS_1(i,1),GPS_2(j,2),GPS_2(j,1));
        if real_distance<12
            gps_point(counter,1)=GPS_2(j,2);
            gps_point(counter,2)=GPS_2(j,1);
            gps_point(counter,3)=GPS_2(j,3);
            gps_point(counter,4)=GPS_2(j,4);
            counter=counter+1;
        end
        real_distance_list(j,1)=real_distance;
    end
    neighbor_counter(i,1)=counter;
    neighbor_limit_mean(i,1)=mean(gps_point(:,3));
    neighbor_reputation_mean(i,1)=mean(gps_point(:,4));
     for j=1:length(GPS_1)
        real_distance=eular_distance(GPS_1(i,2),GPS_1(i,1),GPS_1(j,2),GPS_1(j,1));
        if real_distance<12
            counter_task=counter_task+1;
        end
     end
    neighbor_task_counter(i,1)=counter_task;
    min_distance(i,1)=min(real_distance_list);
end
tabel=[neighbor_counter,neighbor_limit_mean,neighbor_reputation_mean,min_distance,neighbor_task_counter]
%%
plot([1:length(GPS_1)],neighbor_counter,'b')
%%
function real_distance=eular_distance(longitude1,Latitude1,longitude2,Latitude2)
real_distance=distance([Latitude1,longitude1],[Latitude2,longitude2])/180*pi*6371.393;
end
目录
相关文章
|
数据挖掘
kmeans聚类质心个数选取的10种方式
kmeans聚类质心个数选取的10种方式
157 0
|
机器学习/深度学习 存储 并行计算
【Pytorch】Tensor的分块、变形、排序、极值与in-place操作
【Pytorch】Tensor的分块、变形、排序、极值与in-place操作
582 0
|
PyTorch 算法框架/工具
Pytorch疑难小实验:Torch.max() Torch.min()在不同维度上的解释
Pytorch疑难小实验:Torch.max() Torch.min()在不同维度上的解释
169 0
|
机器学习/深度学习 存储 数据采集
[Paddle2.0学习之第四步](下)词向量之CBOW
[Paddle2.0学习之第四步](下)词向量之CBOW
[Paddle2.0学习之第四步](下)词向量之CBOW
|
机器学习/深度学习 算法
随机装箱特征模型(Random Binning Feature Model)代码
在上述代码中,我们首先定义了一个名为RandomBinningFeatureModel的类,并在其__init__方法中接受一个参数num_bins,表示装箱的数量。然后,我们定义了一个名为fit_transform的方法,该方法接受原始输入数据x作为参数,并返回转换后的特征张量xb。
161 0
|
Python
numpy:矩阵的元素选取
numpy:矩阵的元素选取
83 0
|
机器学习/深度学习 算法 大数据
基于GCN和DGL实现的图上 node 分类, 值得一看!!!
基于GCN和DGL实现的图上 node 分类, 值得一看!!!
|
机器学习/深度学习 算法 Python
TF之LSTM:利用基于顺序的LSTM回归算法对DIY数据集sin曲线(蓝虚)预测cos(红实)(matplotlib动态演示)—daiding
TF之LSTM:利用基于顺序的LSTM回归算法对DIY数据集sin曲线(蓝虚)预测cos(红实)(matplotlib动态演示)—daiding
TF之LSTM:利用基于顺序的LSTM回归算法对DIY数据集sin曲线(蓝虚)预测cos(红实)(matplotlib动态演示)—daiding
Harry Potter and The Vector Spell-gym101669D(矩阵的秩-并查集)
题意: 给出一个0 1矩阵,这个矩阵中每一列有且只有两个1,求这个矩阵的秩 输入一行中1的数量x,然后后面x个数代表1出现的列位置 求出这个矩阵的秩 方法: 思维并查集 将每一列的两个1所在的行编号连一条边,然后求一下最小生成树就好 其实就是我们维护一个并查集,在这个并查集里面的所有点都可以两两组合形成一列,如果不在同一个集合里面,就会对答案+1
109 0
Harry Potter and The Vector Spell-gym101669D(矩阵的秩-并查集)
|
算法 Java C++
LeetCode(算法)- 50. Pow(x, n)
LeetCode(算法)- 50. Pow(x, n)
167 0
LeetCode(算法)- 50. Pow(x, n)