• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      電動(dòng)汽車充電路線優(yōu)化系統(tǒng)的研制

      2018-01-16 02:39:54曹以龍帥祿瑋涂少博
      關(guān)鍵詞:經(jīng)緯度字符串關(guān)鍵點(diǎn)

      曹以龍, 帥祿瑋, 涂少博

      (上海電力學(xué)院 電子與信息工程學(xué)院, 上海 200090)

      低碳出行逐漸成為社會(huì)的主流趨勢(shì),電動(dòng)汽車也越來(lái)越被大多數(shù)人所接受.隨之而來(lái)的就是電動(dòng)汽車的充電問(wèn)題,目前短期內(nèi)高性能的蓄電池技術(shù)難以取得突破,因此如何根據(jù)客戶的習(xí)慣和要求快速找到充電樁是目前面臨的主要問(wèn)題.傳統(tǒng)的做法是基于電動(dòng)汽車充電站預(yù)約網(wǎng)站給定的路線,客戶直接按照網(wǎng)站提供的路線方案行駛,最后需對(duì)客戶進(jìn)行滿意度調(diào)查,再進(jìn)行實(shí)地路況查詢,兩相結(jié)合進(jìn)行改進(jìn).這種做法耗費(fèi)大量的人力和物力,而且由于網(wǎng)頁(yè)端無(wú)法進(jìn)行實(shí)時(shí)導(dǎo)航,使得顧客只能按照固定路線行駛,無(wú)法滿足客戶的習(xí)慣和要求,沒有靈活的應(yīng)變能力.

      考慮到充電樁的固定性,更多的客戶會(huì)有自己更加方便和熟悉的行駛路線,可以繞過(guò)擁堵路段、避免突發(fā)情況、處理固定事物等.本設(shè)計(jì)在采集到的網(wǎng)站提供的原始方案與車輛實(shí)際行動(dòng)軌跡的基礎(chǔ)上,進(jìn)行大數(shù)據(jù)的存儲(chǔ)、比較、分析和挖掘;通過(guò)大量的方案對(duì)比與擬合,給出針對(duì)客戶本身的最優(yōu)化路徑方案,同時(shí)面向更多的客戶同步推薦,為更多的客戶提供最優(yōu)化路徑服務(wù).

      1 網(wǎng)站平臺(tái)信息獲取與傳遞

      網(wǎng)站整體采用LAMP環(huán)境配置.因?yàn)樵继峁┓桨甘怯砂俣鹊貓D智能提供,所以無(wú)法通過(guò)服務(wù)器后臺(tái)得到,但可以使用AJAX技術(shù)將百度地圖提交給服務(wù)器后臺(tái),利用PHP語(yǔ)言存入數(shù)據(jù)庫(kù)中.AJAX是一種常見的連接Web前端與后端的技術(shù),當(dāng)用戶預(yù)約充電樁后,Web前端會(huì)自動(dòng)生成導(dǎo)航路線,同時(shí)啟用AJAX提交數(shù)據(jù).

      首先根據(jù)百度地圖開發(fā)JS實(shí)例[1-2],得到百度地圖智能提供的行車路線,將路線上的主要經(jīng)緯度以字符串的形式連接并保存.部分代碼如下:

      ……

      var str_route_point="";

      var options = {

      renderOptions:{map:map,autoViewport:true},

      onSearchComplete:function(results){

      if (driving.getStatus() == BMAP_STATUS_SUCCESS){

      //獲取第一條方案

      var plan = results.getPlan(0);

      //獲取方案的駕車線路

      var route = plan.getRoute(0);

      //獲取每個(gè)關(guān)鍵步驟,并輸出到頁(yè)面

      var s =[];

      for(var j = 0;j < plan.getNumRoutes();j++){

      var route = plan.getRoute(j);

      for (var i = 0;i < route.getNumSteps();i++){

      var step = route.getStep(i);

      var p=step.getPosition();//得到關(guān)鍵點(diǎn)經(jīng)緯度:

      str_route_point=str_route_point+p.lng+"-"+p.lat+"|";//經(jīng)緯度字符串拼接

      }

      }

      }

      }

      };

      ……

      服務(wù)器后臺(tái)提供AJAX和GET方式得到包含著經(jīng)緯度信息的字符串,再將其拆分,還原數(shù)據(jù),存入MYSQL數(shù)據(jù)庫(kù)即可.

      2 嵌入式平臺(tái)信息獲取與傳遞

      采用ELEMENT生產(chǎn)的BEAGLEBONE BLACK(以下簡(jiǎn)稱“BBB”)作為嵌入式開發(fā)平臺(tái).BBB是ELEMENT生產(chǎn)的一款開源硬件,使用了TI生產(chǎn)的AM3358微處理器(ARM Cortex-A8內(nèi)核),512 MB的DDR3 SDRAM,4 GB的EMMC,數(shù)量眾多的GPIO接口,與信用卡同等尺寸的面積,十分適合作為車載平臺(tái)的開發(fā).

      在安裝了DEBIAN系統(tǒng)后,利用PYTHON編程語(yǔ)言[3]與開源庫(kù)ADAFRUIT_BBIO進(jìn)行開發(fā).在讀回接收到的北斗定位信息后,對(duì)數(shù)據(jù)進(jìn)行處理,獲取真實(shí)經(jīng)緯度[4-7],并插入SQLITE3本地?cái)?shù)據(jù)庫(kù)[8],在相同的時(shí)間間隔執(zhí)行類似操作,便可以獲取用戶駕駛軌跡.部分代碼如下:

      ……

      #function 用于經(jīng)緯度的轉(zhuǎn)換

      def numtrans(str_num):

      num=float(str_num)#將字符串轉(zhuǎn)換為浮點(diǎn)型

      num_deg=int(num/100)#提出度

      num_min=float(num-num_deg*100)#提出分

      num_after_point=num_min/60#將分轉(zhuǎn)換為度

      num_final=num_deg+num_after_point#

      returnnum_final#返回結(jié)果

      #function 用于處理接收到的字符串,提取出經(jīng)緯度信息

      def datapram(re_list):

      re_lng_status=re_list[lng_status]

      re_lng_num = re_list[lng_num]#提取出經(jīng)度

      re_lat_status = re_list[lat_status]

      re_lat_num = re_list[lat_num]#提取出緯度

      #將經(jīng)緯度拼接成列表

      data_list=[re_lng_status,numtrans(re_lng_num),re_lat_status,numtrans(re_lat_num)]

      returndata_list#返回列表

      #function 用于從接收到的字符串中提取有用信息

      def datatrans(re_str):

      try:

      re_first=re_str.index(‘$BDGGA’)#查詢“$BDGGA”的字符串,返回首位

      except:

      return -1#沒有則返回-1

      re_buf=re_str[re_first:]#字符串截取

      try:

      re_end= re_buf.index(‘ ’)# 查詢換行符位置,返回首位

      except:

      return -1#沒有則返回-1

      re_real=re_buf[:re_end];#字符串截取

      re_list = re_real.split(‘,’)#利用”,”分割字符串

      data_list = datapram(re_list)#信息進(jìn)一步提取

      returndata_list#返回列表

      ……

      REQUESTS是PYTHON語(yǔ)言中一個(gè)極具特色的庫(kù),相比較URLLIB,REQUESTS功能更加強(qiáng)大,支持GET,POST,PUT等方式,這里使用POST方式提交,將數(shù)據(jù)上傳至服務(wù)器.

      ……

      import requests

      r=requests.post(“http://xxxx.com/xxxx.php?get=”+str(routelist))

      ……

      3 路線優(yōu)化算法概述

      優(yōu)化算法的核心,是提取出兩條路徑的差異.對(duì)于任意一次預(yù)約而言,是提取出智能推薦路徑與用戶實(shí)際行駛路徑的差異;對(duì)于多條路徑而言,是提取出多條路徑之間的相同點(diǎn),作為推薦給新用戶的推薦點(diǎn).因此,對(duì)比兩條路徑的差異,得出路徑中相同與不同的點(diǎn)是算法的關(guān)鍵.

      傳統(tǒng)的對(duì)比算法,一般可以采用直接對(duì)比的方式,但由于路況與路線的差異,此方法往往不可行,因?yàn)椴煌穆肪€與路況,采集的用戶位置點(diǎn)的疏密度也會(huì)呈現(xiàn)較大差異.本文使用了一種較為簡(jiǎn)單的分區(qū)域線性擬合法,首先根據(jù)百度地圖API的說(shuō)明,使用GETSTEP().GETPOSITION()方法分別得到智能推薦路徑的關(guān)鍵點(diǎn)(一般是路線拐角處的經(jīng)緯度),再以兩兩關(guān)鍵點(diǎn)進(jìn)行區(qū)域劃分,常見的兩種情況如圖1所示.

      圖1 常見的兩種用戶行車路線

      圖1a表示的是情況1,在這一情況下,用戶完全沒有按照推薦路徑進(jìn)行行駛,矩形區(qū)域2,3,4中沒有找到用戶相應(yīng)的坐標(biāo)點(diǎn),判斷從區(qū)域1右上角的關(guān)鍵點(diǎn)到區(qū)域5左上角的關(guān)鍵點(diǎn)為用戶偏離推薦路徑的行駛路線,以此找尋到兩條路徑的差異.

      圖1b表示的是情況2,在這種情況往往更加普遍,用戶行駛路線沒有完全偏離推薦路線,而是在推薦路線附近(相鄰的道路)行駛,所以矩形區(qū)域2,3,4中可以找到用戶相應(yīng)的坐標(biāo)點(diǎn).在這一情況下應(yīng)對(duì)每一個(gè)區(qū)域中的兩條線段進(jìn)行線性擬合,對(duì)比擬合結(jié)果,可以計(jì)算出矩形區(qū)域2,3,4的擬合結(jié)果相差較大,與原始推薦路徑重合度較低,判斷從區(qū)域1右上角的關(guān)鍵點(diǎn)到區(qū)域5左上角的關(guān)鍵點(diǎn)為用戶偏離推薦路徑的行駛路線,以此找尋到兩條路徑的差異.

      同理,使用相同的方法也可以得到多條路徑之間的相同點(diǎn).指定任意一條路徑作為原始路徑,從原始路徑中隨機(jī)提取一定數(shù)量的點(diǎn)作為關(guān)鍵點(diǎn),重復(fù)上述算法即可.

      4 實(shí)驗(yàn)結(jié)果

      圖2為預(yù)約網(wǎng)站提供的導(dǎo)航路線和客戶的實(shí)際行駛路線示意.圖2中的實(shí)線部分為電動(dòng)汽車充電站預(yù)約網(wǎng)站提供的導(dǎo)航路線,虛線部分為客戶實(shí)際行駛的路線.通過(guò)北斗衛(wèi)星定位系統(tǒng)采集數(shù)據(jù)[9]并存入我們的數(shù)據(jù)庫(kù),方便以后的優(yōu)化使用.

      圖2 預(yù)約網(wǎng)站提供的導(dǎo)航路線和客戶實(shí)際行駛路線

      將網(wǎng)站提供的導(dǎo)航路線和北斗提供的重要的經(jīng)緯度信息提取出來(lái).

      圖3為經(jīng)過(guò)算法優(yōu)化的路線.比較圖2和圖3可以發(fā)現(xiàn),圖2中的虛線部分是大多數(shù)客戶行駛的路線,而經(jīng)過(guò)算法處理過(guò)后,將客戶導(dǎo)航的路線很好地優(yōu)化成了大多數(shù)客戶選擇的虛線部分行駛,而重合率較低的部分,則按照網(wǎng)站提供的路線行駛.

      圖3 優(yōu)化路線顯示

      5 結(jié) 語(yǔ)

      根據(jù)測(cè)試實(shí)驗(yàn)結(jié)果,本文所設(shè)計(jì)的電動(dòng)汽車智能充電路線優(yōu)化系統(tǒng),具有以下功能和特點(diǎn):一是能夠?qū)崿F(xiàn)原始路線與實(shí)際路線的大數(shù)據(jù)采集;二是經(jīng)過(guò)大量的數(shù)據(jù)分析和擬合,能夠智能地為客戶提供更好、更優(yōu)質(zhì)、更人性化的充電路線服

      務(wù);三是解決了傳統(tǒng)網(wǎng)頁(yè)端原始路線的弊端,實(shí)現(xiàn)了充電導(dǎo)航路線的靈活可變,大大提高了客戶的生活質(zhì)量;四是該系統(tǒng)采集的路線大數(shù)據(jù)信息能夠?yàn)槌潆娋W(wǎng)站提供更優(yōu)質(zhì)的路線導(dǎo)航,同時(shí)為汽車導(dǎo)航提供了一種新的參考.

      [1] 曾探.JavaScript設(shè)計(jì)模式與開發(fā)實(shí)踐[M].北京:人民郵電出版社,2015:125-232.

      [2] 廖雪峰.JavaScript教程[EB/OL].[2015-07-01].http://www.liaoxuefeng.com/.

      [3] 張良均.Python數(shù)據(jù)分析與挖掘?qū)崙?zhàn)[M].北京:機(jī)械工業(yè)出版社,2016:101-153.

      [4] 武漢大學(xué)衛(wèi)星導(dǎo)航定位技術(shù)研究中心.北斗衛(wèi)星導(dǎo)航系統(tǒng)的精密定軌與定位研究[J].科學(xué)與技術(shù)前沿論壇,2012,42(6):851-861.

      [5] 葛君偉,李恭偉,鄧思兵.位置預(yù)測(cè)在定位服務(wù)中的應(yīng)用研究[J].計(jì)算機(jī)應(yīng)用研究,2008(12):3 572-3 574.

      [6] 錢成越,薛原.基于北斗導(dǎo)航系統(tǒng)的移動(dòng)導(dǎo)航定位終端設(shè)計(jì)[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2010(6):165-167.

      [7] 易炯,張雷,王建宇,等.基于衛(wèi)星定位的位置服務(wù)分析及其應(yīng)用研究[J].世界科技研究與發(fā)展,2008,30(3):328-330.

      [8] 王飛飛.MySQL數(shù)據(jù)庫(kù)應(yīng)用從入門到精通[M].北京:中國(guó)鐵道出版社,2014:256-340.

      [9] 王茂勵(lì),郝鳳琦,郝慧娟,等.基于北斗導(dǎo)航的電動(dòng)汽車自動(dòng)駕駛系統(tǒng)及其控制方法[P].中國(guó),2015102457069.2015-05-15.

      猜你喜歡
      經(jīng)緯度字符串關(guān)鍵點(diǎn)
      聚焦金屬關(guān)鍵點(diǎn)
      肉兔育肥抓好七個(gè)關(guān)鍵點(diǎn)
      自制中學(xué)實(shí)驗(yàn)操作型經(jīng)緯測(cè)量?jī)x
      澳洲位移大,需調(diào)經(jīng)緯度
      一種利用太陽(yáng)影子定位的數(shù)學(xué)模型
      醫(yī)聯(lián)體要把握三個(gè)關(guān)鍵點(diǎn)
      一種新的基于對(duì)稱性的字符串相似性處理算法
      鎖定兩個(gè)關(guān)鍵點(diǎn)——我這樣教《送考》
      依據(jù)字符串匹配的中文分詞模型研究
      一種針對(duì)Java中字符串的內(nèi)存管理方案
      渑池县| 旌德县| 颍上县| 当阳市| 宜州市| 铜梁县| 广宗县| 鄂托克前旗| 本溪市| 乌兰浩特市| 于都县| 临城县| 通城县| 崇信县| 江阴市| 涟源市| 郓城县| 泗水县| 贵州省| 松滋市| 巩留县| 万山特区| 万宁市| 普格县| 马山县| 宁德市| 永胜县| 怀化市| 桐城市| 阜宁县| 星座| 池州市| 娱乐| 虞城县| 呼图壁县| 桦甸市| 长白| 托里县| 濮阳市| 宿州市| 深圳市|