Smart City Technologies: Design and Evaluation of an Intelligent Driving Assistant for Smart Parking

— Smart cities technologies are gradually changing our urban landscape thanks to the proliferation of billions of smart devices permanently connected through the internet. Among technologies with the highest impact on citizen’s quality of life are intelligent transportation systems and in particular, smart parking applications. In this paper, we present a study evaluation the design of a smart parking assistant developed in our lab. The system is implemented as a mobile app with an integrated GUI adapted for Android tablets. The app extends common park guidance information systems (PGI) offering suggestions based on parking fee or proximity to the destination. Two novel features – beyond the state of the art of currently available systems – are added: the use of natural language and the ability to react in real-time to changes in parking occupancy. If the number of parking lots drops to a critical level, the application redirects the driver to another parking place. Furthermore, the app includes GPS and Google maps interfacing modules which enable the application to detect the driver location and calculate the nearest car park distance. A group of five experts with a background in interface design and natural language processing evaluated the prototype using Nielsen’s set of heuristics in a think-loud approach. Results and implications for further interaction design are extensively discussed.


I. INTRODUCTION
Estimations suggest that by 2050 more than two-thirds of the world's population is expected to live in cities [1], [2]. This shift from a rural to an urban-dominant planet is an indication that cities might soon need a new infrastructure to cope with the challenges imposed by the growth. In this context, IBM introduces the smart city concept in 2008 as part of their Smarter Planet initiative [3]. The concept builds on the fact that billions of digital devices are permanently connected through the internet producing a vast amount of information. Such devices can be mobile phones, tables, laptops, computers, but also home appliances, monitoring applications and transportation systems. Data analytics can help analysing the information gathered from these devices and converting it into useful knowledge that can help the city to become more efficient, more productive and less costly [4]. Currently, there is no standard definition for a smart city since each city has its own individual structure and needs. As such, there are no mandatory prescriptions on how a smart city should be built [5]. However, regardless of structure and individual needs, there are some technological requirements essential for a city to be called smart [6]. For example, an important requirement refers to the deployment of fiberoptics and wireless broadband internet available through the whole city to all citizens [7]. This requirement is crucial for a smart city foundation as it enables the embedding of sensors and a continuous data exchange between city and digital devices.
Another important requirement refers to the use of smart devices, sensors and agents embedded in the physical space. These sensors ensure that real time data is provided to the city administration around the clock for analytics and knowledge extraction. The process helps the city to make better decisions and to become 'smarter'. Further requirements refer to the development of smart urban spaces by connecting the embedded system, sensors, and smart devices to the ICT infrastructures. Such spaces are areas in the city that include electric car charge points services, Wi-Fi hotspots, information kiosks, energy efficient buildings with 'smart' meters for heating and cooling, etc.
The ICT infrastructure, as well as the network of smart devices and sensors, stimulates the development of applications and e-services for various sectors such as the local business, tourism, transportation, education, health services, building management, etc. Among these sectors, transportation plays perhaps the most crucial role in urban development providing access to work places, education, healthcare, recreation, etc. Cities with well-developed transport infrastructure are more likely to flourish as economic hubs for trade, commerce, tourism, as well as for many others industry sectors [8]. In fact, there is no coincidence that cities ranking high in urban quality have also an efficient and well developed transportation infrastructure.
Given the overall importance of transportation in urban development, many smart city technologies are focusing on developing intelligent transportation systems (ITS) to support the city growth. For example, some of the ITS strategies address the problem of reducing air pollution by promoting bike rental/sharing systems [9], [10], electric vehicles [11], autonomous cars [12] and taxi/buses on demand [13]. Other strategies focus on developing efficient travel information systems [14], ticketing and mobile payments [15] to encourage people to use public transportation. Last, but not least, considerable effort is put into developing smart strategies for traffic planning. Here, traffic management systems [16], as well as smart parking applications [17] are developed with the purpose of monitoring, decongesting and directing drivers toward free parking places. All these strategies are fundamental for cities to become more sustainable, clean and safe living places.
Ones of the biggest problems modern cities are currently facing are traffic jams and sparse parking availability. Urban traffic experts estimate that 30% of vehicles in downtown areas of major cities are looking for a parking place; in average, they spend 7.8 minutes to find one [18]. This search wastes time and increases traffic congestion, fuel expenses, and carbon dioxide emissions. In response to this problem, smart city strategies came up with different smart parking systems meant to reduce the traffic and make parking faster and more efficient. Advantages derived can be significant not only for increasing environment cleanliness and drivers' satisfaction but also for increasing car park operators revenue: the data gathered from smart parking systems would allow for making accurate predictions in parking occupancy enabling adequate pricing strategies [17].
From functional perspective smart parking systems can be divided into 5 different categories [17], [19]: 1) Park Guidance Information (PGI) Systems: Tools aiming to reduce parking search traffic by monitoring car parks and directing drivers to available lots. Since their first introduction in the 70s in Germany, PGIs have been proliferated in many cities around the world. The highest concentration of PGI systems can be in Europe, UK and Japan [20]. PGI systems can include dynamic information about the entire city area or can be limited to a particular parking lot. The systems are useful for reducing the traffic & parking search time and for improving the utilisation and management of parking resources [20]. Some few examples of PGI systems that incorporate mobile apps and online services are SFPark [21] and Streetline [22].
2) Transit-based Smart Parking: A technology similar to PGI. The main purpose of transit-based parking is to encourage commuters to park their vehicles at train stations and use the public transport. The benefit of such systems relies in decreasing environmental pollution and transportation costs for drivers, as well as increasing revenues for public transportation companies. Important for the success of such applications is the optimal selection of park-and-ride points: such points need to minimise the transit time intercepting vehicles in strategic points at the beginning of their journey [17]. An example for this category is BART, a transit-based smart parking project at San Francisco Bay Area [23].
3) Smart Payment Systems: Tools meant to replace traditional parking meters which are considered to be less convenient, causing delays as drivers need to pay cash. Additionally, smart parking systems have cost benefits as they reduce maintenance and staffing requirements. There are various technologies used to enable smart payment. These technologies can use contact methods (using debit or credit cards) and contactless methods (using smart cards, RFID cards or mobile phone services) [19]. For mobile phone services drivers need to download an app and register; the registration makes the payment process more personalised and enable extended functionalities, such as reminding drivers the time booked, extending the car park booking time, etc. [17].

