1.1 HISTORY OF ONLINE NAVIGATION SYSTEMS
It’s tough to believe, but in-car GPS navigation has already been around for more than a decade. Yet were it not for politics—and Einstein’s theory of relativity—we wouldn’t even have it in the first place.
Twenty years ago, a road trip meant a bunch of fold-out maps stuffed into your glove box or your car door panel pockets. Pulling over, unfolding one like a giant newspaper, and then figuring out where you were and how it corresponded to what you were seeing through the windshield was the norm. Along the way, those maps gave way to MapQuest or Yahoo Maps print-outs, and now, fortunately, we’ve got portable navigation devices (PNDs), in-dash GPS systems, and GPS-enabled smartphones. Voice-enabled navigation is more commonplace than ever, as the average PND price keeps getting lower and lower, and high-quality navigation apps are available for most smartphones. Android phones even come with free Google Maps with driving directions.
But to figure out how we got here, we need to first look at how it all began.
Einstein and the Origins of GPS
The U.S. Department of Defense first developed satellite-based global positioning technology for the military. An early satellite-based system dubbed TRANSIT was up and running as early as 1960, with more refined and precise versions involving multiple satellites in general military use by the early 1980s. But it wasn’t until 2000 that precision GPS navigation became open to the public.
Publicly available GPS devices had already been around since the early 1980s. But the military added interference to the signals to ensure their own version was the only one that could be used with any precision. After four years of deliberations, President Clinton signed a bill in 2000 ordering the military to cease scrambling satellite signals used by civilians. This instantly upgraded the accuracy of the few consumer-based systems already in existence by a factor of 10, and opened the doors to a much larger, consumer electronics-based industry for GPS navigation.
Today, a network of 24 U.S.-based GPS satellites orbit the earth, ensuring that at least three are available at any one time for a device’s position request anywhere on the globe. Russia’s own GLONASS system of 22 satellites will soon work with some compatible smartphones in the U.S. for additional accuracy.
Most people don’t realize that in order for global positioning to work, Einstein’s theories of special relativity and general relativity must come into play. On a basic level, GPS finds your position by looking at the time stamp from several satellites orbiting the earth, how far away each one is from you, and how far apart each one is from the other. With that data, the system triangulates your position on the ground. But because of relativity, the clocks in the satellites advance ever so slightly faster than clocks on the surface of the Earth. Plus, moving clocks are slower than ones standing still—again, by a very tiny amount.
While those two effects work against each other, the net result isn’t equal: You end up with a discrepancy of roughly 38 microseconds per day. That incredibly small difference is still enough to report your actual position off by miles, which would render the GPS system worthless, were it not for allowing for relativistic effects.
The Road to In-Car Navigation
Even after 2000, it would be a while before consumers would see GPS navigation in cars en masse. Fortunately, the dot com boom was already coming to the rescue. Beginning around the turn of the century, computer-generated, turn-by-turn directions from websites like MapQuest were a common sight. Not only were these websites godsends for finding unfamiliar hotels and restaurants, but they also assisted plenty of small businesses heavily reliant on driving—think of home improvement contractors, real estate agents, and freight services, just to name a few examples.
Map-based websites weren’t perfect, though. Early routing algorithms were imprecise, and sometimes repeated steps repeatedly—long lists of instructions that basically said to stay on the same road for 12 miles were a constant source of frustration. Plus, you still had to print them out and take them with you, which meant you needed to pull over to read the next few steps. And if you wandered off course, you were just as lost as you would have been with a map—worse if you left the actual map at home, since the printed directions were for one specific route.
1.2 NOISE POLLUTION-AN UNDERRATED PROBLEM
Noise pollution is a growing environmental problem. It’s far from just being an annoyance as it has very real negative effects on humans. But according to today’s scenario noise pollution is not gaining much concern due to ignorance about the serious effect of noise on public community. We are forgetting that noise can also be considered as an important pollutant of the environment causing various mental problems. In humans, it’s been shown that exposure to moderately high level of noise for a continuous amount of time can increase blood pressure and cause other cardiac issues-even if a person is not particularly disturbed.
According to Robert Koch, a Nobel Prize winner German Bacteriologist, “A day will come man will have to fight merciless noise as the worst enemy of health”. In India only, major cities like Mumbai, Delhi, Bangalore etc., are already fighting with this major problem of noise pollution. Delhi, for example, has recorded noise levels double that recommended by the WHO. The ‘wall of noise’ effect created by traffic, as well as explosive noise of firecrackers, used as part of religious practices, have been linked to child deafness. Law is difficult to prosecute due to the lack of instrumentation for measuring noise.
This task of monitoring noise can be performed with the help of sensors, which can be fitted in different areas. Our Project, Noise-Based Navigation System will also work according to the data collected by such sensors and will help in controlling noise pollution to some extent. According to many surveys conducted in past, traffic and related noise were the most experienced i.e. approximately 65% and such noises are the most bothersome noises which can cause major health issues. Some more data suggests car honking itself create 57% of the noise on Indian roads. Therefore, controlling the traffic based on noise intensity could be a good initiative towards controlling the problem of Noise Pollution.
1.3 OVERVIEW OF TECHNICAL AREA
1.3.1 INTRODUCTION TO C++
C++ is a general-purpose programming language. It has imperative, object-oriented and generic programming features, while also providing facilities for low-level memory manipulation.
It was designed with a bias toward system programming and embedded, resource-constrained and large systems, with performance, efficiency and flexibility of use as its design highlights. C++ has also been found useful in many other contexts, with key strengths being software infrastructure and resource-constrained applications, including desktop applications, servers (e.g. e-commerce, web search or SQL servers), and performance critical applications (e.g. telephone switches or space probes)
C++ is standardized by the International Organization for standardization (ISO), with the latest standard version ratified and published by ISO in December 2014 as ISO/IEC 14882:2014 (informally known as C++14). C++ was initially standardized in 1998 as ISO/IEC 14882:2003, standard. The current C++14 standard supersedes these and C++11, with new features and an enlarged standard library.
Throughout C++’s life, its development and evolution has been informally governed by a set of rules that its evolution should follow:
? It must be driven by actual problems and its features should be useful immediately in real world programs.
? Every feature should be implementable (with a reasonably obvious way to do so).
? Programmers should be free to pick their own programming style, and that style should be fully supported by C++.
? Allowing a useful feature is more important than preventing every possible misuse of C++.
? It should provide facilities for organizing programs into well-defined separate parts and provide facilities for combining separately developed parts.
? No implicit violations of the type system (but allow explicit violations; that is, those explicitly requested by the programmer).
? User-created types need to have the same support and performance as built-in types.
? Unused features should not negatively impact created executables (e.g. in lower performance).
? There should be no language beneath C++ (except assembly language).
? C++ should work alongside other existing programming languages, rather than fostering its own separate and incompatible programming environment.
? If the programmer’s intent is unknown, allow the programmer to specify it by providing manual control.
1.3.2 OVERVIEW OF LINUX
Linux is a family of free and open-source software operating systems built around the Linux kernel. Typically, Linux is packaged in a form known as a Linux distribution (or distro for short) for both desktop and server use. The defining component of a Linux distribution is the Linux kernel an operating system kernel first released on September 17, 1991, by Linus Torvalds. Many Linux distributions use the word “Linux” in their name. The Free Software Foundation uses the name GNU/Linux to refer to the operating system family, as well as specific distributions, to emphasize that most Linux distributions are not just the Linux kernel, and that they have in common not only the kernel, but also numerous utilities and libraries, a large proportion of which are from the GNU project. This has led to some controversy.
Linux was originally developed for personal computers based on the Intel x86 architecture but has since been ported to more platforms than any other operating system. Because of the dominance of the Linux kernel-based Android OS on smartphones, Linux has the largest installed base of all general-purpose operating systems. Linux is also the leading operating system on servers and other big iron systems such as mainframe computers, and the only OS used on TOP500 supercomputers (since November 2017, having before gradually eliminated all competitors). It is used by around 2.3% of desktop computers. The Chromebook, which runs the Linux kernel-based Chrome OS, dominates the US K–12 education market and represents nearly 20% of the sub-$300 notebook sales in the US. Linux also runs on embedded systems—devices whose operating system is typically built into the firmware and is highly tailored to the system. This includes TiVo and similar DVR devices, network routers, facility automation controls, televisions, video game consoles and smartwatches. Many smartphones and tablet computers run Android and other Linux derivatives.
The development of Linux is one of the most prominent examples of free and open-source software collaboration. The underlying source code may be used, modified and distributed commercially or non-commercially—by anyone under the terms of its respective licenses, such as the GNU General Public License.
Some of the most popular and mainstream Linux distributions are Arch Linux, CentOS, Debian, Fedora, Gentoo Linux, Linux Mint, Mageia, openSUSE and Ubuntu, together with commercial distributions such as Red Hat Enterprise Linux and SUSE Linux Enterprise Server. Distributions include the Linux kernel, supporting utilities and libraries, many of which are provided by the GNU Project, and usually a large amount of application software to fulfil the distribution’s intended use. Desktop Linux distributions include a windowing system, such as X11, Mir or a Wayland implementation, and an accompanying desktop environment such as GNOME or KDE Plasma; some distributions may also include a less resource-intensive desktop, such as LXDE or Xfce. Distributions intended to run on servers may omit all graphical environments from the standard install, and instead include other software to set up and operate a solution stack such as LAMP. Because Linux is freely redistributable, anyone may create a distribution for any intended use.
Ubuntu is a computer operating system based on the Debian Linux distribution and distributed as free and open source software, using its own desktop environment. It features Unity, a reimagined way to use your computer. Unity is designed to minimize the distractions, give you more room to work, and help you get things done.
A default installation of Ubuntu contains a wide range of software that includes LibreOffice, Firefox, Thunderbird, Transmission, and several lightweight games such as Sudoku and chess. Many additional software packages are accessible from the built in Ubuntu Software Center as well as any other APT-based package management tools. Many additional software packages that are no longer installed by default, such as Evolution, GIMP, Pidgin, and Synaptic, are still accessible in the repositories, installable with the built in Ubuntu Software Center; or by any other APT-based package management tool. Cross-distribution snap packages and flatpaks are also available.
Ubuntu operates under the GNU General Public License (GPL) and all the application software installed by default is free software. In addition, Ubuntu installs some hardware drivers that are available only in binary format, but such packages are clearly marked in the restricted component.
In this project we are using Ubuntu 16.04 LTS, some snapshots for the same can be seen below in Fig 1.1 and Fig 1.2.
Fig 1.1 shows the Ubuntu desktop and the GNOME Terminal in which the commands are given can be seen in Fig 1.2. In a Linux system, the terminal is a command line interface that interprets a user’s command and script files and tells the server operating system what to do with them. When the user first login to the server, it is dropped into the command prompt, where he/she can issue required commands to the server.
Fig 1.1 Ubuntu Desktop
Fig 1.2 Ubuntu Terminal
It is much faster to complete some tasks using an Ubuntu Terminal than with graphical applications and menus. Another benefit is allowing access to many more commands and scripts.
A common terminal task of installing an application can be achieved within a single command, compared to navigating through the Software Centre or Synaptic Manager.
1.4 OVERVIEW OF THE REPORT
This report will comprise of all the phases taken during the development of this project starting from the “Synopsis” till “Evolution of the project”. This report starts with the survey and analysis of the problems faced currently due to constantly increasing noise pollution every day. It consists of the analysis of current scenario followed by problem definition and our proposed solution.
Next chapter consists of the Literature review, which appropriately signifies the problem of noise pollution and various steps taken by our government and other organizations to tackle this serious problem. In this chapter, different research papers are also discussed which shows some existing work in designing efficient navigation algorithms.
After the literature study, we have defined the problem statement on which we are working. A thorough study of the problem statement helped us to simplify our approach and come up with an efficient solution to handle this serious problem of increased noise. With proper definition of the problem statement and having a clear idea of our approach we started implementation part using appropriate tools and technologies described briefly inside in this report. Here we have mentioned all the problems that had arrived during implementation and have found the solution to these problems.
The next chapters included the conclusion, obtained after successful implementation and getting desired results. At last, all the references and sources are mentioned which were referred while writing this thesis report.