Route searching and route guidance device

Abstract: According to the present invention, a plurality of first routes from a start point or a present position to a destination and neighbourhood, dropping point or passing point are searched based upon memorized map information previously. Furthermore, a plurality of second routes from a start point or a present position to a destination and neighbourhood, dropping point or passing point are searched based upon travelling locus data which was passed through before. These first routes and second routes are displayed at the same time. If these both routes are different from each other, the guide is executed based upon the second routes. The second routes searched based upon passing volume and passing date and time of roads or intersections of the travelling locus data. Therefore, a road or an intersection which has larger passing volume and passed more frequently is selected preferentially. Moreover, a road information, an intersection information or passing volume information is stored to the locus data. A route cost is decided based upon these information, the guided route is selected by the route costs.

Description: The present invention relates to a device for processing road data or intersection data and, more specifically, to a navigation device in which a route along which a moving body will travel is identified based upon map data, and the route that is identified is displayed to the operator. In particular, the invention relates to a navigation system which learns the route of travel. A conventional navigation device has been disclosed in, for example, Japanese Unexamined Patent Publication (Kokai) No. 194473/1986. According to this navigation device, a map of a desired area is displayed on a display unit based upon the stored map data. Conditions for identifying the facilities are shown on the screen of the display unit, the conditions for identification are selected step by step, and a facility desired by the user is set as a destination. The position of the thus set facility is indicated by a discrimination mark on the map screen. Based on the map data, furthermore, the navigation device searches a route from the present position to the facility that is set and displays the route on the screen. While the moving body is traveling along the route, the user is informed of various necessary data (road into which the moving body should enter, etc.) by voice or the like means. This navigation device searches the routes based upon a cost of the roads or intersections memorized previously, a route which a driver wishes sometimes does not agree a route which the navigation device offered. For example the driver wishes a road which the driver usually pass through as the route, but the navigation device sometimes offer different route from above the road. And the navigation device sometimes offer a route which the driver does not wish. Further even if a vehicle travels earlier by a short cut to a destination through a back lane, the navigation device sometimes offer a roundabout guide route by main (high) street. Patent Abstract of Japan vol. 096, no. 007, 31 July 1996 & JP 08 075492 relates to a route guidance device for a vehicle. An automatic position measuring part receives a GPS satellite, and determines the three-dimensional position of its own vehicle by calculating the distance from a standard position or goal with a distance sensor. A control unit compares its own vehicle position with the information such as the route traced on the past drive and the intermediate guide point from an intended route memory part, and the information from an external information memory part, judges whether the travelling route driven in the past is applicable or not, and preferentially displays the route and the intermediate guide point when it is applicable. Thus, a driver does not utilise the route and the intermediate guide point early set by the GPS, but also can utilise the route and the intermediate target point which can be known by his own drive experience. According to the present invention, at least one of a plurality of first routes from a start point or a present position to a destination and neighborhood, dropping point or passing point are searched based upon memorized map information previously. And at least one of a plurality of second routes from a start point or a present position to a destination and neighborhood, dropping point or passing point are searched based upon travelling locus data which was passed through before. These first routes and second routes are displayed at the same time. If these both routes are different each other, the guide is executed based upon the second routes. The second routes searched based upon passing volume and passing date and time of roads or intersections of the travelling locus data. Therefore a road or a intersection which has larger passing volume and passed more frequently is selected preferentially. Moreover, a road information, an intersection information or passing volume information is stored to the locus data. A route cost is decided based upon these information, the guided route is selected by the route cost. These first route and second route are also selected by user. These first route and second route are discriminated and displayed by different color or by a solid line and a dotted line. Therefore the user can discriminate easily the decided route and recommended route by travelling locus data. These second routes include roads which is not use to a guide, these first routes consist by only roads which is use to the guide, so that the second routes guide in detail and the second routes sometimes differ and discriminated from the first routes. A travelling time and a travelling distance are displayed with the first routes and second routes. When these routes are crossed each other, these routes are divided for every section from one cross point to another (next) cross point, and these section are selected. In this case, a travelling time and a travelling distance of the each section or the each route (each journey) are displayed together. The guide is executed by a plural journeys when the each journey are selected, and the guide is executed by one journey when only one journey is selected. Therefore the guide is executed combination of the journeys. Fig. 1 is a diagram illustrating the whole circuitry of a navigation device; Fig. 2 is a diagram illustrating the structure of data stored in a data region 38c of a data storage unit 37; Fig. 3 is a diagram illustrating a variety of kinds of data stored in a first RAM 5; Fig. 4 is a diagram illustrating the structure of a road data file F4; Fig. 5 is a diagram illustrating the structure of node data 55; Fig. 6 is a diagram illustrating the structure of link data 60; Fig. 7 is a diagram illustrating the structure of intersection data 65; Fig. 8 is a diagram illustrating the structure of data of a point list PT; Fig. 9 is a flow chart illustrating the whole processing; Fig. 10 is a flow chart of a processing for inputting a point; Fig. 11 is a flow chart of a processing of a traveling position; Fig. 12 is a flow chart of a processing for storing the locus; Fig. 13 is a flow chart of a processing for inputting a first intersection; Fig. 14 is a flow chart of a processing for inputting a second intersection; Fig. 15 is a flow chart of a processing for searching a route according to a first embodiment; Fig. 16 is a flow chart of a processing for searching peripheral links; Fig. 17 is a flow chart of a processing for calculating a link cost; Figs. 18 to 25 are flow charts of a processing for searching a route according to a second embodiment; Fig. 26 is a flow chart of a processing for deleting locus data according to the first embodiment; Fig. 27 is a flow chart of a processing for deleting locus data according to the second embodiment; Fig. 28 is a flow chart of a whole processing for deleting locus data according to a third embodiment; Fig. 29 is a flow chart of a whole processing for deleting locus data according to a fourth embodiment; Fig. 30 is a flow chart of a processing for deleting locus data according to the fourth embodiment; Fig. 31 is a flow chart of a processing for confirming the storage of locus data; Fig. 32 is a diagram illustrating a state where a curved road 70 is approximated by the links RB; Fig. 33 is a diagram illustrating a relative positional relationship between a road stored in the data storage unit 37 and the links stored in a locus data storage unit 40; Fig. 34 is a diagram illustrating the connections of the links and the nodes; Fig. 35 is a diagram illustrating locus routes identified by the processing for searching a route of the second embodiment; and Fig. 36 is a diagram illustrating a weighing function used in the processing for deleting locus data. PRO(S) .:PROCESSING(S), DIR.:DIRECTION, DIS(S).:DISTANCE(S), DISS.:DISTANCES, CLA.:CLASSIFICATION, POS.:POSITION, No(s).:NUMBER(S), IDN.:IDENTIFIED, IND.:INDICATE, INDD.:INDICATED, INDN.:INDICATION, INSC(S).:INTERSECTION(S), INSCG.:INTERSECTING, PRED.:PREDETERMINED, PAR.:PARTICULAR, DES(S).:DESTINATION, DET.:DETERMINE, DETG.:DETERMINING, DETD.:DETERMINED, DETN.:DETERMINATION, OVE.:OVERLAPPED, PER.:PERIPHERAL, DELG.:DELETING, DEL.:DELETE, DELD.:DELETED. 1. Summary of the Embodiments A guide route is searched based upon road data stored in a information storage unit 37 (step SJ1) , overlapped links are searched in the guide route (step SJ3). It is determined to be able to enter to the guide route and leave from searched overlapped link or not (step SJ11), a locus route from start place to the overlapped link in the guide route is searched (steps SJ5 to SJ21). A guide route is searched based upon road data in information storage unit 37, locus routes are searched based upon stored locus data, and these plural locus routes and the guide route are displayed (step SJ101). A flashing show is exchanged among these plural locus routes and the guide route by an operation of a cursor (step SJ105 and SJ107) . A route is decided by this selection (step SJ103). 2. Overall Circuitry Fig. 1 illustrates the overall circuitry of the navigation device. A central processor 1 controls the operation of the whole navigation device. The central processor 1 is provided with a CPU 2, a flash memory 3, a ROM 4, a first RAM 5, a second RAM 6, a sensor input interface 7, a communication interface 8, an image processor 9, a picture memory 10, a voice processor 11 and a clock 14. The CPU 2 and the devices through up to the clock 14 are connected together through a CPU local bus 15, and the data are exchanged among these devices. The flash memory 3 is storing a variety of processing programs corresponding to all flowcharts described later, executed by the CPU 2, and a variety of parameters required for the programs. these programs 38b are for example displaying control for information or guide control by voice, and these programs 38b are installed and copied from the information storage medium 37. The programs stored in the flash memory 3 are to control the display of data, to control voice guidance, etc. The RAM 5 is storing figure data to be displayed and various general-purpose data. The figure data to be displayed are used for route guidance and map showing on the display 33. The general-purpose data include voice waveforms recording synthetic or human voice for voice guidance, and are used for the navigation operation. The ROM 4 is storing data input from external units, a variety of parameters used for the arithmetic operation, the operated results and programs for navigation. The clock 14 comprises a counter, a battery backed-up RAM or EPROM, etc., and outputs time data. The sensor input interface 7 comprises an A/D converter circuit or a buffer circuit. The sensor input interface 7 receives analog or digital sensor data from the sensors 21 to 24 of a present position detector 20. The present position detector 20 includes an absolute direction sensor 21, a relative direction sensor 22, a distance sensor 23 and a vehicle speed sensor 24. The absolute direction sensor 21 is, for example, a terrestrial magnetism sensor and detects terrestrial magnetism. The absolute direction sensor 21 outputs data indicating a south-and-north direction which serves as the absolute direction. The relative direction sensor 22 is, for example, a steering angle sensor and detects the steering angle of the wheel based upon a gyroscope such as optical fiber gyroscope or piezo-electric vibration gyroscope. The relative direction sensor 22 outputs a relative angle of a direction of progress of the car with respect to the absolute direction detected by the absolute direction sensor 21. The distance sensor 23 comprises a counter or the like interlocked to, for example, an odometer. The distance sensor 23 outputs data indicating distance travelled by the car. The vehicle speed sensor 24 comprises a counter or the like connected to a speedometer. The vehicle speed sensor 24 outputs data that vary in proportion to the running speed of the car. An I/O data bus 28 is connected to the communication interface 8 of the central processor 1. To the I/O data bus 28 are connected the GPS receiver unit 25, beacon receiver unit 26 and data transmitter/receiver unit 27 of the present position detector 20. To the I/O data bus 28 are further connected a touch switch 34 and a printer 35 of the input/output unit 30, and a data storage unit 38. That is, a variety of data are exchanged between the external accessory equipment and the CPU local bus 15 through the communication interface 8. The present position detector 20 outputs data for detecting the present position of the car. In other words, the absolute direction sensor 21 detects the absolute direction. The relative direction sensor 22 detects the relative direction with respect to the absolute direction. Furthermore, the distance sensor 23 detects the distance travelled. The vehicle speed sensor 24 detects the running speed of the car. The GPS receiver unit 25 receives GPS (Global Positioning System) signals to detect position data such as longitude and latitude of the car. The GPS signals are microwaves transmitted from a plurality of satellites orbiting round the earth. Similarly, the beacon receiver unit 26 receives beacon from a data offering system such as VICS (Vehicle Information and Communication System) or the like, and the received data and the corrected data of GPS are output to the I/O data bus 28. The data transmitter/receiver unit 27 exchanges a variety of information related to the present position or the road conditions near the car relative to the bi-directional present position information offering system or the ATIS (advanced traffic information service), etc. by utilizing a cellular phone, FM multiplex signals or a telephone circuit. These informations are used as a detecting information of the car position or a support information of movement. The beacon receiver unit 26 and the data transmitter/receiver unit 27 may not be provided. The input/output device 30 comprises a display 33, a transparent touch panel 34, a printer 35 and a speaker 13. The display 33 displays guide data during the navigation operation. The touch panel 34 is constituted by a plurality of transparent touch switches that are arranged in the form of a matrix on a plane, and is adhered onto the screen of the display 33. By using the touch panel 34, data necessary for setting the destination, such as start point, destination, passing points, drop-in places, etc. are input to the navigation device. A printer 35 is used for printing a variety of data such as map and guide to facilities output through the communication interface 8. Information of various kinds is transmitted by voice to the user from the speaker 13. The printer 35 may be omitted. The display 33 may be a CRT, a liquid crystal display or a plasma display, and displays picture. Desirably, however, the liquid crystal display is preferred as a display 33 because it consumes small amounts of electric power, it can be seen highly clearly, and is light in weight. A picture memory 10 such as DRAM (dynamic RAM) or dual port DRAM is connected to the image processor 9 that is connected to the display 33. The picture data are written into the picture memory 10 by the image processor 9. Being controlled by the image processor 9, furthermore, the data are read out from the picture memory 10 and are displayed on the display 33. In accordance with a drawing command from the CPU 2, the image processor 9 converts map data and character data into picture data for display and writes them into the picture memory 10. At this moment, the peripheral picture on the screen is also formed and is written into the picture memory 10. Therefore, the peripheral picture can be readily displayed, too, upon scrolling. A voice processor 11 is connected to the speaker 13. The voice processor 11 is connected to the CPU 2 and to the ROM 5 through the CPU local bus 15. The voice waveform data for voice guidance read out from the ROM 5 by the CPU 2 are input to the voice processor 11. The voice waveform data are converted into analog signals by the voice processor 11, and are output from the speaker 13. The voice processor 11 and the image processor 9 comprise general-purpose DSPs (digital signal processors) or the like. The information storage unit 38 connected to the I/O data bus 28 contains the information storage medium 37 in which are stored, in a nonvolatile manner, disk management information 38a, programs 38b and data 38c such as road map data necessary for the navigation operation. The disk management information 38a is related data or programs stored in the information storage medium 37, for example version information of the programs 38b. The information storage unit 38 is provided with a data transmitter/receiver 39 for reading data written into the information storage medium 37 and outputting them onto the I/O data bus 28. The information storage medium 37 may be an optical memory (CD-ROM, etc.), a semiconductor memory (IC memory, card, etc.), or a magnetic memory (opto-magnetic disk, hard disk, floppy disk, etc.) . The data transmitter/receiver 39 is equipped with a data pickup adapted to the recording medium so as to be adapted to a change in the data recording medium. When, for example, the recording medium is a hard disk, a core head is provided. Fig. 2 is a diagram illustrating the contents stored in the information storage medium 37. The information storage medium 37 is storing disk management data. The data include those data related to programs, such as version data of the programs. In the information storage medium 37 are stored navigation processing programs and programs related to other processings executed by the CPU 2 depending upon the flow chart that will be described later as the programs 38b. These programs 38b are read out from the information storage medium 37 (external storage means/unit), and are written into the flash memory 3 (internal storage means/medium) and are stored therein (installed, transferred/copied). The installation (transfer/copy) is automatically executed when the information storage medium 37 is set onto the navigation device, or is automatically executed when the power source circuit of the navigation device is closed, or is executed according to the operation by the operator. The information storage medium 37 can be replaced by another information storage medium 37. Thus, the program is replaced by the new one or by the latest one. Due to this replacement, the latest navigation system is offered. The information storage medium 37 stores map data, intersection data, node data, road data, photographic data, destination data, guide point data, detailed destination data, destination read data, house shape data, as well as other data and programs that are necessary for the navigation operation as the data 38c. In accordance with these programs, the navigation operation is executed by using the road map data stored in the information storage medium 37. The program for navigation is read by the data transmitter/receiver 39 from the information storage medium 37, and is installed, copied and written into the flash memory 3 or the RAM 4. Other data include indication guide data, voice guidance data, picture data showing simple guide route, etc. The information storage medium 37 stores map data of a plurality of reduced scales. The information storage medium 37, however, may store map data of the largest scale. When the map of a large scale is to be shown on the display 33, the map data stored in the information storage medium 37 is shown on a reduced scale. In this case, not only the lengths of the roads, etc. are shortened but also signs and data representing buildings and facilities are reduced. The locus data storage unit 40 is connected to an I/O data bus 28. In the storage unit 40 are stored locus data that are formed by a program in compliance with a flow chart that will be described later. The data stored in the locus data storage unit 40 can be rewritten. Even when the electric power supplied to the storage unit 40 is interrupted, the data stored therein are not erased. The locus data storage unit 40 may comprise, for example, an IC memory card, a hard disk, a rewritable optical disk or a nonvolatile memory such as EPROM. The locus data include node data 55, link data 60 and intersection data 65 of the roads and intersections along which the vehicle has traveled, and the roads along which the vehicle has traveled are shown on the map. The navigation device searches a new route by utilizing the locus data. 3. Data File in a Data Region 38c of the Data Storage Unit 37. Fig. 2 is a diagram illustrating the contents of data files stored in the data region 38c of the data storage unit 37. A map data file F1 stores the map data such as road maps of the whole of the country, road maps of a district, and house maps. An intersection data file F2 stores the coordinates of geographical positions of the intersections and data related to the intersections. A node data file F3 stores geographical coordinate data of the nodes utilized for searching a route on the map. A road data file F4 stores data related to the positions and kinds of the roads, number of the lanes, connections among the roads, etc. A photographic data file F5 stores photographic image data of places where visual display is required such as of various facilities, sightseeing spots, major intersections, etc. A destination data file F6 stores data related to the positions and names of various facilities that may be destinations. The facilities may be sightseeing spots, buildings, sites, companies and offices listed in a telephone book. A guide poinc data file F7 stores guide data of points that require guidance. The points may be the contents of information boards and branch points. A detailed destination data file F8 stores detailed data related to destinations stored in the destination data file F6. A road name data file F9 stores name data of principal roads among the roads stored in the road data file F4. A branch point name data file F10 stores name data of principal branch points. An address data file F11 stores list data for identifying, from the addresses, the destinations stored in the destination data file F6. A file F12 of a list of toll numbers and local office numbers stores list data of toll numbers and local office numbers only of the destinations stored in the destination data file F6. A registered telephone number file F13 stores telephone number data of clients input by the user. A landmark data file F14 stores data related to positions and names of points that serve as marks while driving and of the places that should be remembered input by the user. The point data file F15 stores detailed data of landmark points stored in the landmark data file F14. A facility data file F16 stores data related to positions and descriptions of destinations such as gas stations, drug stores, parking lots and positions of objective places where the driver may wish to drop in, in addition to the destinations. 4. Contents of Data in the First RAM 5. Fig. 3 illustrates some of a group of data stored in the first RAM 5. The present position data MP represent the present position of the vehicle and are detected by a present position detector 20. The absolute direction data ZD represents the south-north direction relying upon the terrestrial magnetism and are found based upon the data from an absolute direction sensor 21. The relative direction angle data D represent an angle of the direction in which the vehicle is traveling with respect to the absolute position data ZD and are found based upon the data from a relative direction sensor 22. The traveled distance data ML represent a distance traveled by the vehicle and are found based on the data from a distance sensor 23. The present position data PI are related to the present position and are input from a beacon receiver 26 or a data transmitter-receiver 27. The VICS data VD and ATIS data AD are input from the beacon receiver 26 or the data transmitter-receiver 27. The VICS data VD are used for correcting an error in the position of the vehicle detected by a GPS receiver 25. The ATIS data AD are used for determining traffic regulations and traffic jamming in the areas. When the map data are exchanged between the navigation device and the area monitoring center relying upon the VICS data VD or the ATIS data AD, the guide route may be identified by using such data. The inputted destination data TP are related to the coordinate positions and names of the destinations and are input by the user. The start point of route data SP are map coordinate data of a point from where the navigation operation starts. The end point of route data ED are map coordinate data of a point where the navigation operation ends. The start point of route data SP utilize node coordinates on a guide route closest to the present position of the vehicle or to the point of departure. This is because, the present position of the vehicle may be on a site such as golf course or parking lot, but may not necessarily be on the guide route. Similarly, the end point of route data ED utilize node coordinates on a guide route closest to the inputted destination data TP. This is because the coordinates of the inputted destination data TP may not often be on the guide route. The guide route data MW stored in the first RAM 5 represent an optimum route or a recommended route up to the destination, and are found by a processing for searching a route that will be described later. Specific road numbers are attached to the individual roads in the road map stored in the data region 38c of the data storage unit 37. The guide route data MW are constituted by the road numbers or by the link numbers that will be described later of from the start point of route data SP to the end point of route data ED. The position data PQ1, PQ2 represent coordinate data of a geographical position of the vehicle and absolute time of when the position of the vehicle is detected, that are used in the programs (flow charts) that will be described later. The angle change data RZ represent an absolute value of an increment or a decrement of the relative direction angle data D. The start point cost VA, end point cost VB, link travel cost VL and intersection travel cost VC are general-purpose data temporarily stored in a processing for searching peripheral links that will be described later. Here, the cost represents the time or labor at or with which the vehicle passes through the links or the intersections in the stored locus data, and includes a weighing value that indicates the frequency of use. The cost decreases with an increase in the frequency of passage. The links or the intersections are selected depending upon the cost values to constitute a guide route. The locus routes KT(S), KR(P) and KU(H) represent a course of the guide routes, and are constituted by a plurality of link numbers. The route distances KTL(S), KRL(S) and KUL(S) represent distances of the locus routes KT(S), KR(P) and KU(H). The calculation register UW temporarily stores the results of calculation of the route distances. The evaluated value KCS(GM) is a value for electing locus data that will be deleted in a processing for deleting locus data that will be described later. The word "locus" includes mark or impression etc. in this specification. 5. Road Data. Fig. 4 is a diagram illustrating some of road data in the road data file F4 stored in the data storage unit 37. The road data file F4 inclues data related to all roads wider than a predetermined width in the whole areas stored in the map data file. When the number of roads contained in the road data file F4 is n, the road data related to the roads of a number n are stored in the data storage unit 37. Each road data is constituted by road number data, object-of-guide flag, road attribute data, shape data, guide data and length data. The road number data are discrimination numbers attached to all roads contained in the map data, the roads being sectionalized by the branch points. The object-of-guide flag becomes "1" in the case of a guide road and becomes "0" in the case of a non-guide road. The guide road is the one wider than a predetermined width, such as a main trunk road or a general road, and may be selected as a route. The non-guide road is a road narrower than a predetermined width, such as footpath or lane, and is seldom selected as a route. The road attribute data represent attribute of road such as elevated road, underpass, speedway or toll road. The shape data represent the shape of a road and are constituted by coordinate data of start points and end points of the roads, and of the nodes between the start point and the end point. The guide data are constituted by intersection name data, caution point data, road name data, road name voice data and connection data. When the end point of a road is an intersection, the intersection name data represent the name of the intersection. The caution point data represent caution points on the road such as railway crossing, inlet of a tunnel, exit of the tunnel, point where the width of the road decreases, etc. The road name voice data are voice data of road names, and are used for a guidance by voice. The connection data represent a road that connects to the end point of the above-mentioned road, and are constituted by a number k of connections and data of the connections. The data for each connection are constituted by connection road number data, connection name data, connection name voice data, connection direction data and travel guide data. The connection road number data represent a road number of a connection. The connection name data represent a name of a road that is connected. The connection name voice data store voice data for guiding the name of connection by voice. The connection direction data represent the direction in which the road of connection is headed. The travel guide data include guide data for guiding the driver to enter into the right lane or into the left lane on the road to proceed to a road that is connected, or to travel on the center lane. The length data represent a length from the start point to the end point of a road, lengths from the start point to the nodes, and lengths among the nodes. 6. Node Data. Fig. 5 is a diagram illustrating node data 55 stored in the locus data storage unit 40. The node data 55 have the same constitution as the shape data of the road data file F4, and represent junction points by approximating the roads on a map by straight lines, the junction points being successively formed on the roads traveled by the vehicle. Fig. 32 illustrates a relationship among the nodes, straight links connecting the nodes and a practical road on a map. The road 70 shown in Fig. 32 is curved having a radius of curvature RSC. The road 70 is approximated by a plurality of straight lines connected by folded lines. The straight lines are links RB1, RB2, ---, and the connection points among the links are nodes NOD12 , NOD14, ---. Therefore, the practical road 70 shown in Fig. 32 is expressed by locus data, i.e., links RB1, RB2, RB3, ---. The links RB1, RB2, RB3, --- are connected together by the nodes NOD12, NOD14, ---. The data related to the nodes are collected in the node data 55 stored in the locus data storage unit 40, and the number nn of nodes represent the number of nodes of the node data 55. The node data 55 are constituted by a node number NB, east longitude coordinates NPE, north latitude coordinates NPN and an intersection number NPB. The node number NB distinguishes the node. The east longitude coordinates NPE and the north latitude coordinates NPN represent geographical coordinates of the node. The coordinate values of the node data are used together with the map stored in the data storage unit 37 at the time when the roads are displayed on the screen. The links of the roads are connected by the nodes. Therefore, if the coordinate positions of the nodes are specified, the roads can be approximated by the links on the map. The intersection numbers NPB are the same as the intersection numbers NPB (see Fig. 7) in the intersection data 65 that will be described later. Therefore, when the node is not on the intersection, the intersection number NPB is "0" indicating that there is no intersection number. When the intersection number NPB is other than "0", on the other hand, it means that the node is on the intersection where three or more links are connected together. When the practical road 70 is approximated by a plurality of straight lines, the lengths of the links are determined as described below. Presuming that the vehicle is traveling along the road 70, when a change in the angle of direction of travel of the vehicle becomes greater than a predetermined value, a new node and a new link are formed. That is, the node NOD12 is so formed that an angle RM1 subtended by the two neighboring links RB1 and RB2 remains the same at all times. Therefore, the angle RM2 between the link RB2 and the link RB3 is the same as the angle RM1. When a curved road is represented by a plurality of links as described above, the links and the nodes are so formed that the angle subtended by the neighboring links remains the same at all times. The links may have the same length at all times. In this case, a curved road is approximated by using a plurality of links having the same length. 7. Link Data. Fig. 6 is a diagram illustrating link data 60 stored in the locus data storage unit 40. The link data 60 are constituted by a link number RB, a start point node number SNB, an end point node number ENB, number of times SEK of travel in the start point → end point direction, number of times ESK of travel in the end point → start point direction, number of times YT of input by the user, length LR of link, average vehicle speed AS, data SND of traveled date and hour, road discrimination data LD, road number MB in the map data, start position MSP, and end position MEP on the road in the map data. The link number NL represents the number of links stored in the locus data storage unit 40. The link number RB discriminates the links from each other. The start point node number SNB is a node number connected to an end of the link, i.e., a node number NB of node data 55. Based on the node number NB, the east longitude coordinate NPE, north latitude coordinate NPN and intersection number NPB are read. The end point node number ENB is a node number NB of node data 55 connected to the other end of the link. There is no particular limitation concerning which one of the nodes at both ends of the link is the start point or the end point. Therefore, either one of the ends of the link may be determined to be a start point node and the other end may be determined to be an end point node. The number of times SEK of travel from the start point to end point direction is indicated by the cumulative number of times the vehicle has traveled the link from the above-mentioned conveniently determined start point node number SNB to the end point node number ENB. Similarly, the number of times ESK of travel from the end point to start point direction is indicated by the cumulative number of times the vehicle has traveled the link from the end point node number ENB to the start point node number SNB. The number of times YT of input by the user is a cumulative number of times the link is used as a guide route to the destination. Based upon the number of times YT of input, a particular link is preferentially identified in a process for searching a route that will be described later. The length LR of the link represents a geographical length of the link, i.e., represents the distance of the link. The average vehicle speed AS represents an average speed of the vehicle that has traveled the link, and is calculated based upon the data from the vehicle speed sensor 24. When the vehicle is traveling the link a plural number of times, the average vehicle speed AS is an average value of the plural number of times. The average vehicle speed AS is found by dividing the distance of the link by the time required for passing through the link. The data SND of traveled date and hour are related to all dates and hours the vehicle has traveled the link. The road discrimination data LD represent the kind of road of the link that is formed and are detected from the road data file F4 based on the road number MB that will be described later. The kind includes data for discriminating roads used as a guide route, roads (narrow roads) that are not used as a guide route, or roads that have not been stored. The roads that have not been stored are those that have not been stored in the data storage unit 37, and may include a road that is newly constructed, a road that is expanded and the like roads. The road number MB in the map data is specific to a road stored in the data storage unit 37. Based upon the road number MB, it is determined whether the road including the link has been stored in the data storage unit 37 or not. The start position MSP represents a geographical position of the start point node of the link that corresponds to a start point coordinate of road data specified by the road number MB. Similarly, the end position MEP represents a geographical position of the end point node of the link that corresponds to an end point coordinate of road data specified by the road number MB. The start position MSP and the end position MEP are related to, for example, geographic distances. Fig. 33 illustrates a relationship between the start position MSP and the end position MEP. The road 72 shown in Fig. 33 represents a road stored in the data storage unit 37. Part of the road 72 corresponds to the link RB4. A distance between the start point node NOD 18 and the start point 74 of the road 72 is a start position MSP. A distance between the end point node NOD 20 and the end point 76 of the road 72 is an end position MEP. Relying upon the start position MSP and the end position MEP, a relative position of the link on the road of the road number MB is determined. 8. Intersection Data. Fig. 7 is a diagram illustrating the structure of intersection data 65 stored in the locus data storage unit 40. The number nc of intersections represents the number of intersections stored in the locus data storage unit 40. Specific intersection numbers NPB are attached to the intersections. The intersection numbers NPB are in agreement with the intersection numbers NPB of node data 55. The intersection data 65 represent road data or link data that branch or join together in the node data 55. The intersection data are constituted by the combination of link numbers IRB of the links entering the intersection and link numbers ORB of the links leaving to other nodes. This clarifies a relationship between a link entering the intersection and a link leaving from the intersection when the vehicle has entered the intersection through the entering link. Fig. 34 illustrates a relationship between the links and the nodes. A node NOD1 shown in Fig. 34 is an intersection, and the links IRB6, IRB7 and IRB8 enter the intersection. It is now presumed that the vehicle enters the intersection node NOD1 from the entering link IRB8, and there are only the leaving links ORB6 and ORB7 through which the vehicle is allowed to leave through the intersection node NOD1. In this case, the number of leaving links NOUT = "2" is stored in the intersection data 65. Therefore, the vehicle entering the intersection node NOD1 from the entering link IRB8 is not allowed to turn to the right Thus, the leaving link numbers through which the vehicle entering from the entering links is allowed to leave, are stored for each of the intersections. The number NIM of entering links in the intersection data 65 represents the number of links through which the vehicle is allowed to enter the intersection. The number NIM of links entering the intersection node NOD1 shown in Fig. 34 is. "3". The number NOUT of leaving links represents the number of links through which the vehicle entering through a link is allowed to leave. The leaving link number ORB represents a link number through which the vehicle entering the intersection node from an entering link IRB is allowed to leave. The number NVC of times of travel from an entering link to a leaving link is a cumulative number of times of travel from a certain entering link IRB to any leaving link ORB. For example, the cumulative number of times of travel from the entering link IRB8 to the leaving link ORB8 of Fig. 34 is the number NVC of times of travel. An average time TSU for passing is an average time for passing the intersection NOD1 of the vehicle that runs from, for example, the entering link IRB8 into the leaving link ORB7. The average time TSU for passing is found as described below. The relative direction angle data D1 are found when the vehicle is traveling through the entering link IRB8. The relative direction angle data D2 are similarly found when the vehicle is traveling through the leaving link ORB7. As the vehicle passes through the intersection node NOD1, the relative direction sensor 22 successively monitors the change in the relative direction angle data D. Then, the time required by the relative direction angle data D to change from the relative direction angle data D1 to the relative direction angle data D2 is measured. The time required for changing the relative direction angle data D is the time required by the vehicle to pass from the entering link IRB8 to the leaving link ORB7 through the intersection node NOD1. The time required for passing through the intersection node NOD1 is measured for every passage through the intersection node NOD1. The total average inclusive of the past times for passage is found at all times, and is stored as the average time TSU for passing. The traveled date-and-hour data store all dates and hours of passing from the entering link to the leaving link. The average time TSU for passing may be found as described below. For example, the times for traveling through the links are subtracted from the whole time required for the vehicle to run from the start point node NOD5 of the entering link IRB8 to the end point node NOD4 of the leaving link ORB7. The times for traveling through the links are measured at the time of calculating the average vehicle speed AS. As described above, the intersection data 65 are constituted by the combination of the link numbers IRB entering the intersection and the link numbers ORB leaving from the entering links through the intersection node. Therefore, a reference to the intersection data 65 makes it possible to determine the directions for entering the intersection node and the directions for leaving therefrom. These information (data) are used in processing for searching peripheral links described later. 9. Point List PT. Fig. 8 is a diagram illustrating the structure of a point list 66 stored in the first RAM5 or in the locus data storage unit 40. The point list 66 is used for a processing for deleting locus data that will be described later, and is constituted by a plurality of points PT. Each point PT represents a geographical position where an ignition key of the vehicle is turned on/off or a geographical position input by the user. The point PT has a point number 67 and is constituted by a range of storage RP, the east longitude coordinate PTE, the north latitude coordinate PTN and the number of times HTP of recognizing the position. Examples of the point PT include a parking lot near the company, garage of the user's home, the user's favorite shops, etc. The range of storage RP is used for a processing for confirming the storage of locus data (step SA21) that will be described later. Concretely speaking, the range of storage RP is a threshold value of distance between any geographical position and a point PT, and is used for determining the distance. The east longitude coordinate PTE and the north latitude coordinate PTN represent a relative position of the point PT on the map shown on the display 33. The number of times HTP of recognizing the position represents the number of times the ignition key is turned on/off or is input at each point PT. 10. Overall Processing. Fig. 9 is a flow chart of the overall processing executed by a CPU 2 in the navigation device according to the present invention. The processing starts upon closing the power source circuit and ends upon breaking the power source circuit. The power source is turned on or off as the power source of the navigation device is turned on or off, or as the engine start key (ignition switch) of the vehicle is turned on or off. First, the processing for initialization is executed (step SA1). In this processing, a program for navigation is read out from the data region 38c of the data storage unit 37, copied into a flash memory 3, and is executed. The CPU 2 clears the geheral-purpdse storage areas in the RAMs, such as work memory of a first RAM 5 and an image memory 10. Then, a processing for detecting the present position (step SA3) and the subsequent processings are executed. The processing for detecting the present position (step SA3) detects the geographical coordinates (latitude, longitude, altitude, etc.) of an overland moving body, i.e., of a vehicle mounting the navigation device. That is, a GPS receiver 25 receives signals from a plurality of satellites orbiting around the earth, detects coordinate positions of the satellites, times at which the electromagnetic waves are emitted from the satellites and the time at which the electromagnetic waves are received by the GPS receiver 25, and calculates the distances to the satellites. The coordinate position of the vehicle is calculated from the distances to the satellites, to detect the present position of the vehicle. The thus found geographical coordinate data of the vehicle are stored in the first RAM 5 as present position data MP. The present position data MP are often corrected by the data input through a beacon receiver 26 or a data transmitter-receiver 27. In the processing for detecting the present position (step SA3), furthermore, the absolute direction data ZD, relative direction angle data D and the traveled distance data ML are simultaneously found by using an absolute direction sensor 21, a relative direction sensor 22 and a distance sensor 23. The absolute direction data ZD, relative direction angle data D and traveled distance data ML are operated to determine the position of the vehicle. The thus determined position of the vehicle is collated with map data stored in a data region 38c of a data storage unit 37, and the present position on the map screen is corrected and is indicated more correctly. Therefore, the present position of the vehicle is correctly indicated even when the GPS signals are not received such as traveling through a tunnel. The data representing the present position obtained by the processing for detecting the present position at the step SA3 are stored in the first RAM 5 as position data PQ1 (step SA5). The position data PQ1 include time data; i.e., the position data of the vehicle and the time data are stored being related to each other. Then, a point input processing is executed (step SA6), and it is determined whether the present position of the vehicle corresponds to a point PT in the point list 66 or not. Thereafter, a route search processing is executed (step SA7) to set a destination (step SF1 in Fig. 15) and to search the links for constituting a route (step SF9). In setting the destination, the geographical coordinates of the destination desired by the user are stored as inputted destination data TP. For example, a coordinate position is specified by the user on a road map or on a house map shown on a display 33. The destination is selected by operator from a list of destinations shown on the display 33. Thereafter, a central processing unit 1 stores the data related to the geographical coordinates of the destination in the first RAM 5 as inputted destination data TP. In the route search processing, furthermore, an optimum route is identified from the start point of guide route SP to the end point of guide route ED. The optimum route referred to here is the one along which the user can arrive at the destination within the shortest period of time or traveling the shortest distance, or is the one which includes the roads that were preferentially used by the user in the past. The optimum route may be the one which uses speedways enabling the user to arrive at the destination within the shortest period of time or traveling the shortest distance, or is the one which preferentially uses wide roads such as national highways. The processing for searching a route (step SA7) will be described later. Thereafter, the present position of the vehicle is detected again by a present position detector 20 (step SA9) . It is then determined at the step SA7 whether the vehicle has arrived at the destination of the route that is identified from the present position (step SA11). A processing of a traveling position (step SA15) executes various processings based upon the amount of displacement between the position of the vehicle detected at the step SA3 and the latest position of the vehicle detected at the step SA9. In the processing of a traveling position, a relative direction angle of the vehicle is measured by the relative direction sensor 22 and is used in a processing of a step SB5 of Fig. 11 that will be described later. At the step SA11, it is also determined whether the object is changed while the vehicle is traveling along the guide route. When the vehicle has arrived at the destination or when the destination is changed at the step SA11, the processing is started again from the step SA1. When the vehicle has not arrived at the destination or when the destination is not changed, however, a next processing for guiding and displaying the route (step SA13) is executed. In the processing for guiding and displaying the route, the guide route identified by the above-mentioned processing for searching a route is shown on the display 33 with the present position of the vehicle as a center. The guide route is displayed on the map in a manner that it can be easily discriminated. For example, the guide route and the road other than the guide route are indicated in different colors, so that the two can be discriminated from each other. Furthermore, guide information is sounded by voice from a speaker 13 or is shown on the display 33 at all times, so that the vehicle is allowed to travel favorably along the guide route. The image data of the guide route are the road map data around the present position or are the house map data around the present position stored in the data region 38c of the data storage unit 37. The road map data and the house map data are changed over depending upon the conditions such as a distance from the present position to a guide point (destination, place to be dropped in or intersection), a traveling speed of the vehicle, the size of the area that can be displayed, or the switching operation by the user. Near the guide point (destination, place to be dropped in or intersection), the map is shown on an enlarged scale on the display 33. Instead of displaying the road map, a minimum amount of necessary data only may be displayed, such as the guide route, direction of the destination or the place to be dropped in and the present position, but omitting geographical data. After the processing for guiding and displaying the route, there are successively executed the processing of a traveling position (step SA15), other processing (step SA17), a processing for deleting locus data (step SA19) and a processing for confirming the storage of locus data (step SA21). In the processing of a traveling position (step SA15), new data are added to the locus data stored in the locus data storage unit 40 or the locus data are updated. The locus data that are to be newly stored are temporarily stored in the second RAM 6. Here, the locus data are those related to the links, nodes and intersections through which the vehicle has traveled. The processing of a traveling position (step SA15) will be described later. In the other processing (step SA17), it is, for example, determined whether an instruction for changing the destination is input by the switching operation by the user. In the processing for detecting locus data (step SA19), the following processing is executed. For example, the amount of new locus data stored in the locus data storage unit 40 is calculated or an increase in the amount of the locus data to be updated is calculated. It is then determined whether the amount of increase can be stored in the locus data storage unit 40 or not and whether the free memory region of the locus data storage unit 40 is larger than an increase in the amount of data. When the memory capacity is small, predetermined locus data are selectively deleted depending upon the deletion conditions that will be described later. Thereafter, the processing for confirming the storage of locus data (step SA21) is executed. In the processing for confirming the storage of locus data, new locus data temporarily stored in the second RAM 6 are stored in the locus data storage unit 40. Then, the processing is repeated starting from the processing for detecting the present position (step SA9). When the vehicle has arrived at the destination, a series of processings are executed again from the step of initialization (step SA1). When the present traveling position of the vehicle has deviated from the guide route, an optimum route from the present position that is deviated to the end point of guide route is automatically identified again by the processing for searching a route of step SA7. 11. Processing for Inputting a Point. Fig. 10 is a flow chart of a processing for inputting a point of Fig. 9. First, a coordinate value of position data PQ1 determined at the steps SA3, SA5 of Fig. 9 is compared with coordinate values of points PT of the point list 66 (step SM1). When a corresponding point PT exists at the coordinate position represented by the position data PQ1 (step SM3), the coordinate position of the position data PQ has been input already to the point list 66. However, when there is no point PT that corresponds to the coordinate position of the position data PQ1, a point represented by the coordinate value of position data PQ1 is input to the point list 66 as a new point PT (step SM5). In the comparison of the step SM1, straight distances on the map are calculated between the coordinate of the position data PQ1 and the coordinates of points PT of the point list 66. When the straight distance is within a predetermined error range, the point represented by the position data PQ1 has been stored in the point list 66. When the position data PQ1 has been input to the point list 66 at the step SM3, the number of times HTP of recognizing the position of the point PT is increased by "1" (step SM7). Next, it is determined whether the user is requesting to input a new point to the point list 66 or not (step SM9). This request of input is generated by the operation of a touch switch 34. On a map shown on the display 33, for example, a cursor is moved to specify a particular point. The specified cursor position is input to the point list 66 as a requested point PT (step SM11). When the new point is input or when the user is not requesting to input the new point, a next step SM13 is executed. At the step SM13, it is determined whether the user is requesting to increase or decrease the numerical values of a range for storing a desired point PT. In the processing for confirming the storage of locus data (step SA21), the range of storage RP is used as a condition for determining whether the locus data such as links and nodes be stored in the locus data storage unit 40 or not. That is, only those locus data within a circle of the radius RP from a point PT are stored in the locus data storage unit 40. The range of storage RP is used even in the processing for deleting locus data (step SA19) of the third embodiment. Detailed contents of these steps SA19 and SA21 will be described later. Therefore, the amount of locus data stored in the locus data storage unit 40 increases or decreases depending upon an increase or decrease of the value of the range of storage RP. When it is requested to change the value of the range of storage RP (step SM13), a circular area on a map surrounded by the radius of the range of storage RP is shown on the display 33 with the point PT as a center (step SM15). It is then determined again whether the value of the range RP of storage is increased or decreased (step SM19). When it is requested to increase or decrease the range of storage RP (step SM19), the circular area of the range of storage RP of a newly set value is showed again on the display 33 (step SM15). The amount for increasing or decreasing the value of the range of storage RP is specified by the touch switch 34. For example, when the touch switch 34 for increasing the value is depressed, the value of the range of storage RP increases. When the touch switch 34 for decreasing the value is depressed, the value of the range of storage RP decreases. When it is not requested to increase or decrease the value of the range of storage RP (step SM13) and when the user does not set any value for the range of storage RP (step SM17), a value determined depending upon the number of times HTP of recognizing the position is set as the range of storage RP (step SM21). That is, the value of the range of storage RP increases with an increase in the number of times HTP of recognizing the position. Conversely, the value of the range of storage RP decreases with a decrease in the number of times HTP of recognizing the position. When the number of times HTP of recognizing the position is large, it means that the ignition key of the vehicle is turned on and off frequently at a position PT having the number of times HTP of recognizing the position. This means that the user goes to the point PT highly frequently, and the vicinities of the point PT are the areas where the user travels frequently. Therefore, a value corresponding to the number of times HTP of recognizing the position is set to the range of storage RP so that the locus data around the point PT having an increased number of times HTP of recognizing the position can be stored in the locus data storage unit 40. Thus, when a value of the range of storage RP has not at all been specified by the user, a numerical value determined depending upon the number of times HTP of recognizing the position is automatically set to the scope of storage RP (step SM21). Conversely, when a value of the range of storage RP has been specified by the user, this value is maintained and the processing at the step SM21 is neglected. Furthermore, when a value of the range of storage RP is once set, this value is permanently maintained unless it is changed by the user. Thus, when a value desired by the user is set or a value is set depending upon the number of times HTP of recognizing the position as the range of storage RP, the routine returns back to the overall processing of Fig. 9 (step SM23). 12. Processing of a Traveling Position. In the processing of a traveling position as described above, the locus of travel of the vehicle is detected and is stored in the locus data storage unit 40 as locus data. However, the updated locus data or the new locus data are once stored in the second RAM 6 and are stored in the locus data storage unit 40 (step SA21) after the size of the free memory region of the locus data storage unit 40 is confirmed (step SA19). Fig. 11 is a flow chart of the processing of a traveling position. It is, first, determined whether an increment of the traveling time is larger than a predetermined value or not (step SB1). The amount of change in the traveling time corresponds to the passage of time from the absolute time at the position of the vehicle stored in the position data PQ1 at the steps SA3, SA5 of Fig. 9 to the present absolute time. The passage of time is measured by a clock 14 or by a clock contained in the GPS receiver 25. When the increment of the traveling time does not exceed a predetermined value, the processings after a step SB5 are neglected, and the routine returns back to the overall processing of Fig. 9. When the increment of the traveling time becomes greater than a predetermined value, however, the next step SB5 is executed. In the processing of a present position at the steps SA3, SA9 of Fig. 9, a relative direction angle of the vehicle is measured by the relative direction sensor 22. Then, the relative direction angle of the vehicle at a moment of when the data related to the position of the vehicle are stored in the position data PQ1 is compared with the relative direction angle of the vehicle at the present moment (step SB5). This comparison is to detect a difference between the relative direction angle data D stored in the first RAM 5 and the latest relative direction angle data D detected at the step SA9. When the difference between the relative direction angle data D stored the first RAM 5 and the latest relative direction angle data of the vehicle is larger than a predetermined value, the processings after a step SB7 are executed. At the step SB7, an absolute value of the difference is stored in the first RAM 5 as angle change data RZ. The coordinate data of the present position of the vehicle detected at the step SA9 of Fig. 9 and the absolute time of this detection are stored in the position data PQ2 (step SB9). Next, a processing for storing a locus is executed (step SB11), and the traveling locus data of the vehicle such as newly generated links are temporarily stored in the second RAM 6. After the processing for deleting locus data (step SA19) of Fig. 9, the locus data are selectively stored in the locus data storage unit 40 in the processing for confirming the storage of locus data (step SA21). After the step SB11, the position data PQ2 are copied onto the position data PQ1 (step SB13). Then, the processing of Fig. 11 ends and the routine returns back to the overall processing of Fig. 9 (step SB15). In the processing for storing locus at the step SB11, a change in the traveling direction of the vehicle is detected, and the locus of travel is stored in the second RAM 6 as locus data. When the amount of change of the relative direction angle is smaller than a predetermined value at the step SB5, the processing of Fig. 11 is jumped over and the routine returns back to the processing of Fig. 9. The determination at the step SB1 is based upon the traveling time of the vehicle, which, however, may be a traveling distance. That is, whether the vehicle has traveled a predetermined distance or not is detected, and the processings after the step SB5 are executed when the vehicle has traveled a predetermined distance. In this case, a difference in the traveled distance is detected by the distance sensor 23. When a value output from the distance sensor 23 has changed by more than a predetermined amount, it is so determined that the vehicle has traveled a predetermined distance. 13. Processing for Storing a Locus. Fig. 12 is a flow chart of a processing for storing a locus. It is, first, determined whether the position coordinates stored as position data PQ2 meet the coordinates on a link stored in the locus data storage unit 40 or not (step SC1). In other words, it is determined whether the link data or the node data corresponding to a road on which the vehicle is now traveling have been stored in the locus data storage unit 40 or not. When the position coordinates of position data PQ2 lie on a locus stored in the locus data storage unit 40, it is then determined whether the position coordinates of the vehicle in the position data PQ1 lie on a locus stored in the locus data storage unit 40 or not (step SC3). That is, it is determined whether the vehicle is traveling along the locus stored in the locus data storage unit 40 at a moment when the position of the vehicle is stored in the position data PQ1. When the position coordinate of the position data PQ1 does not lie on the locus that is stored, a processing is executed for inputting a first intersection (step SC5). When the position coordinate of the position data PQ1 lies on the locus that is stored, however, it is determined by utilizing the node data 55 and link data 60 whether the vehicle has passed through a node stored in the locus data storage unit 40 or not (step SC7). The content of the processing for inputting the first intersection will be described later. Whether the vehicle has passed through the node or not is determined, for example, as described below. That is, the determination is based upon whether a straight distance between the east longitude coordinate NPE and the north latitude coordinate NPN of the node which is the object of determining the passage of the vehicle and the coordinate value of the position data PQ2 (latest present position of the vehicle), is within a predetermined value or not. When the vehicle has passed the node that is stored, it means that the vehicle has passed through a link, and the data of the link that is passed are updated (step SC9). The updating of the link data may be the addition of the number of times SEK of travel or of the number of times ESK of travel, updating of the average vehicle speed AS or the addition of the traveled date-and-hour data SND (see Fig. 6). In the steps SC1 and SC3 as described above, it is determined that the vehicle was traveling on the link stored in the locus data storage unit 40 even just before or even at the present moment. In this case, whether the vehicle has traveled through a link or not is indirectly determined by determining whether the vehicle has passed through the node or not. Even in updating the link data, the data to be changed are once stored in the second RAM 6. Through the processings at the steps SA19 and SA21 of Fig. 9, the locus data in the locus data storage unit 40 are selectively updated. After the end of the processing of the step SC9, it is determined whether the node that is passed is an intersection node or not (step SC11). Whether it is the intersection node or not is determined based upon whether the intersection number NPB in the node data 55 is a value other than "0" or not. That is, the values other than "0" represent intersection nodes. Therefore, when it is determined that the vehicle has passed through the intersection node, the data related to the intersection that is passed are updated (step SC13). In updating the intersection data, the locus data to be changed are once stored in the second RAM 6. Thereafter, the data in the locus data storage unit 40 are selectively updated based on the data stored in the second RAM 6 in the steps SA19 and SA21 of Fig. 9. The updating of intersection data may be the addition of the number of times NVC of travel in the entering → leaving direction, updating of the average time TSU for passing, and addition of the traveled date-and-hour data DTS (see Fig. 7). When the results of determination of the steps SC7 and SC11 are NO after the end of the processing for inputting the first intersection (step SC5), the processing for storing a locus of Fig. 12 ends, and the routine returns back to the processing of a traveling position of Fig. 11 (step SC2). When the position coordinate of position data PQ2 does not lie on the stored link at the step SC1, it is, then, determined whether the position coordinate of position data PQ1 lies on the stored link or not (step SC15). When the position coordinate of position data PQ1 meets a coordinate on the link, a processing is executed for inputting a second intersection (step SC23). This means that, though the latest position of the vehicle does not lie on the link that has been stored in the locus data storage unit 40, the position of the vehicle of just before was on the link stored in the locus data storage unit 40. In other words, this means that the vehicle has traveled along the link and the node stored in the locus data storage unit 40 but has deviated from the link or the node. In this case, the processing is executed for inputting a second intersection, and the routine returns back to the processing of a traveling position of Fig. 11 (step SC25). The contents of the processing for inputting the second intersection will be described later. When the position coordinate of position data PQ1 does not lie on the link stored in the locus data storage unit 40, it is determined whether the angle change data RZ are larger than a predetermined value or not (step SC17). That is, none of the position coordinates of position data PQ1 and PQ2 may lie on the link stored in the locus data storage unit 40. This means that the vehicle is traveling on a road that has not been input. When the angle change data RZ are larger than a predetermined value, new node data are formed and stored (step SC19). That is, when a change in the traveling direction of the vehicle becomes larger than a predetermined amount as shown in Fig. 32, it means that the vehicle is traveling on a curved road. Therefore, new node data are formed by using geographic coordinate data stored in the position data PQ1. The newly formed node data are temporarily stored in the second RAM 6 (step SC19). Furthermore, new link data 60 are formed being linked by the newly formed node data, and are stored in the second RAM 6 (step SC21). Then, the routine returns back to the processing of a traveling position shown in Fig. 11 (step SC25). When the angle change data RZ are smaller than the predetermined value, the processings of the steps SC19 and SC21 are not executed, and the routine readily returns back to the processing of Fig. 11. The node data and link data that are newly formed at the steps SC19 and SC21 are once stored in the second RAM 6. Then, the new data are selectively stored in the locus data storage unit 40 through the processing for deleting locus data (step SA19) and through the processing for confirming the storage of locus data (step SA21) of Fig. 9. 14. Processing for Inputting a First Intersection. Fig. 13 is a flow chart of a processing for inputting a first intersection (step SC5) of Fig. 12. This processing is executed when the vehicle has traveled from a road that has not been input to a link that has been stored. It is first determined whether a geographical position on a link is a node or not (step SD1). This is the case where the position (latest present position of the vehicle) of position data PQ2 is on the stored link at the step SC1 of Fig. 12 and the position of position data PQ1 is not on the stored link at the step SC3. In other words, this is the case where the vehicle is not traveling on the recorded link at the time of storing the position data PQ1 but is traveling on the recorded link at the time of storing the position data PQ2. Concretely speaking, this is the case where the vehicle has traveled from a road that has not been input to a road that has been input When a point at which the vehicle exists on the recorded link is not a node at the step SD1, the link that has been stored in the locus data storage unit 40 is divided and new node data are formed accompanying the division (step SD11). That is, the recorded link on which the vehicle is existing is divided into two links with the point of the vehicle as a boundary. The data of the divided links that have been stored are updated (step SD13). The updating is the addition of number of times SEK of travel or number of times ESK of travel, updating of the average vehicle speed AS, or accumulation of the traveled date-and-hour data SND. Even in the updating of the link data, the data are once stored in the second RAM 6 and are selectively stored in the locus data storage unit 40 through the processing for confirming the storage of locus data (step SA21) of Fig. 9. In the above-mentioned case, the vehicle was traveling on a new road until it has arrived at the stored link and, hence, new link data are formed up to that point (step SD15). The node formed at the step SD11 becomes an intersection and, hence, the intersection data 65 are newly formed concerning the new node (step SD17). The newly formed link numbers RB are input as an entering link number IRB and a leaving link number ORB to the newly formed intersection data 65. Besides, the number of times NVC of travel, average time TSU for passing, and the traveled date-and-hour data DTS are stored (step SD9). Thereafter, the routine returns back to the processing for storing locus of Fig. 12 (step SD19) . The newly formed intersection data are once stored in the second RAM 6 and are selectively stored in the locus data storage unit 40 through the processing for confirming the storage of locus data (step SA21). When a geographical position at which the vehicle is existing on the stored link is a node at the step SD1, a new link data is formed for a road that has not been input (step SD3). That is, the locus data storage unit 40 is not storing a road on which the vehicle has traveled until it has arrived at the link stored in the locus data storage unit 40 and, hence, link data 60 are formed to represent the new road. It is then determined whether the node on the link stored in the locus data storage unit 40 where the vehicle is existing is an intersection node or not (step SD5). When it is not the intersection node, new intersection data 65 are formed to change the node into an intersection node (step SD7). Then, the link numbers RB of the new link data are registered as an entering link number IRB and a leaving link number ORB. Besides, the number of times NVC of travel, average time TSU for passing and traveled date and hour DTS of new intersection data 65 are stored (step SD9). Then, the routine returns back to the processing for storing a locus of Fig. 12 (step SD19). When the stored node at where the vehicle is existing is an intersection node, the link numbers RB of the new link data are input as an entering link number IRB and a leaving link number ORB. Besides, the number of times NVC of travel, average time TSU for passing and traveled date and hour DTS of intersection data 65 are added (step SD19). The newly formed link data and intersection data or the stored locus data that are updated, are once stored in the second RAM 6 and are selectively stored in the locus data storage unit 40 through the processing for locus data (step SA19) and the processing for confirming the storage of locus data (step SA21) of Fig. 9. 15. Processing for Inputting a Second Intersection. Fig. 14 is a flow chart of a processing for inputting a second intersection (step SC23) of Fig. 12. It is, first, determined whether a point of the vehicle deviated from the road stored in the locus data storage unit 40 is a node or not (step SE1). This is based upon the determination that the position coordinate of position data PQ2 (latest present position of the vehicle) is not on the stored link at the step SC1 of Fig. 12. That is, this is the case where the vehicle is traveling on a road that has not been input and the geographical position of position data PQ1 is on the stored link at the step SC15 of Fig. 12. In other words, this is the case where the vehicle is traveling on the link that has been stored in the locus data storage unit 40 at the time of recording the position data PQ1 and is traveling on a road that has not been input at the time of recording the position data PQ2. Concretely speaking, this is the case where the vehicle has arrived at the road that has not been input from the road that has been stored. When a point of the vehicle deviated from the link stored in the locus data storage unit 40 is not a node at the step SE1, the stored link is divided and new node data are formed accompanying the division (step SE13). That is, the deviated link of the vehicle is divided into two links with the deviated point as a boundary. The data of the stored link on which the vehicle has traveled are updated (step SE15). For instance, the number of times SEK or ESK of travel is added, the average vehicle speed AS is updated, or the data SND of traveled date and hour are added. The road on which the vehicle is traveling being deviated from the stored link is a new road, and new link data are formed with the newly formed node as a start point node (step SE17). Besides, the node formed at the step SE13 becomes an intersection. Accordingly, intersection data 65 are newly formed concerning the new node (step SE19). The newly formed link numbers RB are input as an entering link number IRB and a leaving link number ORB to the newly formed intersection data 65. Besides, the number of times NVC of travel, average time TSU for passing and traveled date and hour DTS are stored (step SE11). Thereafter, the routine returns back to the processing for storing a locus of Fig. 12 (step SE21). When the deviated geographical position of the vehicle on the stored link is a node at the step SE1, the data of the stored link leading up to the deviated point are updated (step SE3). The road on which the vehicle is now traveling from the deviated point is a link that has not been input and, hence, new link data are formed (step SE5). It is then determined whether the deviated node of the vehicle on the link is an intersection node or not (step SE7). When the node is not an intersection node, new intersection data 65 are formed to change the node into an intersection node (step SE9). The link numbers RB of the new link data are input as an entering link number IRB and a leaving link number ORB to the newly formed intersection node. Moreover, the number of times NVC of travel, average time TSU for passing and traveled date and hour DTS of the intersection data 65 are stored (step SE11). Thereafter, the routine returns back to the processing for storing a locus of Fig. 12 (step SE21). When the node of the vehicle deviated from the stored link is an intersection node, the link numbers RB of the new link data are added as an entering link number IRB and a leaving link number ORB. Besides, the number of times NVC of travel, average time TSU for passing and traveled date and hour DTS of intersection data 65 are added (step SE11). Thereafter, the routine returns back to the processing for storing a locus of Fig. 12 (step SE21). Even in the processing for storing the newly formed link data and the intersection data or even in the processing for updating the locus data, the locus data are once stored in the second RAM 6. Thereafter, the new locus data are selectively stored in the locus data storage unit 40 through the processing for deleting locus data (step SA19) and the processing for confirming the storage of locus data (step SA21) of Fig. 9. 16. First Embodiment of the Processing for Searching a Route. Fig. 15 is a flow chart of a first embodiment of the processing for searching a route (step SA7) in the overall processing of Fig. 9. First, a processing for setting a destination is executed to set a destination desired by the user (step SF1). The destination is set by the user based on the map data shown on the display 33. Then, a start point node closest to the present position of the vehicle detected by the processing of a present position (step SA3) of Fig. 9 is identified from the node data 55 stored in the locus data storage unit 40. When the node closest to the start point node has not been stored in the locus data storage unit 40, a next processing is executed simultaneously. That is, a coordinate point closest to the present position is identified as a start point from the coordinates of road data stored in the data storage unit 37. Then, the identified start point node is input as a search start point (step SF3). Next, a node on a link closest to the destination set at the step SF1 is identified from the locus data storage unit 40 (step SF5). The identified node is input as the final destination node to the end point of route data ED in the first RAM 5. In identifying the destination node, when there is no node closest to the destination among the stored nodes, the closest node is identified from the node data stored in the data storage unit 37. It is determined whether the processing for searching a route is executed for all link data stored in the locus data storage unit 40 starting from the above-mentioned search start point (step SF7). When the processing for searching a route has not been executed, a processing for searching peripheral links is executed (step SF9). The processing for searching peripheral links calculates a search cost of the links extending from a node. A link having a smaller search cost is selected, and the end point node of the selected link is used as a search start point of the next route. The processing for searching peripheral links will be described later. Next, it is determined whether a route to the destination node is identified or not (step SF13). When the route has not been identified, the routine is returned back again to the step SF7. When the route to the destination has been identified, the routine is returned from the processing of Fig. 15 back to the processing of Fig. 9 (step SF15). Thus, a series of processings for searching a route of the steps SF3 to SF13 use the node data 55, link data 60 and intersection data 65 stored in the locus data storage unit 40. When the locus has not been sufficiently stored in the locus data storage unit 40, therefore, the locus data often fail to connect the present position of the vehicle to the destination that is set. To compensate for the lack of route, in this case, the processing for searching a route is executed (step SF11) by using data stored in the data storage unit 37. This may be the case where all link data in the locus data storage unit 40 are identified at the step SF7, but the route to the destination has not been formed at the step SF13. The route is identified from the end point of the route formed by the locus data to the destination by using the road data in the data storage unit 37. Thus, the route can be identified in the vicinities of the present position of the vehicle by using locus data stored in the locus data storage unit 40. In the vicinities of the destination, however, the locus data have not been necessarily stored in the locus data storage unit 40. In the areas where there are no locus data, therefore, the route is identified based upon the data stored in the data storage unit 37. When the processing for searching a route from the present position of the vehicle to the destination ends, the routine returns back to the processing of Fig. 9 (step SF15). 17. Processing for Searching Peripheral Links. Fig. 16 is a flow chart of the processing for searching peripheral links (step SF9) of Fig. 15. First, a search cost value of a search start node is stored as a start cost VA (step SG1). The search cost of the search start node is a cumulative value of search costs of the links identified up to the search start node by the processing for searching a route of Fig. 15. The search costs of the links are compared with each other to select a link having the smallest value, and this link is used as an optimum route. Thus, the links having the smallest search costs are successively selected as a guide route. The search cost of the end point node of the link is a cumulative value of the search costs of the links and nodes that are identified. In other words, the search cost stored in the start cost VA at the step SG1 is the sum of search costs of the links and nodes constituting a route that is identified already. Referring to Fig. 34, it is presumed that the node NOD1 is a search start node at the present moment, and that the links IRB11, IRB10 and IRB8 are determined in this order by the processing for searching a route of a minimum search cost up to the search start node. Then, a value of the start point cost VA at the step SG1 is the sum of traveling costs through the links IRB11, IRB10, IRB8 and of the passage costs through the nodes NOD5, NOD7, NOD8. After the step SG1, it is determined whether the search start node is an intersection node or not (step SG3). The node NOD1 in Fig. 34 is an intersection node. When the search start node is an intersection node, a next step SG5 is executed. When it is not the intersection node, a processing is executed to calculate a link cost at a step SG21. When the search start node at the search start point is an intersection node, the number IRB of a link entering into the intersection node is determined from the result of the processing for searching a route executed just before. That is, a link number RB is attached to the link selected as a guide route by the preceding processing for searching a route. An entering link number IRB in agreement with this link number is detected from the intersection data 65 to determine the entering link. In the case of Fig. 34, the entering link is a link IRB8. From the entering link number IRB which is a guide route, the number nout of leaving links is read out of the intersection data 65 (step SG5). In the case of Fig. 34, the number nout of leaving links is "3" with respect to the entering link IRB8. The values of the end point costs VB (nout) at the end point nodes of the leaving links are initially set to an infinity (step SG7), and the end point costs VB at the nodes NOD2, NOD3 and NOD4 are, first, set to an infinity. It is determined whether the search costs are calculated for the leaving links read at the step SG5 (step SG9). When the calculation of search cost has not been finished for all leaving links, the number of times of travel from the entering link IRB8 to the leaving links ORB5, ORB6, ORB7 at the intersection node is read (step SG11). It is then determined if the number of times of travel from the entering link to the leaving links is "0" or not (step SG13). When the number of times of travel is not "0", the intersection travel costs VC are found for traveling from the entering link IRB8 to the leaving links ORB5, ORB6, ORB7 through the intersection node NOD1 (step SG25). The intersection travel cost VC is substituted by a value which varies in reverse proportion to the number of times of travel from the entering link IRB8 to the leaving links ORB5, ORB6, ORB7. That is, the intersection travel cost VC decreases with an increase in the number of times of travel. The sum of the intersection travel cost VC and the start point cost VA is an end point cost VB (nout) of the leaving link ORB (step SG27). When the number of times of travel is "0", the routine is returned back to the processing of the step SG9. The number of times "0" of travel indicates the fact that the traveling is not allowed from the entering link to the leaving link due to one-way or the user has never traveled in the past. Next, the length LR of the leaving link ORB and the number of times SEK of travel or the number of times ESK of travel are read from the link data 60 (step SG29). The travel cost VL of the leaving link ORB is substituted by the sum of a value which varies in reverse proportion to the number of times of travel on the link and a value which varies in proportion to the length of the link (step SG15). That is, the traveling cost VL on the leaving link ORB decreases with an increase in the number of times of travel, and increases with an increase in the length of the link. The number of times of travel used for calculating the traveling cost VL is the one in the direction of travel in agreement with the direction of searching a link, i.e., in agreement with the direction from the search start node to the end point node. The number of times of travel may be the sum of the number of times SEK of travel and the number of times ESK of travel. The thus found traveling cost VL of the leaving link ORB is added to the end point cost VB (nout) (step SG17), and the end point cost VB (nout) is the final search cost at the end point node of the leaving link ORB (step SG19). The processing of the step SG9 is executed again. When the end point cost VB (nout) is calculated for all leaving links ORB at the intersection node NOD1 (step SG9); the leaving link ORB having the smallest end point cost VB at the intersection node is selected as a next identified route (step SG23). At the intersection node NOD1 of Fig. 34, if the greatest number of times of travel is from the entering link IRB8 to the leaving link ORB7 and the leaving link ORB7 is the shortest, then, the leaving link ORB7 has the smallest final cost VB at the intersection node NOD1 and is selected as a next guide route. Then, the end point node NOD4 of the leaving link ORB7 is determined to be the next search start node. In the next processing for searching peripheral links, therefore, a value of the end point cost VB which is the search cost of the node NOD4 is substituted for the start point cost VA (step SG1). Those links having final costs VB (nout) of infinitely large values are forcibly excluded and are not selected as guide route. When the search start node is not the intersection node (step SG3), a processing is executed for calculating a link cost (step SG21), and the processing of the step SG23 is executed. This may be the node NOD7 in Fig. 34. In this case, only one end point cost VB is calculated, and the comparison of the cost values is not effected. When the search start node is the node NOD7 (step SG21), therefore, the traveling cost VL of the link IRB10 is calculated, and the end point cost VB of the node NOD5 only is calculated. When a link constituting an optimum route is selected after the processing for searching peripheral links of Fig. 16, the routine returns back to the processing for searching a route of Fig. 15 (step SG31). In the foregoing description, a link having the smallest search cost was selected, but the method of calculating the search cost may be carried out in a reverse manner. Thus, the value of traveling cost VL of the link increases with an increase in the number of times of travel through the link or with a decrease in the length of the link, and a link having the greatest traveling cost is selected. Furthermore, the traveling cost VC at the intersection node and the traveling cost VL through the link may be calculated by taking the date of the traveled date and hour DTS and the date-and-hour data SND into consideration. That is, the later date-and-hour data SND make the traveling cost VL through the link small. As a result, a link having data of lately traveled date and hour is preferentially selected in the processing for searching a route. Moreover, turn to the right or turn to the left may be taken into consideration for the traveling cost at the intersection node. That is, the value decreases in the order of traveling cost which turns to the left, traveling cost which turns to the right and straight traveling cost. This is because, in a general intersection, turning to the left is more difficult than turning to the right or go straight. Turning to the left may often be very difficult depending upon the quantity of the oncoming vehicles. In order to avoid the turning to the left at the intersection as much as possible, therefore, the value of the traveling cost VC may be affected by the direction of travel at the intersection. 18. Processing for Calculating a Link Cost. Fig. 17 is a flow chart of a processing for calculating a link cost. First, data related to links connected to a search start node are read out from the locus data storage unit 40 (step SH1). For example, when the node NOD7 in Fig. 34 is a search start node of this time, the link IRB10 connected to the node NOD7 is read out from the locus data storage unit 40. The length LR of the link IRB10 and the number of times of travel are read from the link data (step SH3), and a value of end point cost VB of the link IRB10 is initially set to an infinity (step SH5). Next, when the number of times of travel through the link is "0" (step SH7), the processing for calculating the link cost ends, and the routine returns back to the step SG23 of Fig. 16 (step SH15). However, when the number of times of travel is not "0" (step SH7), the traveling cost VL of the link is calculated (step SH9). The traveling cost VL is the sum of a value which varies in reverse proportion to the number of times of travel and a value which varies in proportion to the length LR of the link. The sum of the traveling cost VL and the start point cost VA of the search start node is regarded to be the end point cost VB (step SH11). The end point cost VB is the search cost at the end point node NOD5 of the link IRB10 (step SH13), and the routine returns back to the step SG23 of Fig. 16. Thus, the search cost at the end point node of link is calculated through the processings of Figs. 16 and 17. A route to the end point node having a smaller search cost is selected as a guide route. In the processing for searching peripheral links, the intersection traveling cost VC may be calculated by taking into consideration the average time TSU for passing and the traveled date and hour DTS. That is, the value of intersection traveling cost VC decreases with a decrease in the average time TSU for passing. The value of intersection traveling cost VC further decreases as the date and hour DTS of travel are new. Similarly, the traveling cost VL of the link may be increased or decreased depending upon the average vehicle speed AS through the link, traveled date-and-hour data SND, number of times YT of input and the road discrimination data LD. For example, the value of traveling cost VL decreases with an increase in the average vehicle speed AS and as the traveled date-and-hour data SND are new. Depending upon the time for executing the processing for searching a route, furthermore, the link has more time data according to the above time, the traveling cost VL of the link may more decrease. When the date-and-hour data SND are concentrated to, for example, a predetermined time zone before noon, it is desired to use the links related to the date-and-hour data SND in that time zone only. In this case, the traveling cost VL of the link is operated by a functional value that varies depending upon the time zone of the date-and-hour data SND, and there is preferentially used a link of which the date-and-hour data SND are stored in the same time zone as when the processing for searching a route is executed. Furthermore, the value of traveling cost VL may decrease with an increase in the number of times YT of input. The value of the traveling cost VL may be decreased even when the link is not stored in the data storage unit 37 due to road discrimination data LD. In particular, when a value of traveling cost VL of the link greatly changes depending upon the number of times YT of input manipulated by the user, the roads preferred by the user are selected in a concentrated manner as a guide route. In the processing for setting a destination (step SF1 of Fig. 15) , furthermore, external data may be input from the VICS or ATIS and may be used for selecting facilities to be dropped in or for selecting a destination. When, for example, a parking lot near the destination is picked up as a final destination, the facilities are picked up by taking into consideration whether the parking lot is filled or still empty or whether the roads near the facilities are jammed, depending upon the external data from the VICS or ATIS. This helps decrease erroneous selection of the facilities. Instruction for starting the processing for setting a destination is not accepted while the vehicle is traveling. Moreover, the road data, intersection data and node data in the data storage unit 37 may all be copied onto the locus data storage unit 40. When the road data are stored in the locus data storage unit, the numbers of times SEK and ESK of travel, date-and-hour data SND and average vehicle speed AS are added. However, these values are "0" at first. In the processing for searching a route, the road data and the intersection data become objects to be identified together with the locus data. Thus, a guide route is identified including both locus data and road data. The number of times of travel in the road data and the traveled date-and-hour data in the locus data storage unit 40 are rewritten in the following case. That is, the present position is detected while the vehicle is traveling, road data having a coordinate value corresponding to the present position are detected, the road data are detected from the locus data storage unit, and the above-mentioned data are updated. The method of calculating a search cost used in Figs. 16 and 17 may be utilized in the processing for searching a guide route (step SJ1) that is executed by using road data stored in the data storage unit 37 (CD-ROM, opto-magnetic disk, etc.). That is, the road number MB of a road stored in the data storage unit 37 are stored in the link data 60, the numbers of times SEK, ESK of travel of link data 60 having the road number MB of the above road are referred to in the processing for searching a route relying upon the road data, and the search cost of the road data are varied depending upon the numbers of times SEK, ESK of travel. Therefore, even in a guide route identified by using the road data, roads having larger numbers of times of travel are preferentially selected. In searching a route by using road data, furthermore, the value of search cost may be determined by taking into consideration not only the number of times of travel but also the average vehicle speed AS, traveled date-and-hour data SND and number of times YT of input by the user. In this case, these values are operated and the traveling cost (search cost) VL is operated and synthesized. 19. Second Embodiment of the Processing for Searching a Route. Figs. 18 to 25 are flow charts illustrating a second embodiment of the processing for searching a route. First, a processing is executed for setting a destination desired by the user (step SF1). The processing for setting a destination is the same as the processing for setting a destination of Fig. 15. The destination desired by the user is identified from a list of facilities shown on the display 33 according to the conditions for identification, and is specified. As the destination of route guide is set by the processing for setting a destination, a guide route is identified from the start point (present position of the vehicle) to the destination (step SJ1). The guide route is identified by using the road data file F4 stored in the data storage unit 37. In the processing for searching a guide route at the step SJ1, the guide route may be identified by using the same method of identification as a processing for identifying peripheral links (step SF9) that will be described later. In this case, there are used no rewritable data such as number of times of running, average vehicle speed, etc. In searching the guide route, therefore, the size of the search cost is determined by the road environment such as length of a road, width of the road, principal trunk road such as national highway and speed way. Fig. 35 illustrates a guide route 88 identified by the road data only of the data storage unit 37. The guide route 88 that is identified is constituted by the road numbers attached to the roads on a map stored in the data storage unit 37. The link data having road numbers of the guide route data are identified from the locus data stored in the locus data storage unit 40 (step SJ3). The links having road numbers of the roads constituting the guide route are defined to be overlapped links. Next, a node near the start point (geographical position at the time of start) is set to be a search start node (step SJ5). The node referred to here is the locus data stored in the locus data storage unit 40. A locus route is identified from the search start node to a start point node of the overlapped link in a manner as described below. First, when the locus route has not been identified for each of the overlapped links that have been identified (step SJ7), it is then determined whether the start point node of the overlapped links is an intersection node or not (step SJ9). In the guide route 88 of Fig. 35, when, for example, the links RB20, RB22 and RB24 are overlapped links, it is determined whether a node NOD26 of the overlapped link RB22 is an intersection node or not. When it is the intersection node, it is then determined whether it is allowed to enter the guide route from the overlapped link or not (step SJ11). It is important to determine at the step SJ7 whether the start point node is the intersection node or not, on account of the reason described below. When the start point node is not the intersection node, it is not often allowed to enter the overlapped link from other links. In this case, the course may not be changed from the overlapped link to the guide route 88. It is therefore necessary to determine whether the start point node is the intersection node or not. It is necessary to determine whether it is allowed to enter the guide route from the overlapped link (step SJ11), on account of the reason described below. That is, the direction of running on the overlapped link is often against the running direction of the guide route toward the destination. In this case, the user must U-turn to enter the guide route 88 constituted by the road data only from the overlapped link. After the processing is finished for all overlapped links (step SJ7), the routine proceeds from the processing of Fig. 18 to a processing of Fig. 19. When the start point node of the overlapped link is not the intersection node, or when it is difficult to proceed to the guide route 88 from the overlapped link (steps SJ9, SJ11), the locus route is not identified by using the overlapped link. Instead, the routine is returned back to the step SJ7, and the next processing is started for the overlapped link. However, when the start point node of the overlapped link is the intersection node, and it is allowed to enter the guide route 88 toward the destination from the overlapped link (steps SJ9, SJ11), the overlapped link is regarded to be the end point node, identification of the route is started by using the locus data. In identifying the locus route, first, the start point node of the overlapping links is set to be a search end node (step SJ12). Next, when the locus route has not been identified by using all locus data stored in the locus data storage unit 40 (step SJ13), the end point node of a link connected to the last end of the locus route identified already is set to be a search start node. The processing for searching peripheral links is executed starting from this new search start node (step SJ15), and the new search link is added to the end of the locus route identified thus far. The processing for searching peripheral links is a program shown in Fig. 16. Next, when the newly added search link is not the overlapped link (step SJ17), the processings after the step SJ13 are executed again. When the added search link is in agreement with the overlapped link (step SJ17), however, a locus route is identified from the start point to the overlapped link. Then, the identified route is stored as a locus route KT (S) in the first RAM 5 (step SJ21). A variable (S) of the locus route KT(S) indicates an S-th locus route KT. Thereafter, the determination of the step SJ7 is executed again, and a processing is started again for the next overlapped link. When the locus route is identified for all locus data in the locus data storage unit 40 (step SJ13), it is determined whether a route is established by locus data from the start point to the overlapped link (step SJ19). This is the case where the locus data stored in the locus data storage unit 40 exist only in the vicinities of the overlapped link and in the vicinities of the start point. That is, when there is no route of locus data that connects the start point to the overlapped link, the route is not regarded to be the locus route KT(S). Fig. 35 shows a locus route KT1 identified by a series of processings of Fig. 18. The locus route KT1 is constituted by the locus data only of from the start point node 82 to the overlapped link RB22. In the processing of Fig. 18, the locus route KT(S) is identified from the start point node 82 to each of the overlapped links on the guide route 88. Then, a locus route KR(P) of Fig. 19 is searched, and a node in the locus data storage unit 40 closest to the destination is set to the destination node 80 (step SJ23). Next, it is determined whether the running direction of the overlapped link detected at the step SJ3 is in agreement with the running direction of the guide route 88 to the destination (step SJ25). The overlapped link used here is the same as the overlapped link used in Fig. 18. Whether the running direction of the link is in agreement with the running direction of the guide route 88 is determined depending upon whether the numbers of times ESK, SEK of running of the link data 60 are 0 or not. For example, when the number of times SEK of running is " 0" , it is determined that it is not possible to run from the start point node to the end point node of the overlapped link. When the running direction of start point → end point is the direction of the guide route 88 to the destination, then, the running direction of the overlapped link is not in agreement with the running direction of the guide route 88 (NO at the step SJ25). When they are in agreement (YES at the step SJ25), it is determined that the course can be changed from the guide route 88 to the overlapped link (step SJ27). This determination is based upon whether the end point node of the overlapped link is the intersection node or not like at the step SJ9 of Fig. 18. At the intersection node, furthermore, it is determined whether it is allowed to run from the overlapped link to the links of other locus data. The determination is based upon the intersection data 65 stored in the locus data storage unit 40. When it is allowed to proceed to other links from the guide route 88 through the overlapped link, the end point node of the overlapped link is set to be a search start node (step SJ29). When the search start node has been set but the processing for searching a locus route has not been effected for all link data stored in the locus data storage unit 40 (step SJ31), the processing for searching peripheral links is executed starting from the above search start node (step SJ35). The search processing for all link data at the step SJ31 ends even when there is no next link newly connected to the link being identified. This is the case where the locus data storage unit 40 is storing only the locus data in the vicinities the start point but is not at all storing the locus data in the vicinities of the destination. When the processing for searching a locus route ends (YES at the step SJ31), the processing for searching a route is executed using, as a new search start node, the end point node of the locus route identified thus far (step SJ33). That is, when the locus data in the locus data storage unit 40 are not sufficient, and the locus route that is identified is not arriving at the destination node, the lacking route is identified by using the road data in the data storage unit 37. When it is not possible to form a locus route from the overlapped link to the destination node, the processing for searching a route by using the road data at the step SJ33 may be inhibited. That is, when the locus data stored in the locus data storage unit 40 are only those in the vicinities of the overlapped link, it is impossible to search a locus route up to the destination node 80 relying only upon the locus data. Therefore, the intermediate locus route may be forcibly discarded. After the step SJ33 or SJ35, whether the final end point node of the locus route which is now being identified has reached the destination node or not (step SJ37). Here, it is determined if the final link of the locus route being identified is in agreement again with the overlapped link on the guide route 88 or not. That is, in Fig. 35, it is determined whether the locus route KR3 starting from the overlapped link RB24 has arrived at the overlapped link RB20 or not. When the search of the locus route has been finished (YES at the step SJ37), the newly identified route is stored in the first RAM 5 as a locus route KR(P) (step SJ41). When the process for searching a locus route has not been effected for all overlapped links (step SJ39), the process for searching a locus route is started concerning the new overlapped links (step SJ29). When the process for searching a locus route is effected for all overlapped links (step SJ39), a process of Fig. 20 starts. Thus, the locus routes KR1, KR3 shown in Fig. 35 are identified through a series of processings of Fig. 19. That is, the locus route KR(P) is identified that starts from an intermediate point of the guide route 88 constituted by the road data in the data storage unit 37. In identifying the route constituted by locus data of Fig. 20, it is determined whether there exists a locus route constituted by the locus data only from the start point to the destination node 80. First, the start point node 82 is set to be a search start node (step SJ43), and a next optimum link is identified by the processing for searching peripheral links with the search start node as a start point (step SJ45). It is determined whether the link identified at the step SJ45 is the same as the first link in the identified locus route KT(S) or not (step SJ47). That is, if the first link identified at the step SJ45 is in agreement with the start link of any locus route KT (S), the locus route starting from the link comes into agreement with the locus route KT that has been identified already. To prevent the processing for search from effected in an overlapped manner, a step SJ47 renders a determination. When the first identified link is not in agreement with the start link of the locus route KT(S) (step SJ47), the end point node of the first identified link is set to be a next search start node (step SJ49). When the processing has not been effected for all link data stored in the locus data storage unit 40 (step SJ51), the end point node of the latestly identified link is regarded to be a new search start node, and the processing is executed for searching peripheral links (step SJ55). When the end point node of the newly identified link is not arriving at the destination node 80 after the processing for searching peripheral links of the step SJ55 (step SJ57), the processing is repeated again from the step SJ51. When the end point node has reached the destination node 80, however, the locus route is identified from the start point node 82 to the destination node 80, and this route is stored in the first RAM 5 as a new locus route KR(P) (step SJ59). When the end point of the identified link is not in agreement with the destination node 80 and the processing has been effected for all link data (NO at the step SJ57, YES at the step SJ51), however, the processing of Fig. 20 is forced to end. In this case, there exists no locus route from the start point node 82 to the destination node 80, and the link data stored in the locus data storage unit 40 are only those related to the vicinities of the start point node 82 and those related to the vicinities of the destination node 80. The locus route KR(P) identified by the processing of Fig. 20 corresponds to the locus route KR2 of Fig. 35. Thus, the locus route KR2 includes no link that overlaps the guide route 88. In searching a route using locus data of Fig. 21, the processing is executed in a manner as described below. That is, it is determined whether the route from the start point to the destination node 80 is constituted by locus data only, and whether the route includes locus routes other than those identified in Fig. 20. First, a start point node 82 is set to be a search start node (step ST1) . With this search start node as a start point, a next optimum link is identified by the processing for searching peripheral links (step ST3). It is determined whether the link identified at the step ST3 is the same as the first link of the locus routes identified by the processings of Figs. 18 to 20 or not (step ST5). This prevents the processing of search from being executed in an overlapped manner. This is because, when the first link identified at the step ST3 is in agreement with the start link of any locus route KR (P) or KT (S), a locus route starting from this link comes into agreement with the locus route that has been identified already. When the first identified link is not in agreement with the start link of other locus routes (step ST5), the end point node of the first identified link is set to be the next search start node (step ST7). Then, the end point node of the latestly identified link is regarded to be a new search start node until the processing is effected for all link data stored in the locus data storage unit 40 (step ST9) , and the processing is executed for searching peripheral links (step ST11). Next, when the newly identified link is in agreement with the locus route that has been identified already (step ST13), the links that are in agreement are excluded (step ST15), and the processing for searching peripheral links is repeated using the remaining links (step ST11). When the newly identified link is not used in other locus routes (step ST13), the processing for searching peripheral links is repeated (steps ST9, ST11) until the end point node of the link comes into agreement with the destination node (step ST17). When the end point node of the identified link is the destination node 80, however, it means that the locus route is identified up to the destination node 80. Therefore, this route is stored in the first RAM 5 as a new locus route KR(P) (step ST19). When the end point of the identified link is not in agreement with the destination node 80 (NO at the step ST17) and when the processing for search has been effected for all link data (YES at the step ST9), the processing of Fig. 21 is forced to end. In this case, there exists no locus route from the start point node 82 to the destination node 80, and the locus route that is not perfectly identified of Fig. 21 is canceled. In the locus route KR identified by the processing of Fig. 21, the links of the second smallest cost are successively selected out of the search costs identified by the processing for searching peripheral links (step SF9) unlike those of the focus route KR identified in Fig. 20. In calculating the search costs, therefore, when the length of the links most affects the running cost VL, the shortest locus route from the start point node 82 to the destination node 80 is identified by the processing of Fig. 20, , and the second shortest locus route is identified by the processing of Fig. 21. When the locus route KT(S) and the locus route KR(P) are identified by the processings of Figs. 18 to 21, the processing of Fig. 22 is executed. It is, first, checked whether the overlapped links of the locus routes KT(S) are in agreement with the overlapped link on the start point side of the locus route KR(P) (step SJ61). In the example of Fig. 35, the overlapped link RB22 of the locus route KT1 is the overlapped link of the start point side of the locus route KR1. If there exists such a combination of the locus route KT(S) and the locus route KR(P) (step SJ63), a route consisting of the two locus routes is stored in the first RAM 5 as a new locus route KU(H) (step SJ65). Next, when the calculation of the distance of the whole newly formed locus route KU(H) has not been finished (step SJ67), the calculation register UW is initially set to " 0" (step SJ69). Here, the distance of the locus route KU(H) is the sum of the whole distance of the locus route KT constituting the locus route KU(H) and the whole distance of the locus route KR. In the example of Fig. 35, length of the locus route KT1 + length of the locus route KR1 = distance of the locus route KU(H) . Here, the distances of the overlapped links have not been calculated in an overlapped manner. When the end point node of the locus route KU (H) is not in agreement with the destination node 80 (step SJ71), the distance from the end point node of the locus route KU(H) to the destination node 80 is calculated by using the guide route 88 and is stored in the calculation register UW (step SJ73). The end point node of the locus route KU(H) is also the end point node of the locus route KR that constitutes the locus route KU(H). Therefore, when the end point node of the locus route KR is not the destination node 80, the route from the end point node to the destination node 80 is the one which uses the guide route 88. In Fig. 35, this may be, for example, the end point node NOD29 of the locus route KR3. The distances of the links constituting the locus route KT and the locus route KR are read from the link data 60 in the locus data storage unit 40, and are accumulated (step SJ75). The sum of the distances of the links of locus routes KT and KR is stored in the route distance KUL (H). A value of the calculation register UW is further added to the route distance KUL(H) (step SJ77). Thus, the route distance KUL(H) of the locus route KU(H) is found from the start point node 82 to the destination node 80. When there is no locus route KU(H) or when the distance of all locus route KU(H) is calculated, the process of Fig. 22 ends, and a process of Fig. 23 starts. In the processing of Fig. 23, when the locus route KT(S), locus route KR(P) and the guide route 88 are used in combination, their respective route distances are calculated. That is, the lengths of the links constituting the locus route KTO(S) are read out from the locus data storage unit 40, and are accumulated. Then, the distances of the links of the locus route KT (S) are stored in the route distance KTL(S) (step SJ79). Next, the distance of the guide route 88 from the end point node of locus route KT(S) to the destination node 80 is calculated by utilizing the road data file F4 of the data storage unit 37 (step SJ81), stored in the calculation register UW (step SJ81), and is added to the route distance KTL(S) (step SJ83). In Fig. 35, the distance from the node NOD24 of overlapped link RB22 of locus route KT1 to the destination node 80 is calculated by using the guide route 88, and is stored in the calculation register UW. On the other hand, the distance of the locus route KT1 is calculated by using the link data 60 of the locus data storage unit 40, and is stored in the route distance KTL(1). The lengths of the links are accumulated until the route distance KTL (S) from the start point node 82 to the destination node 80 is calculated by using the locus routes KT (S) (step SJ85). When the route distances KTL(S) are found for all locus routes KT (S), then, the route distance KRL (P) is calculated for the locus route KR(P). First, the processings after the step SJ89 are repetitively executed until the calculation of distances of all locus routes KR(P) is finished (step SJ87). Here, "0" is set to the calculation register UW (step SJ89). When the end point node of locus route KR (P) is not in agreement with the destination node 80 (step SJ91), the distance from the end point node of locus route KR(P) to the destination node 80 is calculated as the distance of the guide route 88 (step SJ93), and the thus calculated distance is stored in the calculation register UW. The distance from the start point node 82 to the end point node of locus route KR(P) is calculated as a route distance KRL(P), and to this value is added the value of the calculation register UW (step SJ95). At this moment, when the start point node of the locus route KR(P) is not in agreement with the start point node 82, the guide route 88 is used from the tart point node 82 to the start point node of the locus route KR(P). Therefore, the distance from the start point node 82 to the start point node of the locus route KR(P) is calculated by using the guide route 88. Thereafter, the processings of the steps SJ87 to SJ97 are repeated until the calculation of distance of the whole locus route KR(P) is completed (step SJ87). Thus, the route distances KRL(P) from the start point node 82 to the destination node 80 are calculated by using the locus routes KR(P). The locus route is identified by the processings of from Fig. 18 to Fig. 23 by using locus data, and the distances are calculated from the start point node 82 to the destination node 80 by using locus routes. Thereafter, the processing of Fig. 24 is started. First, when the mode for selecting a locus route is set by the user (step SJ99), the route distance KTL (S), route distance KRL (P) and route distance KUL (H) are shown together with the guide route 88 on the display 33, and distances of the links only of the locus routes and the time required for running the links are shown (step SJ101). When the locus route is shown on the display 33, furthermore, the first locus route is displayed in a flashing manner. When no locus route is selected (step SJ103) and the cursor is operated (step SJ105), the next locus route is shown in a flashing manner. When the cursor is not operated, however, the locus route is selected or waits for until the cursor is operated (steps SJ103, SJ105) . Therefore, when the cursor is repetitively operated, the locus route shown on the display 33 in a flashing manner is changed cyclically. When the locus route is selected (step SJ103), on the other hand, the route is regarded to be a locus route KV. The selection is made depending upon whether the determination key provided on the display 33 is depressed or not. The flashing locus route is selected at a moment when the determination key is depressed. Furthermore, when the mode for selecting the locus route is not set by the user (step SJ99), a guide route is automatically selected out of the locus routes identified in Figs. 18 to 23 (step SJ109). For example, the shortest one is selected out of the route distance KTL(S), route distance KRL(P) and route distance KUL (H) (step SJ109 in Fig. 24), and this route is regarded to be the locus route KV. That is, the locus route KV is the one selected out of the identified locus route KT(S), locus route KR(P) and locus route KU (H). Next, it is determined whether the links constituting the locus route KV have road numbers of road data stored in the data storage unit 37 (steps SJ111, SJ113). The link without a road number is not a guide road but is a newly constructed road or a narrow road. It is not, therefore, allowed to display, by using the road data file F4, the locus route KV on a map shown on the display 33. Therefore, the links of the locus route KV without road number are replaced by the arrangement of geographical coordinate points by using locus data in the locus data storage unit 40 (step SJ115), and the locus route KV and the guide route 88 are both shown on the display 33 (step SJ119). They may be shown in different colors, and the locus route KV may be distinguished over the guide route 88, When all links of the locus route KV have road numbers (step SJ113), the locus route KV can be represented by the road data stored in the data storage unit 37, and the links of the locus route KV can be replaced by a data sequence expressed by road numbers (step SJ117). In Fig. 35, when the locus route KV is a locus route KT1, the routes to the destination node 80 from the locus route KT1 and from the node NOD24 of guide route 88 are shown on the display 33, and a locus route using locus data of the locus data storage unit 40 is shown preferentially. In this display of routes, the whole guide route 88 may be displayed, or the locus route KV and the guide route 88 may be displayed being distinguished from each other. When the locus route KV and the whole guide route 88 are shown in parallel on the display 33, a query is shown on the display 33 asking the user if he wishes to use the locus route KV or not (step SJ121). When the locus route KV is selected, the locus route KV is used in the route guide display. In this case, the remaining routes other than the locus route KV use the guide route 88. In Fig. 35, this is a portion of the guide route 88 from the node NOD24 to the destination node 80. When the locus route KV is different from the guide route 88 at the step SJ121, the locus route KV may be preferentially selected. However, the guide route 88 may be automatically selected only when the distance of the guide route 88 is very short in comparing the distance of a portion of the guide route 88 with the distance of the locus route KV. Referring to Fig. 25, when the locus route KV is a locus route KT1, the guide route 88 that corresponds to the locus route KV is from the node NOD26 to the start point node 82. Therefore, the locus route KT1 is forcibly selected since the locus route KT1 is different from the guide route 88. As described above in detail, the locus route KT1 of Fig. 35 is identified by the processing shown in Fig. 18, the locus routes KR1, KR3 of Fig. 35 are identified by the processing shown in Fig. 19, and the locus route KR2 of Fig. 29 is identified by the processing shown in Fig. 20 or 21. In the second embodiment of the processing for searching a route as described above, the guide route 88 using the road data file F4 of the data storage unit 37 is identified or the locus route preferentially using the locus data of the locus data storage unit 40 is identified as a route from the start point node 82 to the destination node 80. Referring to Fig. 35, for example, the guide route 88 is identified by using the road data file F4 of Fig. 4, and the locus routes KR1, KR2, KR3 and KT1 are identified by using the locus data in the locus data storage unit 40. According to any one of these plurality of locus routes, the one having the shortest distance from the start point node 82 to the destination node 80 is selected, and the shortest locus route is preferentially used. Therefore, non-guided roads (which have not been stored in the data storage unit 37) frequently used by the user, are much used for searching a route. In the processing for searching peripheral links, in particular, the number of times of running through the link is added to the link running cost. Therefore, links that are highly frequently used are much employed for the route. It is also allowable to execute a plural number of times the processing for searching a guide route (step SJ1 of Fig. 15) by using the road data stored in the data region 38c of the data storage unit 37. In the processing for searching a guide route of the second and subsequent times, the road that was once used for other guide route may be used for searching a new guide route like in the process for searching a locus route KR(P) of Fig. 21. Thus, the conditions for searching a route may be varied in the processing for searching a guide route executed a plural number of times. That is, in searching a guide route by using the road data stored in the data storage unit 37, the value of the search cost increases or decreases depending upon the distances of the roads, widths of the roads and frequencies for turning to the right and left, and the weighing added to the data greatly varies depending upon the value of the search cost. In the first processing for searching a guide route, for example, the search cost greatly varies depending upon the distance of the road, and the guide route being identified has a decreased overall distance from the start point to the destination. In the second processing for searching a guide route, the search cost for turning to the right or the left increases at the intersection. Therefore, the guide route that is identified turns to the right and left a decreased number of times as a result of preferentially selecting straight roads as a guide route. Thus, the guide route is identified a plural number of times by using the road data stored in the data storage unit 37, and the locus routes constituted by the locus data in the locus data storage unit 40 are identified by the processings of Figs. 18 to 21. The locus routes are shown on the display 33 together with a plurality of guide routes that have been identified thus far. With the locus routes being displayed, points where the locus routes and guide routes intersect (join) together are branch points, and a route is displayed from any branch point to another branch point. The thus divided routes are displayed in different colors so as to be discriminated from other routes. In Fig. 35, for example, a route is from a node NOD27 to a node NOD26, and another route is from a node NOD24 to a node NOD22. The routes are expressed as a road in different colors or in different forms such as dotted line, one-dot chain line, two-dot chain line, etc. The routes are freely selected as guide routes and are specified by the user. In Fig. 35, for example, a portion of the guide route 88 is used from the start point node 82 to the node NOD27, and the locus route KR3 is used from the node NOD27 to the node NOD22. Then, a route is selected to once return to the node NOD24 from the node NOD22, and the locus route KR1 is selected from the node NOD24 to the destination node 80. These routes form a guide route of navigation. In calculating the running cost, furthermore, the times required for passing the links may be calculated and a guide route may be determined depending upon the required times. Moreover, the times required for running the links and the times TSU required for passing the intersections may be accumulated to find the time required for running the whole locus route that is identified, and these times may be displayed on the screen at the time of displaying the route. Thus, a plurality of guide routes identified by using the road data in the data storage unit 37 and a plurality of locus routes identified by using locus data in the locus data storage unit 40, are freely selected by the user. Thus, a variety of routes can be selected as guide routes, and a guide route preferred by the user can be selected. 20. First Embodiment of a Processing for Deleting Locus Data. Fig. 26 is a flow chart of the processing for deleting locus data (step SA19) of Fig. 9. First, there is calculated the amount of new locus data to be stored in the locus data storage unit 40. In this case, the second RAM 6 temporarily stores the new locus data that are to be stored, and the amount of the stored data is measured to thereby measure the amount of new data. Based on the result of measurement, it is determined whether the new locus data can be stored in the free memory region of the locus data storage unit 40 or not (step SK3). That is, it is determined whether the newly formed locus data or the locus data that increase accompanying the updating of the locus data can be all stored in the locus data storage unit 40. Here, when the free memory region is not sufficient for storing new locus data in the locus data storage unit 40, a predetermined value is unconditionally substituted for the threshold value ZZ (step SK7). The threshold value ZZ creates a condition for automatically and selectively deleting the locus data that have been stored in the locus data storage unit 40. Then, the link data 60 stored in the locus data storage unit 40 are rearranged in the order of from the oldest traveled date-and-hour data SND to the latest traveled date-and-hour data SND (step SK11). The weighing function CD is found as described below depending upon the date-and-hour data SND. As shown in Fig. 36, the functional value CD changes relative to the date-and-hour data SND. In Fig. 36, the date-and-hour data SND become newer toward the side of origin of the X-axis. The functional value CD is found according to, for example, CD = a constant PD/date-and-hour data SND. The constant PD is a value larger than "0". The functional value CD may be an exponential function such as of raising (SND) a constant PE. The constant PE is a value satisfying 0 < α < 1. Therefore, the newer the date-and-hour data SND, the larger the functional value CD. The number of times of running through the links corresponding to the date-and-hour data SND is multiplied by the functional value CD, and the evaluated value KCS (SND) is found (step SK13). The number of times of running is a value obtained by adding up the number of times SEK of running and the number of times ESK of running together. The functional value CD increases as the date-and-hour data SND become newer. Therefore, even when the number of times of running is small, the evaluated value KCS (SND) relatively increases as the traveled date-and-hour data SND become newer. Conversely, the evaluated value KCS (SND) becomes relatively small if the traveled date-and-hour data SND are old despite the number of times of running is large. When the evaluated value KCS is found for the link data 60, the evaluated values KCS are compared with the threshold value ZZ. The link data 60 of which the evaluated values KCS are smaller than the threshold value ZZ are deleted from the locus data storage unit 40 (step SK15). When the link data are deleted as described above, the node data 55 connected to the deleted link data 60 are deleted, too (step SK17). The link is a straight route connecting the two nodes as shown in Fig. 34. Therefore, when a given link is deleted, the nodes connected to both ends of the link are not necessary and are deleted. The nodes connected to the link are determined relying upon the start point node number SNB and end point node number ENB constituting the link data 60. When the node specified by the start point node number SNB and the end point node number ENB is an intersection node, the node is converted into link data (step SK19). Whether the nodes at both ends of the link are intersection nodes or not are determined based upon the intersection number NPB included in the node data 55. The intersection number NPB of node data is " 0" when the node is not an intersection. When the node is an intersection, on the other hand, the intersection number NPB of the node data 55 is the number of the intersection data 65. Therefore, whether the node is an intersection or not is determined depending upon the intersection number NPB. When it is the intersection node, the number of the remaining links connected to the intersection node is calculated based on the number (NIM) of the entering links and the number (NOUT) of the leaving links of the intersection data 65. Here, the remaining links are those links connected to the intersection node other than those links that are to be deleted. When the number of the remaining links exceeds 2, this node is preserved as an intersection node in the locus data storage unit 40. When the number of the remaining links is smaller than 3, however, the intersection node is changed into a general node, the intersection data 65 related to the node are deleted, and the intersection number NPB of the node data 55 is set to " 0" . When the intersection node is changed (step SK19), the free memory capacity of the locus data storage unit 40 is compared again with the amount of data that are to be newly added (step SK21). When the free memory capacity is not sufficient, the threshold value ZZ is increased (step SK23), and the links having evaluated values KCS smaller than the new threshold value ZZ are newly deleted (step SK27). Whether the nodes at both ends of the link to be deleted be deleted or not, is determined based on the contents of the node data 55 (step SK17), and undesired intersection data 65 are deleted (step SK19). Thus, every time when the new locus data temporarily stored in the second RAM 6 are stored in the locus data storage unit 40, it is determined whether the free memory region of the locus data storage unit 40 is large enough or not. When it is determined that the free memory region of the locus data storage unit 40 is not enough, the data related to the links having old traveled date-and-hour data and small numbers of times of running are preferentially deleted. That is, the locus data which are used less frequently are preferentially deleted from the locus data storage unit 40. When the free memory region that is increased by the deletion of locus data of one time, is not still large enough, more severe conditions are established for selectively deleting the data, and the locus data are further deleted. As described above, whenever the new locus data are added to the locus data storage unit 40, the size of the free memory region of the locus data storage unit 40 is checked at all times. This makes it possible to completely prevent the leakage of recording of additional locus data into the locus data storage unit 40. 21. Second Embodiment of the Processing for Deleting Locus Data. Fig. 27 is a flow chart of a second embodiment of the processing for deleting locus data (step SA19) of Fig. 9. In the second embodiment, the locus data are forcibly deleted by the user. First, when an instruction for deleting locus data of locus data storage unit 40 is input to the navigation device through a touch switch 34 (step SK31), a value that is adapted to a processing for forcible deletion is substituted for the threshold value ZZ. The threshold value ZZ used here is different from the threshold value ZZ used in the first embodiment. The link data 60 stored in the locus data storage unit 40 are rearranged in the order of from the oldest traveled date-and-hour data SND to the latest traveled date-and-hour date SND (step SK35). Furthermore, the evaluated value KCS (SND) is found based upon the traveled date-and-hour data SND, number of times ESK of running and the number of times SEK of running of the links (step SK37). In calculating the evaluated value KCS, first, the weighing function value CD is found depending upon the date of the date-and-hour data SND. As shown in Fig. 36, the functional value CD changes depending on the date-and-hour data SND. In Fig. 36, the date of date-and-hour data SND becomes newer toward the side of origin of the X-axis. The functional value CD is found according to, for example, CD = a constant PD/date-and-hour data SND . The constant PD is a value larger than 0. The functional value CD may be an exponential function such as of raising (SND) a constant PE. The constant PE is a value satisfying 0 < α < 1. Therefore, the newer the date-and-hour data SND, the larger the functional value CD. The number of times of running through the links corresponding to the date-and-hour data SND is multiplied by the functional value CD, and the evaluated value KCS (SND) is found (step SK37). The number of times of running is a value obtained by adding up the number of times SEK of running and the number of times ESK of running together. The functional value CD increases as the date-and-hour data SND become newer. Therefore, even when the number of times of running is small, the evaluated value KCS (SND) increases as the traveled date-and-hour data SND become newer. Conversely, the evaluated value KCS (SND) becomes small if the traveled date-and-hour data SND are old despite the number of times of running is large. When the evaluated value KCS is found for the link data 60, the evaluated values KCS are compared with the threshold value ZZ. The number of the links of which the evaluated values KCS are smaller than the threshold value ZZ are shown on the display 33 (step SK39), and the number of the links to be forcibly deleted are shown on the display 33. When the user requests to delete the links of a number larger than the above displayed amount of links to be deleted, i.e., requests to increase the number of the links that are to be deleted (step SK41), the threshold value ZZ is increased, an increased number of the links have evaluated values KCS smaller than the threshold value ZZ, and the number of the links having evaluated values KCS smaller than the threshold value ZZ is shown on the display 33 (step SK39). Then, the processing of the step SK41 is executed again. When it is not selected to increase the number (step SK41) but it is selected to decrease the number of the links to be deleted (step SK45), the threshold value ZZ decreases, the number of the links having evaluated values KCS smaller than the threshold value ZZ decreases, and the number of the links having evaluated values KCS smaller than the threshold value ZZ is shown again on the display 33 (step SK39). Thereafter, the processing of the step SK41 is executed again. The instruction for increasing or decreasing the number of the links is input by using a cursor of the touch switch 34 or the like means. When the number of the links to be deleted is either increased nor decreased by the user (steps SK41, SK45), the links having evaluated values KCS smaller than the threshold value ZZ that has now been set are deleted (step SK49). Then, the data 55 of the nodes connected to the deleted links only are deleted (step SK51). The nodes connected to the links are discriminated relying upon the start point node number SNB and end point node number ENB included in the link data 60. When the node specified by the start point node number SNB and end point node number ENB is an intersection node, then, the node is changed into link data (step SK53). Whether the nodes at both ends of the link are intersection nodes or not are determined based upon the intersection number NPB included in the node data 55. The intersection number NPB of node data is " 0" when the node is not an intersection. When the node is an intersection, on the other hand, the intersection number NPB of the node data 55 is the number of the intersection data 65. Therefore, whether the node is an intersection or not is determined depending upon the intersection number NPB. When it is the intersection node, the number of the remaining links connected to the intersection node is calculated based on the number (NIM) of the entering links and the number (NOUT) of the leaving links of the intersection data 65. Here, the remaining links are those links connected to the intersection node other than those links that are to be deleted. When the number of the remaining links exceeds " 2", this node is preserved as an intersection node. When the number of the remaining links is smaller than " 3 " , however, the intersection node is changed into a general node, the intersection data 65 related to the node are deleted, and the intersection number NPB of the node data 55 is set to " 0". When the intersection node is changed (step SK53), the processing for deleting the locus data of Fig. 27 ends (step SK55). According to the second embodiment of the processing for deleting locus data of Fig. 27 as described above, the processing for deleting links is executed in response to the instruction for deleting the links input by the user irrespective of the free memory capacity of the locus data storage unit 40. The total number of the links stored in the locus data storage unit 40 may also be shown while the number of the links to be deleted is being shown on the display 33 at the step SK39. 22. Third Embodiment of the Processing for Deleting Locus Data. Fig. 28 is a flow chart of a third embodiment of the processing for deleting locus data (step SA19) of Fig. 9. In the processing for deleting locus data of the third embodiment, whether the locus data be stored in the locus data storage unit 40 or not is determined depending upon the geographical position of the locus data. Whether the locus data be input or should not be input to the locus data storage unit 40 is determined depending upon whether one node of the link of the locus data lies within a range of a radius RP(Pn) with the point PT(Pn) as a center. First, the amount locus data temporarily stored in the second RAM 6 is measured (step SR1). The amount of data is compared with the free memory capacity of the locus data storage unit 40 (step SR3). When the free memory capacity of the locus data storage unit 40 is not sufficient for the amount of data in the second RAM 6, or when the user is instructing to start the processing for deleting the locus data (step SR5), it is determined if one node of each link stored in the locus data storage unit 40 lies within a range of the radius RP from each point PT of the point list 66 (step SR7). The links outside the range of storage of the radius RP(Pn) are deleted (step SR9). The data 55 of nodes connected to the deleted links only are deleted, too (step SR11). The nodes connected to the links are discriminated relying upon the start point node number SNB and end point node number ENB included in the link data 60. When the node specified by the start point node number SNB and the end point node number ENB is an intersection node, the node is converted into link data (step ST13). Whether the nodes at both ends of the link are intersection nodes or not is determined by the intersection point number NPB included in the node data 55. When the node is not an intersection point, the intersection number NPB of the node data is "0". Conversely, when the node is an intersection, the intersection number MPB of the node data 55 is the number of the intersection data 65. Based upon the value of intersection number NPB, it is determined whether the node is an intersection or not. When it is an intersection node, the number of the remaining links connected to the intersection node is calculated based upon the number (NIM) of the entering links and the number (NOUT) of the leaving links of the intersection data 65. Here, the remaining links are those links connected to the intersection node but excluding the links that are to be deleted. When the number of the remaining links exceeds "2", the node is kept stored as an intersection node in the locus data storage unit 40. However, when the number of the remaining links is smaller than "3", the intersection node is changed into a general node, and the intersection data 65 related to the node are deleted, and the intersection number NPB of the node data 55 is set to "0". When the data of the intersection node are changed, the processings from the step SR7 are repeated until the processing ends for all links stored in the locus data storage unit 40 (step SR15). When it is determined at the step SR7 that one node of the link is within a range of storage RP of the point PT, the link is preserved in the locus data storage unit 40. When the processing of Fig. 28 is executed for all links stored in the locus data storage unit 40 (step SR15), the routine returns back to the processing of Fig. 9. In the processing of Fig. 28 as described above, the locus data in the vicinities of a particular point only are stored. The particular point may be a point where the ignition key is turned on or off. There may be stored the running locus data of only the vicinities of the point where the ignition key is turned off. The point where the ignition key is turned off is substantially the same point where the ignition key is turned on. 23. Fourth Embodiment of the Processing for Deleting Locus Data. Fig. 30 is a flow chart of a fourth embodiment of the processing for deleting locus data. The overall processing inclusive of the processing for deleting locus data of the fourth embodiment is slightly different from the above-mentioned embodiment. Fig. 29 is a flow chart of the overall processing inclusive of the processing for deleting locus data of the fourth embodiment. Like in the aforementioned embodiments, the overall processing of Fig. 29 starts upon closing the power source circuit and ends upon turning the power source off. The power source is turned on or off upon turning the power source of the navigation device on or off, or upon turning the engine start key (ignition switch) of the vehicle on or off. The point where the ignition switch is turned off is substantially the same as the point where the ignition switch is turned on. In Fig. 29, first, the processing for initialization is effected (step SA1). In the initialization processing, a program for navigation is read out from the data region 38c of the data storage unit 37, and is copied onto the flash memory 3, so that the program of the flash memory 3 is executed. The CPU 2 clears the general-purpose data storage areas in the RAMs such as work memory in the first RAM 5 and the image memory 10. Then, a present position processing is executed to detect the present position of the vehicle (step SA3). That is, the present geographical position of the vehicle is detected by using the GPS receiver 25 and the like. The geographical coordinate data of the vehicle are stored in the first RAM 5 as the present position data MP. The present position data MP are often corrected by data input through the beacon receiver 26 or the data transmitter-receiver 27. In the processing for detecting the present position (step SA3), furthermore, the absolute direction data ZD, relative direction angle data D D and the traveled distance data ML are simultaneously found by utilizing the absolute direction sensor 21, relative direction sensor 22 and distance sensor 23. The absolute direction data ZD, relative direction angle data D and traveled distance data ML are operated to determine the position of the vehicle. The thus determined position of the vehicle is collated with map data stored in a data region 38c of a data storage unit 37, and is corrected and is correctly indicated. Therefore, the present position of the vehicle is correctly indicated even when the GPS signals are not received such as running through a tunnel. The data representing the present position detected by the processing for detecting the present position at the step SA3 are stored in the first RAM 5 as position data PQ1 (step SA5). The position data PQ1 include time data; i.e., the position data of the vehicle and the time data are stored being related to each other. Then, the processing for searching a route is executed (step SA7), the destination is set (step SF1 of Fig. 15), and the processing for searching links is executed (step SF9) to constitute a route. In setting the destination, the geographical coordinates of the destination desired by the user are set as inputted destination data TP. For example, a coordinate position is specified by the user on a road map or on a house map shown on a display 33. When the destination is specified by the user, a central processing unit 1 stores the data related to the geographical coordinates of the destination in the first RAM 5 as inputted destination data TP. In the route search processing, furthermore, an optimum route is identified from the start point of guide route SP to the end point of guide route ED. The optimum route referred to here is the one along which the user can arrive at the destination within the shortest period of time or running the shortest distance, or is the one which includes the roads that were preferentially used by the user in the past. Or, the optimum route may be the one which uses speedways enabling the user to arrive at the destination within the shortest period of time or running the shortest distance. Thereafter, the present position of the vehicle is detected again by a present position detector 20 (step SA9). The processing for deleting the locus data is executed (step SA20) when the vehicle has arrived at the destination of the route (step SA12) that is identified by the step SA7 from the present position. When the vehicle has not arrived at the destination, however, the processing for indicating a next guide route (step SA13) is executed. In the processing for guiding and displaying the route, the guide route identified by the above-mentioned processing for searching a route is shown on the display 33 with the present position of the vehicle as a center. The guide route is shown on the display 33 in a different color so that it can be easily distinguished over other roads. Furthermore, guide information is sounded by voice from a speaker 13 or is shown on the display 33 at all times, so that the vehicle is allowed to run favorably along the guide route. The image data of the guide route are the road map data around the present position or are the house map data around the present position stored in the data region 38c of the data storage unit 37. The road map data and the house map data are changed over depending upon the conditions such as a distance from the present position to a guide point (destination, place to be dropped in or intersection), a running speed of the vehicle, the size of the area that can be displayed, or the switching operation by the user. Near the guide point (destination, place to be dropped in or intersection), the map is shown on an enlarged scale on the display 33. Instead of displaying the road map, the image of a simplified guide route may be shown on the display 33, or a minimum of required data only may be shown omitting geographical data to indicate a guide route, direction to the destination or to the place to be dropped in and the present position only. After the processing for guiding and displaying the route of step SA13, there are successively executed the processing of a running position (step SA15) and other processing (step SA17). In the processing of a running position (step SA15), the data representing the locus of travel of the vehicle are temporarily stored in the second RAM 6, and the locus of travel of the vehicle is compared with the locus data stored in the locus data storage unit 40. The new locus data are added or the locus data are updated, and these locus data are stored in the second RAM 6. The locus data are stored in the locus data storage unit 40 through the processings of the steps SA20 and SA21. At the step SA20, the new locus data stored in the second RAM 6 are selectively deleted. Therefore, even the newly formed locus data are not often stored in the locus data storage unit 40. This step SA20 is a processing for deleting the locus data of the fourth embodiment. After the processing of a running position of the step SA15, other processing (step SA17) is executed, and it is determined if instruction for changing the destination is input by the switching operation of the user or not. When the new locus data stored in the second RAM 6 are stored in the locus data storage unit 40 at the step SA21, the processing is started again from the step SA1. Next, described below with reference to Fig. 30 is the processing for deleting locus data according to the fourth embodiment. First, when it is instructed by the user to delete locus data (step SL1), it is determined whether the locus of travel of the vehicle is in agreement with the guide route or not (step SL3). That is, the locus data representing a locus of travel of the vehicle is stored in the second RAM 6, and the guide route is identified by the processing for searching a route (step SA7) of Fig. 29. The guide route is constituted by the road in the data storage unit 37 and by the links of locus data stored in the locus data storage unit 40. It is then determined if the road numbers or the link numbers constituting the guide route are in agreement with the link numbers of the running locus data of this time stored in the second RAM 6. When they are in agreement, it means that the locus of travel of this time is in agreement with the guide route. When the road numbers and link numbers constituting the guide route are not in agreement with the link numbers stored in the second RAM 6, however, it means that the locus of travel of this time is different from the guide route. When it is determined that the locus of travel of the vehicle is not in agreement with the guide route (step SL3), the links of mismatching portions are checked (step SL5) to pick up links stored in the second RAM 6 that are not in agreement with the link numbers constituting the guide route that is identified. The links of the mismatching portions and the guide route are simultaneously shown being distinguished from each other on the display 33 (step SL7). The guide route and the mismatching links are shown, for example, in different colors. At the same time, the number of times of running through the displayed links in the past is shown (step SL9), and it is specified whether the links be deleted or not (step SL11). In specifying the links to be deleted, the links in the locus of travel are flashed one by one from the start point to the destination. An indication is shown on the display 33 promoting whether a link that is flashing be deleted or not. A command that permits the deletion may be, for example, DELETION OK = Y, N. When the command for deletion is input, the data related to the flashing links are erased from the second RAM 6. The user is allowed to determine whether the locus data related to the links be deleted or not relying upon the number of times of running through the links indicated on the display 33. When the guide route is not in agreement with the locus of travel of this time and the number of times of running through the link is only one time, it can be selected whether the new locus data are stored in the locus data storage unit 40 or not. When a locus of travel different from the guide route has been temporarily stored in the second RAM 6, the locus data corresponding to the locus of travel stored in the second RAM 6 are identified from the locus data storage unit 40. When the corresponding locus data have been stored in the locus data storage unit 40, the locus data stored in the locus data storage unit 40 may be displayed at the time of displaying the links at the step SL9. The locus data related to the links to be deleted may be deleted at the step SL11. When it is determined that the guide route is in agreement with the route of travel of this time (step SL3), the links of locus data stored in the second RAM 6 are all shown on the display 33 (step SL9), and the links constituting a guide route are shown. In showing the links the number of times of running through the links are also shown on the display 33. In this case, furthermore, the guide route is once stored as locus data of travel in the second RAM 6. It is then specified whether the data of the displayed links be deleted or not (step SL11). To specify the links to be deleted, the links in the locus of travel are flashed one by one from the start point to the destination. An indication is shown on the display 33 to promote whether the link that is flashing be deleted or not. When a command for deletion is input, the data related to the flashing link are erased from the second RAM 6. When the number of times of running is two or more, the link data 60 related to the link stored in the locus data storage unit 40 are erased, too. Thus, as the link data temporarily stored in the second RAM 6 are erased, the node data connected to the deleted links only are erased from the second RAM 6. When the erased links have been newly formed as a result of having traveled there along, the node data only are erased from the second RAM 6. When the data related to the nodes have been stored already in the locus data storage unit 40, however, the node data are also erased from the locus data storage unit 40. The nodes connected to the links are discriminated relying upon the start point node number SNB and end point node number ENB included in the link data 60. When the node specified by the start point node number SNB and the end point node number ENB is an intersection node, the node is converted into link data (step SL15). Whether the nodes at both ends of the link are intersection nodes or not is determined based upon the intersection number NPB included in the node data 55. The intersection number NPB of node data is " 0 when the node is not an intersection. When the node is an intersection, on the other hand, the intersection number NPB of the node data 55 is the number of the intersection data 65. Therefore, whether the node is an intersection or not is determined depending upon the intersection number NPB. When it is the intersection node, the number of the remaining links connected to the intersection node is calculated based on the number (NIM) of the entering links and the number (NOUT) of the leaving links of the intersection data 65. Here, the remaining links are those links connected to the intersection node other than those links that are to be deleted. When the number of the remaining links exceeds " 2", this node is preserved as an intersection node in the locus data storage unit 40. When the number of the remaining links is smaller than " 3 , however, the intersection node is changed into a general node. With the intersection node being changed into the general node, the intersection data 65 related to the node are deleted, and the intersection number NPB of the node data 55 is set to " 0". When the intersection node is changed at the step SK53, the processing for deleting locus data of Fig. 30 ends (step SL19). According to the processing for deleting locus data of the fourth embodiment shown in Fig. 30, as described above, it is selected whether the locus data related to the locus of travel of this time near the navigation operation end point (near the destination) are stored in the locus data storage unit 40 or not. When the links related to the locus of travel of this time are those links that were traveled in the past, the numbers of times of running in the past are also shown. Therefore, whether the data related to the links be erased from the locus data storage unit 40 or not is freely determined by the user based on the numbers of times of running. Therefore, the links having small numbers of times of running that need not be stored are positively erased, and only those links (roads) desired by the user are preferentially stored. The conditions for deleting the links of the locus data further include the following conditions. For example, the roads having limitations on the time for passage may be preferentially deleted, and the links having traveled date-and-hour data within particular hours only or outside particular hours may be preferentially deleted. Therefore, the route having limitations on the time for passage is not erroneously identified depending upon the time zone of travel of the vehicle. Moreover, the links on which the average vehicle speed AS is smaller than a predetermined value or larger than a predetermined value, may be preferentially deleted. Through the above-mentioned processing for deleting locus data, the deleted links and the intersections are excluded from the guide roads for searching a route. However, the deleted links and the intersections, or the links and intersections that have not been traveled yet, may be included in the guide roads for searching a route. In calculating the running cost, running distance or running time for searching a route, in this case, the number of times "0" of running is changed into a value such as " 0.5" or " 0.1" other than "0". 24. Processing for Confirming the Storage of Locus Data. Fig. 31 is a flow chart of the processing for confirming the storage of locus data (step SA21) of Fig. 9. First, when the user requests to limit geographical range of storage to limit locus data stored in the locus data storage unit 40 (step SQ1), it is determined whether the start point nodes of the links which are the locus data stored in the second RAM 6 lie within a range of storage of the radius RP with the points PT of point list 66 as centers. Here, the start point node is a node of the side closer to the point PT. When the start point nodes of the links stored in the second RAM 6 do not lie within the radius (range RP of storage) from the point PT, the nodes are deleted from the second RAM 6. Therefore, even the locus data detected by the processing for storing a locus of Fig. 12 are not often stored in the locus data storage unit 40 provided they do not lie within the radius RP (= range RP of storage) from the input point PT. The nodes related to the links only that are deleted from the second RAM 6 at the step SQ5 are like wisely deleted from the second RAM 6 (step SQ7). Whether the nodes are related to the deleted links or not is determined relying upon the start point node number SNB and the end point node number ENB of link data. When the node specified by the start point node number SNB and the end point node number ENB of a link that is to be deleted is an intersection node, the node is converted into link data (step SQ9). Whether the nodes at both ends of the link are intersection nodes or not is determined based upon the intersection number NPB included in the node data 55. When the node is an intersection, the number of the remaining links connected to the intersection node is calculated based on the number (NIM) of the entering links and the number (NOUT) of the leaving links of the intersection data 65. Here, the remaining links are those links connected to the intersection node other than those links that are to be deleted. When the number of the remaining links exceeds 2, this node is preserved as an intersection node in the second RAM 6. When the number of the remaining links is smaller than " 3 , however, the intersection node is changed into a general node. With the intersection node being changed into the general node, the intersection data 65 related to the node are deleted, and the intersection number NPB of the node data 55 is set to "0". When the intersection node is changed at the step SK53, the node coordinates at both ends of the link stored in the second RAM 6 are read out from the second RAM 6, and the coordinates of the node stored in the locus data storage unit 40 are read out from the locus data storage unit 40. A geographical straight distance between the two coordinates is calculated (step SQ11). The geographical straight distance between the two coordinates is a deviation ΔL, and the number of times of running through the link with the above node as a start point or an end point is read out from the locus data storage unit 40 (step SQ13). The geographical coordinate position of the node stored in the locus data storage unit 40 is corrected by a value obtained by dividing the deviation ΔL by (number of times of running + 1) (step SQ15). That is, the position coordinate of the node is detected by the present position detector 20 every time when the vehicle passes through the node, but the coordinate position that is detected does not assume the same value every time. When the position coordinate of the node is varying, the link may not be shown at an optimum position on the display 33. Therefore, the coordinate position of the node stored in the locus data storage unit 40 is averaged by the detected coordinate value every time when the vehicle passes through the node. The detected coordinate positions may all be stored together with the coordinate values to be averaged. That is, the coordinate values that are detected are all stored as the coordinate values of the node every time when the node is passed. An average value of the coordinate values is stored, too. When the deviation ΔL between the coordinate value of the present position that is detected and the coordinate value of the node stored in the locus data storage unit is larger than a predetermined value, the present position may be stored as a new separate node, and a link connected to the node may be newly formed. Thereafter, the unprocessed links are processed through a step SQ19 until the links temporarily stored in the second RAM 6 are all processed (step SQ17). After the links stored in the second RAM 6 are all processed (step SQ17), the locus data temporarily stored in the second RAM 6 are all stored in the locus data storage unit 40 (step SQ21), and the routine returns back to the overall processing of Fig. 9 (step SQ23). In the processing for determining storage of locus data of Fig. 31, only those links within the radius (range of storage) RP from the point PT are stored in the locus data storage unit 40 among the links stored in the second RAM 6. Therefore, the locus data stored are not limitlessly stored in the locus data storage unit 40. Besides, the points PT and the range RP of storage can be freely set and input by the processing for inputting a point of Fig. 10. Thus, storage of locus data is limited to a particular region only, e.g., to the vicinities of the user's home only. When a regional limit is added to the locus data that are stored, undesired links can be excluded in searching a route by using the locus data. According to the navigation device of the present invention as described above, the traveling route of the vehicle is stored as locus data in the locus data storage unit 40, and a guide route is identified by using locus data stored in the locus data storage unit 40. Therefore, the roads preferred by the user are preferentially identified as a guide route. Even a road that is newly constructed and has not been stored in the data storage unit 37, can be stored as a route in the locus data storage unit 40, making it possible to identify a guide route based on the latest road conditions. Not being limited to the above-mentioned embodiments only, the present invention can be modified in a variety of ways without departing from the scope of the invention. In the above-mentioned embodiments, for example, the first RAM 5 may be a writable recording medium such as floppy disk or the like. Furthermore, the navigation device may be equipped with a voice input unit having an analog-to-digital converter. A command may be input to the navigation device by a voice instruction input through the voice input unit. In the navigation device according to the present invention, the function of the locus data storage unit 40 may be provided in the data management center, and the data may be exchanged through VICS, ATIS or the like unit. That is, the locus data related to a route traveled by the vehicle are transmitted to a main storage unit in the data management center through the data transmitter-receiver 27, and are successively stored. The processing for searching a route at the step SA7 is carried out at the data management center by using locus data therein. The data such as conditions for searching destinations such as nearby facilities and conditions for searching a route are sent from the navigation device to the data management center. Based upon these conditions sent from the navigation device, the data management center identifies desired facilities or searches a route to the destination. The data related to the results of identification, picking-up and search are transmitted together with map data to the navigation device from the data management center. Based upon the results of identification, picking-up and search that are received, the navigation device shows the identified facilities on the display 33. Thus, the facilities are identified, picked up and searched based upon the detailed and latest data of the facilities in the vicinities of the present position of the vehicle. In identifying the facilities, furthermore, changes in the environment (newly determined one-way roads, etc.) of the roads can be taken into consideration. In this case, the data related to the facilities stored in the data management center are updated at all times. All processings except the processing for guiding and displaying a route in shown Fig. 9 (step SA13) may not be executed according to the program 38b stored in the data storage unit 37 but may be executed in the data management center. In this case, map data preserved in the data management center are used instead of map data stored in the data region 38c of data storage unit 37, and the data related to a locus of travel of the vehicle is stored and preserved in the data management center. Besides, the present position of the vehicle is detected by using data signals exchanged relative to the data management center. Therefore, the navigation device executes only the processing for guiding and displaying a route, a processing for forming locus data of travel based on the map data transmitted from the data management center, and a processing for transmitting locus data to the data management center. Then, a route can be identified based always upon the latest road data and map data, and more locus data can be stored, and the constituent members of the navigation device as a whole can be decreased. Moreover, the data storage unit 37 and the locus data storage unit 40 may be in the form of a single rewritable storage medium. For example, a storage medium such as PC card or a magnetic-optic disk stores the road data F4 and the programs that are stored in the data storage unit 37 of the above-mentioned embodiments, those data that have been stored in the rewritable storage medium are updated among the locus data of travel, and the locus data that have not been stored in the rewritable storage medium are newly formed. The data storage medium 37 can be set to a computer installed in a room, to a portable computer, or to any other computer. Then, the aforementioned navigation processing can be executed in a place other than in the vehicle. For instance, map can be displayed, motion can be simulated from the present position to the destination, and distance can be calculated among all points along the roads on the map. The portable navigation device can be carried for performing outdoor activities such as cycling, travel, mountain climbing, hiking, fishing, etc. The program and/or the data may be sent (transmitted) to the flash memory 3 from an external system via the data transmitter/receiver unit 27. The external system is a system for feeding the present position data or a data processing center of ATIS (Advanced Traffic Information Service). The external system is installed remote from the navigation device. The program is sent to the navigation device and is designated so as to be installed (transferred/copied) in the flush memory 3. The detecting processing the present position (step SA3), the input processing A point (step SA6), the search processing A route (step SA7), the detecting processing the present position (step SA9), the guide and display processing A route (step SA13), the processing of A traveling position (step SA15), the delete processing locus data (step SA19) or the confirm processing the storage of locus data (step SA21) maybe executed by the above-mentioned external system. The processed results and map data are sent (transmitted) to the navigation device from the external system. Based upon the processed results and map data that are received, the navigation device displays road data and route guide. In this case, the road data, map data, facility data and traffic jam data are processed and controlled at one time by the external system, making it possible to search a route and to set points in an optimum manner. The program is automatically executed when the data storage medium 37 is set to the navigation device, or when the power source circuit of the navigation device is closed, or by being manipulated by the operator. The program and the data are not stored in the RAM 4 in a non-volatile manner and, hence, the installation is executed every time when the power source circuit is closed. When the data can be read out at high speeds from the data storage medium 37, the CPU 2 may directly read the program from the data storage medium 37. The flash memory 3 may be a battery backed-up RAM, an IC memory card or an EPROM. The present invention can be further adapted as a navigation device for a man only to move and as a navigation device for vehicles other than the car, for ships and for aircraft. Besides the map used for the navigation may be a marine chart or a sea bottom chart in addition to the road map. The word "destination" includes the dropping point (place), passing point (place) or objective point (place) in this specification. The word "present position (place) " includes the start position (place) and the word "start position (place) " includes the present position (place) in this specification.