4) E-parking Systems:
Provides drivers with the possibility of reserving parking at the desired location using SMS or online services. E-parking can be combined with smart payment to enable drivers to pay for the parking reservation. So far numerous systems have been implemented in different cities around the world; examples include Click & Park in France [24], Parkme in U.S., Brazil, U.K., Germany [4] and Japan, MobyPark in Netherlands and France [3], e-Parking in Finland [25]. On user-side, the system requires the download of an application. Alternatively, drivers can also book and pay online on the service website.

5) Automated
Parking: A complex technology that allows drivers leave to be automatically parked by a computer system. Automatic parking is especially beneficial for places with limited space allowing for a maximum car park utilisation. Additionally, it eliminates the risk of collision accidents often occurring during parking and caters to the drivers' safety by making the entering the car park unnecessary. A variety of sensors are installed in automated parking systems to enable vehicle detection and further coordination of conveyor belts, lifts and shuttles [17], [19].

A. Features
The system we present in this paper is a smart parking application that builds on PGI systems. The application, however, extends common PGI systems offering suggestions based on parking fee or proximity to the destination. Additionally, the system makes a new contributionbeyond the state of the art of currently available systems -by adding two novel features: the use of natural language and the ability to react in real-time to changes in parking occupancy. Unlike e-parking systems which reserve parking for a nominal fee, our system takes a more sustainable approach: if the number of parking lots drops to critical level, i.e. less than 20, the application redirects the driver to another parking place. In this way, drivers save costs and parking resources are optimal allocated: park places are not kept empty for reservations while drivers with no reservation are struggling to find an empty spot increasing the traffic in the nearby areas.
Furthermore, the app includes GPS and Google maps interfacing modules which enable the application to detect the driver location and calculate the nearest car park distance. The application is developed for Android. A more detailed feature description can be read in [26].

B. Designing A Multimodal User Interface
The first design created for this application is shown in Fig. 1. The interface is divided into two parts: a driving map is placed on the right while parking suggestions are shown on the left. Particular emphasis is put on highlighting the number of parking spaces available: the red (vs. green) label signalizes the number of free parking lots is critical, i.e. in this case 20 lots (see Fig. 1). The dialogue between user and system is captured in a chat window at the bottom right. The application was shown during a public event that gave us the opportunity to observe visitors interacting with the app and collect some informal feedback. The feedback was later incorporated in the second version of the app (see Fig. 2).
Since one of the most recurrent remarks was complaining about the app's obstructed navigation view we chose to redesign the interface by placing the map on the central position. In this way, the driver's visual attention is directed to navigation while important information, i.e. lack of parking lots in a particular location, is delivered via speech.
The new design incorporates a personal calendar, an appointment schedule, and a to-do list. The natural language dialogue is captured on two parallel panels: the system answer is displayed on the left while the voice recognition (user input) appears on the right. The driver has also the option to minimize or maximize the windows using speech or touch input: maximizing the screen would cause the input panels and calendar to slide away while minimalizing would prompt them to reappear. A particularity of our interface is the fact that users need to press a push-to-talk button for the entire duration of the speech input. For this purpose, users can press either a physical button located on the steering wheel (see Fig. 3) or a virtual button in the form of a microphone placed on the interface (see Fig.  2): when speech is detected a red pulsating circle appears indicating the signal is being captured. Both virtual and physical buttons are synchronized. The speech recognition result is displayed as text on the voice recognition panel. If the result is correct users can submit it for further processing by pressing an "enter" button, i.e. the red button with a white arrow on the top (see Fig. 2). If the result is wrong users can type in the correct input. Fig. 3 Push-to-talk button placed on the steering wheel We chose this additional validation step to enable users to correct potential recognition mistakes inherent in a noisy car environment. Details about the training and implementation of the speech and natural language modules can be found in [27].

C. Natural Language Interaction between User and System
The application turns on automatically once the driver starts the car engine. The driver is asked about direction and parking preferences. Here, the driver can use speech or typing (when not driving) to input the desired destination. The available parking data is provided in real-time by the local land authority (LTA). The car parks are by default ranked on distance proximity to the driving location. If the driver dislikes the suggestions he/she can request for alternatives up to 3 times before the application turns into manual mode; in such case, the driver can search manually for available parking. If the number of available lots drops to a critical level the system informs the driver and starts automatically searching for other parking alternatives. The interaction flow is shown in Fig. 4. Since elevated levels of stress and cognitive load -often occurring in traffic conditions -affect the perception an interactive system [28] we tried to find possible solutions to prevent from such situations. For this purpose, we introduced elements of verbal humour. Humour has been shown to have positive effects on task enjoyment [29] and persuasion [30]. The application uses elements of verbal humour in cases where the dialogue cannot resolve satisfactorily the user enquiry. We chose a female text-tospeech (TTS) voice with a higher pitch as recommended in the literature [31]. For example, when the driver keeps rejecting parking suggestions as being too expensive, the application shows disapproval: "Expensive? This is cheap lah 1 ! If you want cheaper can walk! I will drive then alone!" The surprise effect is increased by the fact the system uses local words and expressions when it gets "upset". Further, the system has a prompt response in cases where the noise level reaches a critical level hindering the automatic speech recognition (ASR). Here, the system asks the driver to stop 1 "lah" in Singlish -local English variant spoken in Singapore is a discourse particle i.e. with no semantic meaning attached. 'Lah', usually placed at the end of a statemen is used to emphasize the sentence. talking to other passengers, to turn off the radio or to speak louder. To note that for common native English speakers the system's remarks might sound rude, however, the expressions are common within locals and do not hold the usual negative connotation.