Claims: A device for searching and guiding route, comprising: means for searching at least one of first routes from a start point or a present position and neighborhood to a destination and neighborhood based upon memorized map information (37); means for searching at least one of second routes from the start point (82) or the present position and neighborhood to the destination (80) and neighborhood based upon data related to at least one road or intersection which was passed through before; wherein the first route or the second route is selectable by an operator; and means for guiding a route (88) from the start point (82) or the present position and neighborhood to the destination (80) and neighborhood based upon the selected route. The device according to claim 1, wherein the first route or the second route is selectable at sections from one crossing point to another crossing point or from a diverging point to a junction point by the first route and the second route. The device according to any one of claims 1 or 2, wherein : the selection of the routes can be executed based upon a distance, a time or a passing volume of the each route. The device according to any one of claims 1 to 3, wherein the passing volume through the road or the intersection can be changed and outputted for every entrance direction ,every leaving direction, every covering direction, every running direction or every travelling direction. The device according to any one of claims 1 to 4, wherein the device comprises at least one media which stores at least one computer program. The device according to any one of claims 1 to 5, wherein the intersection consists of joined, diverged or crossed roads. The device according to any one of claims 1 to 6, further comprising means for discriminating and outputting the first route and the second route. The device according to any one of claims 1 to 7, wherein roads for use in searching the route and roads not for use in searching the route can be discriminated and outputted in a different part or overlapped part between the first route and the second route. The device according any one of to claims 1 to 8, further comprising: means for comparing data related to the detected present position and the data related to road or intersection, and for changing a passing volume through the road or the intersection based upon a result of the comparing, wherein the route (88) can be searched based upon larger passing volume through the road or the intersection according to the passing volume. The device according to any one of claims 1 to 9, further comprising: means for displaying the first route and the second route at the same time.

Inventors: NIMURA MITSUHIRO, NIMURA, MITSUHIRO
Applicants: AISIN AW CO, AISIN AW CO., LTD.
Application year: 1997
Main classification: G01C21
IPC codes: G01C21