III. RESULTS AND DISCUSSION
To evaluate our second interface design we decided to conduct a more formal user evaluation study with a group of experts. Five experts with a background in interface design and natural language processing were invited to participate. The experts received a short briefing on the study objectives and methodology. They were asked to sign a consent form that would allow us to record the interview sessions during the study. Each expert received a toolkit set comprising three scenarios, a list of Nielsen's heuristics [32] (see Table 1), as well as a blank paper sheet to make notes. The scenarios described different tasks, such as to set-up an event data in the calendar, to maximize/minimize the screens using typing/voice commands, to ask for car parking near a particular location and to argue about parking fees. The sessions were moderated by one of the team members. Another team member was in charge of recording the sessions and setting up the application for the next test. The sessions lasted between 40 minutes and 1 hour. The experts performed the evaluation using the think-loud approach, i.e. explaining their observation while executing the scenarios tasks. After the experiment, the recordings were manually transcribed to facilitate the analysis.

A. Evaluation Results
The application received many positive comments from the evaluators regarding its utility and conceptualization, i.e. easy guided navigation, pleasant interface design, useful added features (calendar & natural language interaction) and organized layout. On the other side, several faults violating the heuristics were detected.
A central point of discussion surrounded the microphone button, the enter button, as well as the push-to-talk method.
The method appeared to create some confusion (H-2): "You need to make it obvious that the record [aka microphone] button is a push-to-talk button. Otherwise, I don't know that I have to do that". is not intuitive to hold the microphone button, users are inclined to press the enter button, which is more eye catching and attractive.
The enter button was found to be not only too attractive but also misleading (H-4): "the enter icon can be mistaken for a 'play' button". One evaluator suggested: "Ideally, you could tap the steering wheel twice to talk and to input speech".
One evaluator found the buttons used to maximize/minimize the screen to be too small and lacking direction for pushing (H-2; H-10). He suggested to replace the green triangles ( Fig. 6 -left) with North-East/South-West arrows or with a cross symbol for closing/opening screens (Fig.  6 -right) as prescribed by Google android standard. Since the interface has 2 different panels they can be close/open independently. One evaluator suggested that drivers might want to maximize/minimize in one single step.
Button sensitivity was found to be lacking in certain moments, i.e. button became suddenly unresponsive (H-9). This was due to a failing the internet/server connection that happened the day we conducted our evaluation.
Further, two evaluators detected a bug (H-5; H-1): "Not clear why when pressing the enter button the system repeats the previous statement?" Finally, concluding the discussion about buttons the evaluators highlighted possible design conflicts when configuring the interface buttons: "Be careful not to reproduce any existing buttons in the car within the interface so that there is no conflict in purpose!" Regarding the use of humor, we received positive reactions from the majority of evaluators: "Humor is good, funny responses might be good, more interactive…" Only one evaluator did not like the witty remarks, saying that "such comments are frustrating, especially when drivers have another cognitive load of driving or handling chat with other people in the car" (H-8).
Another issue our evaluators uncovered was the fact that users perhaps might not need to see the full calendar displayed on the interface (H-8). Instead, it was suggested to allow users to make the calendar view customizable and to display only appointments for the current day. Also, the appointment list should be editable: "Hyperlink the appointments to the calendar app, so that you can see the details of the appointments and edit them"; "a clock, time and today's date will do it, no need of a full calendar".
The evaluators pointed out several issues related to the system feedback in case of errors (H-9): "When there is an error, error messages are not clear enough and users will just keep trying to recover from the error". One evaluator suggested the feedback be more varied depending on the type of error occurring.
Furthermore, evaluators made several suggestions for added features that could enhance the system. One of these features was the option to reserve a certain type of parkingfor example, near the escalator or near an exit meant for handicapped drivers. Another suggested feature was indoor navigation so that drivers "don't have to make unnecessary rounds to find a parking lot". One evaluator mentioned a very useful smart city feature that enables 'car-to-car' communication; such communication protocols should be embedded in the application enabling to 'negotiate' which car will take which lot on each level of the car park "… this will reduce unnecessary detours and useless trips". Furthermore, evaluators mentioned a car 'memory' feature that allows the application to remember the car park lot and to guide the user back to the lot if he/she cannot find it anymore. Last, but not least one evaluator indicated the importance of integrating the app with Waze -an application that monitors traffic conditions -to receive real-time traffic police positions, car accidents, hidden cameras etc.
The results of our evaluation have several design implications as listed below: 1) The push-to-talk method seems to create interaction difficulties; however, the car environment is prone to noises; as such, we cannot avoid using this method; instead, we plan to add short explanatory messages to remind users to keep the microphone icon/physical button pressed while talking; since in the real-word microphones need only to be switched on/off users may wonder why do they have to keep the symbol pressed for the entire duration of their speech; 2) We are aware of the fact that having to validate the speech recognition adds an additional step to the interaction length; on the other side, this step assures that only the correct input is submitted to the system; in the future, the system will enable users to train the ASR modules on their own voice, thus enabling higher recognition rates; however, more tests need to be done to determine whether the system accuracy is acceptable enough before we decide to remove this validation step. For the moment, we will replace the misleading arrow icon with a 'Go' or 'Submit' symbol.
3) The color scheme of the buttons needs to be changed; the red color will be kept only for critical actions, such as for the 'push-to-talk' 4) The green arrows/triangles will be replaced with a close/restore button placed on the panels' corners; this operation will be customizable to allow users to close or restore the panels, one by one or both together. 5) We will take a careful look on how error messages are displayed; the messages should clearly indicate the system status, e.g. when connectivity is low, and help users to recover, e.g. indicate what button users should use for inputting speech etc.
6) The size of the calendar will be reduced to fit only the appointments of the day. However, users will still have the option to navigate to next or previous calendar day 7) Future features, such as traffic information, messaging the parking location and indoor-navigation will be incorporated in the next app version.

8)
Regarding the reservation options, we are not in favour of adding it, since -as explained previously -it would cause financial costs while parking resources would not be optimal allocated; however, we could incorporate an advanced search for 'special lots' that would display the availability in the same way as it does for normal parking lots. In this way, the application would offer useful information also for drivers with special needs while remaining on the sustainable path.

IV. CONCLUSION
The era of smart cities has begun as a consequence of global technological growth. More smart applications are emerging on the market offering users efficient ways to connect to city infrastructure. Our application was design to correspond to this emerging trend.
Despite minor faults highlighted during the evaluation process, our prototype with fully working modules was well received by the experts who gave positive comments concerning its usefulness and conceptualization. Two new concepts were introduced in our prototype: natural language interaction and real-time assistance ability to redirect drivers on sensing parking occupancy threshold.
The evaluation outcome pointed out several areas for improvement concerning the button design, error handling, as well as added functionalities, such as searching for particular types of parking slot or 'memorizing' the parking location. In the future, we plan to incorporate all design implication derived from our evaluation study into the new development cycle.
In addition, we shall strengthen the evaluation process in next iteration by including a severity indication scale which could be used to prioritize the improvements i.e. to address critical severities before the non-critical ones. Also, once critical deficiencies stop surfacing, user evaluation of the application could commence. We will also proceed with more rigorous qualitative data analysis in the next evaluation cycle.