KR20180130663A - 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법 - Google Patents

상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법 Download PDF

Info

Publication number
KR20180130663A
KR20180130663A KR1020170066517A KR20170066517A KR20180130663A KR 20180130663 A KR20180130663 A KR 20180130663A KR 1020170066517 A KR1020170066517 A KR 1020170066517A KR 20170066517 A KR20170066517 A KR 20170066517A KR 20180130663 A KR20180130663 A KR 20180130663A
Authority
KR
South Korea
Prior art keywords
terminal device
service
information
request
user
Prior art date
Application number
KR1020170066517A
Other languages
English (en)
Other versions
KR102419728B1 (ko
Inventor
예성수
박성수
Original Assignee
현대자동차주식회사
기아자동차주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대자동차주식회사, 기아자동차주식회사 filed Critical 현대자동차주식회사
Priority to KR1020170066517A priority Critical patent/KR102419728B1/ko
Priority to US15/805,514 priority patent/US11044325B2/en
Priority to CN201711160107.2A priority patent/CN108989542B/zh
Publication of KR20180130663A publication Critical patent/KR20180130663A/ko
Application granted granted Critical
Publication of KR102419728B1 publication Critical patent/KR102419728B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • G06Q50/40
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/30Transportation; Communications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/14Receivers specially adapted for specific applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/54Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72454User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to context-related or environment-related conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72484User interfaces specially adapted for cordless or mobile telephones wherein functions are triggered by incoming communication events
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/30Security of mobile devices; Security of mobile applications
    • H04W12/35Protecting application or service provisioning, e.g. securing SIM application provisioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/60Substation equipment, e.g. for use by subscribers including speech amplifiers
    • H04M1/6033Substation equipment, e.g. for use by subscribers including speech amplifiers for providing handsfree use or a loudspeaker mode in telephone sets
    • H04M1/6041Portable telephones adapted for handsfree use
    • H04M1/6075Portable telephones adapted for handsfree use adapted for handsfree use in a vehicle
    • H04M1/6083Portable telephones adapted for handsfree use adapted for handsfree use in a vehicle by interfacing with the vehicle audio system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72451User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to schedules, e.g. using calendar applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location

Abstract

상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법에 관한 것으로, 상황 기반 동작 결정 시스템은, 제1 단말 장치, 상기 제1 단말 장치와 통신 가능하게 연결되고, 상기 제1 단말 장치로부터 서비스 제공 요청을 수신하는 서버 장치 및 상기 서버 장치와 통신 가능하게 연결되고, 상기 서버 장치로 상황 정보를 전달하는 제2 단말 장치를 포함하되, 상기 서버 장치는, 상기 서비스 제공 요청에 응하여 상기 제2 단말 장치로부터 전달된 상황 정보를 기초로 서비스 제공 가능 여부를 결정하고, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공할 수 있다.

Description

상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법{A system for determining an action based on a situation, a vehicle for performing the action, and a method thereof}
상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법에 관한 것이다.
차량은, 도로나 선로를 주행하면서 목적지까지 이동 가능한 장치를 의미한다. 통상적으로 차량은, 모터나 엔진과 같은 원동기에 의해 획득된 기계 에너지를 이용하여 차체에 설치된 하나 이상의 차륜을 회전 구동시키고, 차륜의 회전 구동에 따라 도로나 선로를 이동할 수 있다.
이와 같은 차량으로는, 예를 들어, 삼륜 또는 사륜 자동차나, 모터사이클 등의 이륜 자동차나, 건설 기계나, 자전거나 또는 선로 상에 배치된 레일 위에서 주행하는 열차 등이 있을 수 있다.
근자에 차량에는 사용자의 편의를 위하여 다양한 장치가 설치되어 있다. 예를 들어, 차량 내부에는 오디오 비디오 내비게이션(AVN: Audio Video Navigation)이나, 라디오 장치나, 또는 헤드 유닛과 같은 다양한 장치가 설치되어 있을 수 있다. 사용자는 이와 같은 장치를 이용하여, 차량이 주행 중이거나 또는 정차 중인 경우에도, 타인의 휴대폰이나 전화기로 전화를 걸거나, 또는 사용자가 원하는 다양한 정보를 시각적 및/또는 청각적으로 획득할 수 있다.
타인의 상황을 기반으로 적절한 서비스를 결정하거나 또는 서비스에 포함되는 적어도 하나의 동작을 결정하고, 결정된 서비스 또는 동작을 수행할 수 있는 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법을 제공하는 것을 해결하고자 하는 과제로 한다.
상술한 과제를 해결하기 위하여 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법이 제공된다.
상황 기반 동작 결정 시스템은, 제1 단말 장치, 상기 제1 단말 장치와 통신 가능하게 연결되고, 상기 제1 단말 장치로부터 서비스 제공 요청을 수신하는 서버 장치 및 상기 서버 장치와 통신 가능하게 연결되고, 상기 서버 장치로 상황 정보를 전달하는 제2 단말 장치를 포함하되, 상기 서버 장치는, 상기 서비스 제공 요청에 응하여 상기 제2 단말 장치로부터 전달된 상황 정보를 기초로 서비스 제공 가능 여부를 결정하고, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공할 수 있다.
상기 제1 단말 장치는, 상기 서버 장치로 서비스 제공 개시 요청을 전송하고, 상기 서버 장치는, 상기 제공 개시 요청에 따른 서비스에 필요한 정보를 결정하고, 상기 제2 단말 장치로 승인 요청을 전송할 수 있다.
상기 서버 장치는, 상기 제2 단말 장치로 주기적으로 또는 임의적 시점에 상황 정보의 갱신 요청을 전송할 수 있다.
상기 서버 장치는, 서비스 제공이 불가능하다고 결정되면, 상기 제1 단말 장치에 서비스 제공 불가에 대한 안내 메시지를 전송할 수 있다.
상기 서버 장치는, 상기 제2 단말 장치로부터 상황 정보를 다시 전달 받고, 상기 상황 정보를 기초로 서비스 제공 가능 여부를 다시 결정할 수 있다.
상기 서버 장치는, 상기 서비스 제공 가능 여부의 재 결정 결과, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하거나, 또는 상기 제1 단말 장치에 서비스 제공 가능에 대한 안내 메시지를 전송할 수 있다.
상기 서버 장치는, 상기 제1 단말 장치로부터 새로운 서비스 제공 요청을 수신할 수 있다.
상기 서버 장치는, 상기 제1 단말 장치에 추가 정보 전송 요청을 전달할 수 있다.
상기 서비스는, 스케줄 설정을 포함하고, 상기 서버 장치는, 상기 스케줄에 따른 시간이 도래하면, 상기 제1 단말 장치 및 상기 제2 단말 장치 중 적어도 하나로 알림 신호를 전송할 수 있다.
상기 제1 단말 장치는, 상황 인식용 데이터베이스 및 상기 상황 정보를 이용하여 추천 동작 및 상기 추천 동작에 대응하는 추천 지수를 결정하고, 선택 이력 데이터베이스를 이용하여 상기 추천 동작을 검증하고, 검증 결과에 따라서 최종 동작을 결정할 수 있다.
상황 기반 동작 결정 방법은, 제1 단말 장치로부터 서비스 제공 요청을 수신하는 단계, 상기 제1 단말 장치와 상이한 제2 단말 장치로부터 상황 정보를 수신하는 단계, 상기 서비스 제공 요청에 응하여 상기 제2 단말 장치로부터 전달된 상황 정보를 기초로 서비스 제공 가능 여부를 결정하는 단계 및 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하는 단계를 포함할 수 있따.
상황 기반 동작 결정 방법은, 서비스 제공 개시 요청을 수신하는 단계, 상기 제공 개시 요청에 따른 서비스에 필요한 정보를 결정하는 단계 및 상기 제2 단말 장치로 승인 요청을 전송하는 단계를 더 포함할 수 있다.
상황 기반 동작 결정 방법은, 상기 제2 단말 장치로 주기적으로 또는 임의적 시점에 상황 정보의 갱신 요청을 전송하는 단계를 더 포함할 수 있다.
상황 기반 동작 결정 방법은, 서비스 제공이 불가능하다고 결정되면, 상기 제1 단말 장치에 서비스 제공 불가에 대한 안내 메시지를 전송하는 단계를 더 포함할 수 있다.
상황 기반 동작 결정 방법은, 상기 제2 단말 장치로부터 상황 정보를 다시 전달 받는 단계 및 상기 상황 정보를 기초로 서비스 제공 가능 여부를 다시 결정하는 단계를 더 포함할 수 있다.
상황 기반 동작 결정 방법은, 상기 서비스 제공 가능 여부의 재 결정 결과, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하는 단계 및 상기 서비스 제공 가능 여부의 재 결정 결과, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스 제공 가능에 대한 안내 메시지를 전송하는 단계 중 적어도 하나를 더 포함할 수 있다.
상황 기반 동작 결정 방법은, 상기 제1 단말 장치로부터 새로운 서비스 제공 요청을 수신하는 단계를 더 포함할 수 있다.
상황 기반 동작 결정 방법은, 상기 제1 단말 장치에 추가 정보 전송 요청을 전달하는 단계를 더 포함할 수 있다.
상기 서비스는, 스케줄 설정을 포함하고, 상황 기반 동작 결정 방법은, 상기 스케줄에 따른 시간이 도래하면, 상기 제1 단말 장치 및 상기 제2 단말 장치 중 적어도 하나가 알림 신호를 수신하는 단계를 더 포함할 수 있다.
상황 기반 동작 결정 방법은, 상황 인식용 데이터베이스 및 상기 상황 정보를 이용하여 추천 동작 및 상기 추천 동작에 대응하는 추천 지수를 결정하는 단계, 선택 이력 데이터베이스를 이용하여 상기 추천 동작을 검증하는 단계 및 검증 결과에 따라서 최종 동작을 결정하는 단계를 더 포함할 수 있다.
차량은, 외부의 장치와 통신 가능하게 마련된 통신부 및 상황 인식용 데이터베이스 및 상기 상황 정보를 이용하여 추천 동작 및 상기 추천 동작에 대응하는 추천 지수를 결정하고, 선택 이력 데이터베이스를 이용하여 상기 추천 동작을 검증하고, 검증 결과에 따라서 최종 동작을 결정하는 프로세서를 포함하되, 상기 통신부는, 상기 최종 동작의 결정에 응하여, 외부 장치로 서비스 제공 요청을 전송하고, 상기 외부 장치로부터 서비스와 관련된 정보를 수신할 수 있다.
상기 외부 장치는, 상기 서비스 제공 요청에 응하여 상기 제2 단말 장치로부터 전달된 상황 정보를 기초로 서비스 제공 가능 여부를 결정하고, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하도록 제어할 수 있다.
상술한 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법에 의하면, 타인의 상황을 기반으로 사용자가 요구 및 타인의 상황에 부합되면서도 적절한 서비스 또는 적어도 하나의 동작을 결정할 수 있게 되므로, 사용자는 상황에 부합되는 서비스 및 동작을 제공받을 수 있게 된다.
상술한 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법에 의하면, 복수의 사용자가 참여하는 동작을 수행함에 있어서 각각의 사용자의 현재 상황에 따라서 동작의 시나리오를 적절하게 조정할 수 있게 되고, 이에 따라 복수의 사용자의 편의가 개선될 수 있게 된다.
상술한 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법에 의하면, 사용자가 다른 사용자의 상황을 신속하게 판단할 수 있게 되므로, 사용자의 불편함이 감소되고 이에 따라 사용자의 만족도가 증진될 수 있다.
도 1은 상황 기반 동작 결정 시스템의 일 실시예에 대한 개요 도면이다.
도 2는 상황 기반 동작 결정 시스템의 일 실시예에 대한 블록도이다.
도 3은 상황 기반 동작 결정 시스템에 따른 전체적인 동작 흐름을 설명하기 위한 도면이다.
도 4는 상황 기반 동작 결정 시스템에서 다른 사용자의 승인 과정을 설명하기 위한 도면이다.
도 5는 상황 기반 동작 결정 시스템에서 다른 사용자의 거절 과정을 설명하기 위한 도면이다.
도 6은 상황 기반 동작 결정 시스템을 이용하여 제2 사용자의 단말 장치로 통화 발신이 수행되는 과정의 일례를 설명하기 위한 제1 도면이다.
도 7은 상황 기반 동작 결정 시스템을 이용하여 제2 사용자의 단말 장치로 통화 발신이 수행되는 과정의 일례를 설명하기 위한 제2 도면이다.
도 8은 상황 기반 동작 결정 시스템을 이용하여 복수의 사용자 사이의 스케줄을 설정하는 과정의 일례를 설명하기 위한 제1 도면이다.
도 9는 상황 기반 동작 결정 시스템을 이용하여 복수의 사용자 사이의 스케줄을 설정하는 과정의 일례를 설명하기 위한 제2 도면이다.
도 10은 상황 기반 동작 결정 시스템을 이용하여 복수의 사용자 사이의 스케줄을 설정하는 과정의 일례를 설명하기 위한 제3 도면이다.
도 11은 보조 기억 장치에 저장된 데이터베이스의 일례를 도시한 도면이다.
도 12는 상황 인식용 데이터베이스의 일 실시예로 전화 발생 동작에 대응하는 상황 인식용 데이터베이스의 일례를 도시한 도면이다.
도 13은 선택 이력 데이터베이스의 일 실시예로 전화 발생 동작과 관련된 사용 이력 데이터베이스의 일례를 도시한 도면이다.
도 14는 프로세서의 동작에 의한 음성 인식 과정의 일례를 개략적으로 도시한 도면이다.
도 15는 프로세서에 의해 처리되는 프로세스의 일 실시예를 설명하기 위한 제1 도이다.
도 16은 프로세서에 의해 처리되는 프로세스의 일 실시예를 설명하기 위한 제2 도이다.
도 17은 프로세서에 의해 처리되는 프로세스의 일 실시예를 설명하기 위한 제3 도이다.
도 18은 추천 결과를 표시하는 화면의 일 실시예를 도시한 도면이다.
도 19는 추천 결과가 표시되지 않을 경우 표시되는 화면의 일 실시예를 도시한 도면이다.
도 20은 상황 기반 동작 결정 방법의 일 실시예에 대한 흐름도이다.
도 21은 상황 기반 동작 결정 방법의 구체적인 제1 실시예에 대한 흐름도이다.
도 22는 상황 기반 동작 결정 방법의 구체적인 제2 실시예에 대한 제1 흐름도이다.
도 23은 상황 기반 동작 결정 방법의 구체적인 제2 실시예에 대한 제2 흐름도이다.
도 24는 상황 기반 동작 결정 방법의 구체적인 제3 실시예에 대한 제2 흐름도이다.
이하 명세서 전체에서 동일 참조 부호는 특별한 사정이 없는 한 동일 구성요소를 지칭한다. 이하에서 사용되는 '부'가 부가된 용어는, 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예에 따라 '부'가 하나의 부품으로 구현되거나, 하나의 '부'가 복수의 부품들로 구현되는 것도 가능하다.
명세서 전체에서 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 어떤 부분과 다른 부분에 따라서 물리적 연결을 의미할 수도 있고, 또는 전기적으로 연결된 것을 의미할 수도 있다.
또한, 어떤 부분이 다른 부분을 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 부분 이외의 또 다른 부분을 제외하는 것이 아니며, 설계자의 선택에 따라서 또 다른 부분을 더 포함할 수 있음을 의미한다.
제 1 이나 제 2 등의 용어는 하나의 부분을 다른 부분으로부터 구별하기 위해 사용되는 것으로, 특별한 기재가 없는 이상 이들이 순차적인 표현을 의미하는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함할 수 있다.
이하 도 1 내지 도 10을 참조하여 상황 기반 동작 결정 시스템, 적어도 하나의 단말 장치, 적어도 하나의 차량 및 서버 기능을 수행할 수 있는 컴퓨팅 장치(이하 서버 장치)의 일 실시예에 대해서 설명하도록 한다.
도 1은 상황 기반 동작 결정 시스템의 일 실시예에 대한 개요 도면이고, 도 2는 상황 기반 동작 결정 시스템의 일 실시예에 대한 블록도이다.
도 1에 도시된 바를 참조하면, 상황 기반 동작 결정 시스템(1)은, 소정의 통신 네트워크를 이용하여 상호 통신 가능하게 마련된 복수의 단말 장치(10, 10-1, 20, 20-1) 및 서버 장치(300)를 포함할 수 있다.
소정의 통신 네트워크는 유선 통신 네트워크, 무선 통신 네트워크 및 유무선 통신 네트워크를 포함할 수 있다.
유선 통신 네트워크는 케이블을 이용하여 복수의 단말 장치(10, 10-1, 20, 20-1) 및 서버 장치(300)가 상호 통신을 수행할 수 있도록 마련된다. 여기서, 케이블은, 예를 들어, 페어 케이블, 동축 케이블, 광섬유 케이블 또는 이더넷 케이블을 포함할 수 있다.
무선 통신 네트워크는, 근거리 통신 네트워크 및 이동 통신 네트워크 중 적어도 하나를 포함할 수 있다. 근거리 통신 네트워크는 근거리 통신 기술을 이용하여 구현된 것일 수 있으며, 근거리 통신 기술은, 근거리에 위치한 장치 상호 간의 통신을 수행할 수 있도록 마련된 기술을 의미하며, 예를 들어, 블루투스(Bluetooth), 저전력 블루투스(Bluetooth Low Energy), 캔(CAN) 통신, 와이 파이(Wi-Fi), 와이파이 다이렉트(Wi-Fi Direct), 와이맥스(Wi-MAX), 초광대역 통신(UWB, ultra wideband), 지그비(zigbee), 적외선 통신(IrDA, infrared Data Association) 또는 엔에프씨(NFC, Near Field Communication) 등과 같이 설계자가 고려할 수 있는 소정의 근거리 통신 표준을 이용하여 구현된 것 수 있다. 이동 통신 기술은, 근거리 또는 원거리에 위치한 장치 상호 간의 통신을 수행할 수 있도록 마련되며, 예를 들어, 3GPP, 3GPP2 또는 와이맥스 계열 등과 같이 이동 통신 표준과 같이 설계자가 고려할 수 있는 소정의 이동 통신 표준을 이용하여 구현된 것일 수 있다. 이동 통신 표준은, 예를 들어, GSM(Global System for Mobile Communication), EDGE(Enhanced Data GSM Environment), WCDMA(Wideband Code Division Multiple Access), CDMA(Code Division Multiple Access), TDMA(Time Division Multiple Access) 등을 포함 가능하다.
유무선 통신 네트워크는, 유선 통신 네트워크 및 무선 통신 네트워크의 조합에 의해 구현될 수 있다.
복수의 단말 장치(10, 10-1, 20, 20-1) 각각은, 필요에 따라, 사용자로부터 명령이나 데이터를 입력 받거나, 및/또는 각종 상황 정보를 수집할 수 있다.
상황 정보는, 단말 장치(10, 10-1, 20, 20-1) 또는 단말 장치(10, 10-1, 20, 20-1)의 사용자의 현재, 과거 또는 미래의 상황과 관련된 정보를 포함한다. 예를 들어, 상황 정보는, 단말 장치(10, 10-1, 20, 20-1) 또는 서버 장치(300)에 특정 사용자에 대한 특정 시점에서의 스케줄이 이미 설정되어 있다거나, 단말 장치(10, 10-1, 20, 20-1)의 알림부 출력부(171, 271)가 무음으로 설정되었다거나, 단말 장치(10, 10-1, 20, 20-1)의 위치가 소정의 위치에 해당한다거나, 및/또는 사용자 또는 설계자에 의해 미리 정의된 설정에 해당한다는 정보 등을 포함할 수 있다.
또한, 복수의 단말 장치(10, 10-1, 20, 20-1) 각각은, 사용자로부터 입력된 명령이나 데이터 및 수집된 상황 정보 중 적어도 하나를 서버 장치(300)로 전송할 수 있으며, 서버 장치(300)로부터 각종 정보나 명령 등을 수신할 수 있다.
단말 장치(10, 10-1, 20, 20-1)는, 예를 들어, 셀룰러폰, 스마트폰, 태블릿 피씨, 데스크톱 컴퓨터, 랩톱 컴퓨터, 내비게이션 장치, 가정용 게임기, 휴대용 게임기, 개인용 디지털 어시스턴트(PDA, Personal Digital Assistant), 스마트 안경, 스마트 반지 또는 스마트 시계와 같은 웨어러블 디바이스, 차량(10-1, 20-1), 기계 장치, 각종 로봇 또는 로봇 청소기, 텔레비전, 냉장고 또는 세탁기 등과 같은 가전 기기 등을 포함할 수도 있다. 이외에도 단말 장치(10, 10-1, 20, 20-1)는 설계자가 고려할 수 있는 다양한 장치를 이용하여 구현 가능하다.
각각의 단말 장치(10, 10-1, 20, 20-1)는 서로 동종의 단말 장치일 수도 있고, 이종의 단말 장치일 수도 있다. 예를 들어, 어느 하나의 단말 장치(10, 이하 제1 단말 장치)는 스마트폰이고, 다른 하나의 단말 장치(20, 이하 제2 단말 장치)는 스마트폰이며, 또 다른 단말 장치(20-1, 이하 제3 단말 장치)는 차량일 수 있다.
실시예에 따라서, 어느 하나의 단말 장치(10-1, 이하 제4 단말 장치)는, 다른 단말 장치(10)와 페어링되어 서버 장치(300)나 다른 단말 장치(10, 20, 20-1)와 통신 가능하게 마련된 것일 수도 있다. 예를 들어, 제4 단말 장치(10-1)는 차량이고, 차량은 블루투스 통신 표준을 이용하여 제1 단말 장치(10)와 페어링되어, 제1 단말 장치(10)를 통하여 서버 장치(300), 제2 단말 장치(20) 및 제3 단말 장치(20-1) 중 적어도 하나와 통신을 수행할 수도 있다.
단말 장치가 차량(10-1, 20-1)인 경우, 차량(10-1, 20-1)은 상술한 바와 같이 다른 단말 장치(10)와의 블루투스 페어링 등을 통해 통신 네트워크에 접속할 수도 있고, 또는 직접 내장 설치된 통신 모듈을 이용하여 통신 네트워크에 접속할 수도 있다.
이하 설명의 편의를 위하여, 제1 단말 장치(10) 및 제2 단말 장치(20)를 포함하는 일례를 들어 상황 기반 동작 결정 시스템(1)에 대해 기술하도록 하나, 상술한 바와 같이, 상황 기반 동작 결정 시스템(1)은 제1 단말 장치(10) 및 제2 단말 장치(20) 이외에도 제3 단말 장치(20-1) 및 제4 단말 장치(10-1)와 같이 더 많은 수의 동종 또는 이종의 단말 장치를 포함할 수 있음은 자명하다.
도 2에 도시된 바를 참조하면, 제1 단말 장치(10)는, 일 실시예에 있어서, 프로세서(100), 보조 기억 장치(140), 주 기억 장치(149), 통신부(180) 및 사용자 인터페이스(190)를 포함할 수 있다. 또한, 실시예에 따라서, 제1 단말 장치(10)는, 클락(151), 위치 정보 획득부(153) 및 알림부(170) 중 적어도 하나를 더 포함할 수도 있다.
프로세서(100), 보조 기억 장치(140), 주 기억 장치(149), 클락(151), 위치 정보 획득부(153), 알림부(170), 통신부(180) 및 사용자 인터페이스(190) 중 적어도 둘은, 회로, 케이블 및 무선 통신 네트워크 중 적어도 하나를 이용하여 상호 데이터를 송수신할 수 있도록 마련될 수 있으며, 무선 통신 네트워크는 예를 들어 블루투스, 와이파이, 와이파이 다이렉트 및/또는 캔 통신 등을 포함할 수 있다.
프로세서(100)는, 제1 단말 장치(10)의 동작에 필요한 각종 연산 및 처리를 수행하고, 제1 단말 장치(10)의 각각의 부품에 제어 신호를 전송하여 제1 단말 장치(10)의 전반적인 동작을 제어할 수 있도록 마련된다.
일 실시예에 의하면, 프로세서(100)는, 중앙 처리 장치(CPU, Central Processing Unit), 마이크로 컨트롤러 유닛(MCU, Micro Controller Unit) 및 전자 제어 유닛(ECU, Electronic Control Unit) 중 적어도 하나를 포함할 수 있으며, 중앙 처리 장치, 마이크로 컨트롤러 유닛 및 전자 제어 유닛은 적어도 하나의 반도체 칩, 기판 및 관련 부품을 이용하여 구현된 것일 수 있다.
프로세서(100)는, 특정한 동작을 수행하기 위해 사전에 프로그래밍된 것일 수도 있고, 및/또는 특정한 동작을 수행하기 위해 주 기억 장치(149)나 보조 기억 장치(140)에 저장된 소정의 알고리즘 또는 소정의 알고리즘을 포함하는 프로그램 제품을 구동시킬 수 있도록 마련된 것일 수도 있다. 여기서 프로그램 제품은, 예를 들어, 애플리케이션으로 지칭될 수 있다. 애플리케이션은, 실시예에 따라서, 별도로 마련된 외부의 애플리케이션 제공 서버 장치로부터 제공된 것일 수도 있다.
일 실시예에 의하면, 프로세서(100)는, 사용자가 입력부(191)를 이용하여 서비스 제공 개시 명령이나 서비스 제공 명령을 입력한 경우, 입력된 서비스 제공 개시 명령이나 서비스 제공 명령에 응하여 통신부(180)를 제어하여 서비스 제공 개시 명령이나 서비스 제공 명령에 대응하는 신호를 서버 장치(300)로 전송할 수 있다.
서비스는 상황 기반 동작 결정 시스템(1)에 포함되는 단말 장치(10, 10-1, 20, 20-1) 및 서버 장치(300) 중 적어도 하나에 의해 수행되는 일련의 동작들의 집합 또는 동작들에 대한 시나리오를 포함할 수 있다. 이와 같은 일련의 동작들의 수행에 의해서 단말 장치(10, 10-1, 20, 20-1)의 사용자는 정보를 제공받거나, 및/또는 원하는 행동을 할 수 있게 된다. 서비스는, 예를 들어, 통화 연결 서비스, 메시지 전송 서비스, 영상 데이터나 음악 데이터 등과 같은 데이터 공유 서비스, 스케줄 공유 서비스, 스케줄 설정 서비스 및/또는 목적지 공유 서비스 등을 포함할 수 있다.
또한, 프로세서(100)는, 상황 정보를 획득하고, 주기적으로, 임의적 시점에 또는 서버 장치(300)로부터 상황 정보 업데이트 요청을 수신한 시점에, 획득한 상황 정보를 통신부(180)를 제어하여 서버 장치(300)로 전송할 수도 있다. 상황 정보는, 예를 들어, 클락(151), 위치 정보 획득부(153), 통신부(180) 및/또는 사용자 인터페이스(190) 등에서 전달된 전기적 신호를 기반으로 획득된 것일 수 있다.
또한, 프로세서(100)는, 실시예에 따라서, 통신부(180)를 제어하여, 제1 단말 장치(10)가 제1 단말 장치(10)와 제2 단말 장치(20) 사이의 통화 동작을 수행할 수 있도록 할 수도 있다.
또한, 프로세서(100)는, 클락(151)에서 전달된 현재 시간에 대한 정보를 이용하여, 미리 정의된 시간, 일례로 스케줄 상의 예정 시간이나 또는 예정 시간에 선행하여 별도로 정의된 시간 등이 도래하였는지 여부를 판단하고, 판단 결과를 기초로 알림부(170)를 제어할 수도 있다.
또한, 프로세서(100)는, 실시예에 따라서, 제1 단말 장치(10)가 목적지 설정이나, 현 위치에서 목적지까지의 거리 또는 이동 소요 시간의 연산 및/또는 목적지까지의 경로 안내 동작을 수행하도록 할 수도 있고, 사용자에 의해 입력된 정보 또는 제1 단말 장치(10)의 이동 경로를 이용하여, 사용자가 목적지로 출발한 것이 확인된 경우, 목적지로의 출발에 대한 정보를 생성하고, 생성된 정보를 서버 장치(300) 및/또는 제2 통신부(20)로 전송하도록 통신부(180)를 제어할 수도 있다.
이외에도 프로세서(100)는, 설계자가 고려 가능한 적어도 하나의 동작을 각종 연산 및 제어 동작을 통하여 수행할 수도 있다.
보조 기억 장치(140)는, 제1 단말 장치(10)의 동작과 관련된 각종 정보를 저장할 수 있다.
보조 기억 장치(140)는, 플래시 메모리 장치, SD(Secure Digital) 카드, 솔리드 스테이트 드라이브(SSD, Solid State Drive), 하드 디스크 드라이브(HDD, Hard Disc Drive), 자기 드럼, 콤팩트 디스크, 레이저 디스크, 자기 테이프, 광자기 디스크 및/또는 플로피 디스크 등과 같이 데이터를 영구적 또는 반영구적으로 저장 가능한 적어도 하나의 저장 매체를 이용하여 구현될 수 있다.
주 기억 장치(149)는, 프로세서(100)의 동작에 필요한 데이터, 알고리즘 및 프로그램 제품 중 적어도 하나를 일시적 또는 비일시적으로 저장할 수 있다. 예를 들어, 주 기억 장치(149)는, 보조기억장치(140)로부터 호출된 알고리즘이나 프로그램 제품을 일시적으로 또는 비일시적으로 저장하고, 프로세서(100)의 호출에 따라 이를 프로세서(100)에 제공함으로써, 프로세서(100)가 보다 신속하게 필요한 동작을 수행할 수 있도록 할 수 있다.
주 기억 장치(149)는, 롬(ROM) 및/또는 램(RAM)과 같은 반도체 저장 매체를 이용하여 구현될 수 있다. 롬은, 예를 들어, 통상적인 롬, 이프롬(EPROM), 이이프롬(EEPROM) 및/또는 마스크롬(MASK-ROM) 등을 포함할 수 있다. 램은 예를 들어, 디램(DRAM) 및/또는 에스램(SRAM) 등을 포함할 수 있다.
클락(151)은, 현재의 시간에 대한 정보를 획득할 수 있다. 획득된 시간에 대한 정보는, 전기적 신호의 형태로 프로세서(100) 및 보조 기억 장치(140) 중 적어도 하나로 전송될 수 있다.
위치 정보 획득부(153)는, 제1 단말 장치(10)의 현재 위치에 대한 정보(이하 위치 정보)를 수신, 측정 또는 결정하고, 수신, 측정 또는 결정된 위치 정보를 프로세서(100)로 전달할 수 있다. 위치 정보는, 예를 들어, 위도 및 경도나, 지피에스(GPS: Global Positioning System) 좌표나, 현 위치에 대한 좌표를 이용하여 결정된 주소나 도로 명칭이나, 또는 현 위치에 대한 좌표를 이용하여 결정된 특정한 지역에 대한 지칭 등을 포함할 수 있다. 특정한 지역에 대한 지칭은, 사용자에 의해 정의된 것일 수 있으며, 예를 들어, 집이나 회사 등의 단어를 포함할 수 있다.
위치 정보 획득부(153)는, 예를 들어, 글로벌 내비게이션 위성 시스템(GNSS: Global Navigation Satellite System)을 이용하여 위치 정보를 획득할 수 있다. 여기서, 글로벌 내비게이션 위성 시스템은 인공위성으로부터 수신한 전파신호를 이용하여 수신 단말기의 위치를 산출할 수 있는 여러 항법 시스템 중 적어도 하나를 포함할 수 있다. 예를 들어, 글로벌 내비게이션 위성 시스템은, 지피에스, 갈릴레오(Galileo), 글로나스(GLONASS: Global Orbiting Navigational Satellite System), 콤파스(COMPASS), 인도 지역위성항법시스템(IRNSS: Indian Regional Navigational Satellite System) 및/또는 준텐초(QZSS: Quasi-Zenith Satellite System) 등과 같은 항법 시스템을 포함할 수 있다.
실시예에 따라서, 제1 단말 장치(10)는 주변 상황에 대한 정보를 획득할 수 있는 다양한 장치를 더 포함할 수 있다. 예를 들어, 제1 단말 장치(10)는, 주변의 광량을 감지할 수 있는 조도 센서나, 사용자의 심장 박동 등을 감지할 수 있는 심장 박동 감지 센서나, 주변의 소음을 측정할 수 있는 소음 센서나, 사용자 등의 체온을 측정할 수 있는 체온계나, 또는 이외 설계자가 고려할 수 있는 다양한 장치 중 적어도 하나를 더 포함할 수도 있다.
알림부(170)는, 광, 음향, 진동 등의 형태로 미리 정의된 바에 따라 알림 신호를 출력하여 사용자에게 제공할 수 있다. 알림부(170)는, 예를 들어, 알림음 출력부(171), 진동부(172) 및 조명부(173) 중 적어도 하나를 포함 가능하다.
알림음 출력부(171)는, 알림 신호를 소정의 음향으로 출력할 수 있도록 마련되고, 예를 들어 스피커 장치를 이용하여 구현 가능하다. 알림음 출력부(171)는 생략될 수 있으며, 이 경우 사운드 출력부(197)가 알림음 출력부(171)의 기능을 수행할 수도 있다.
진동부(172)는, 제1 단말 장치(10)를 진동시켜 제1 단말 장치(10)가 진동의 형태로 알림 신호를 출력할 수 있도록 한다. 진동부(172)는 예를 들어 소정의 회전 축을 따라 회동하는 회전축부재가 마련된 모터와, 모터의 회전축에서 벗어난 위치에 설치된 적어도 하나의 추를 이용하여 구현될 수 있다.
조명부(173)는, 광을 방출함으로써 알림 신호를 사용자에게 제공할 수 있다. 조명부(173)는, 필라민트 전구나 엘이디(LED, Light Emitting Diode) 등을 이용하여 구현 가능하다.
사용자는, 선택적으로 알림부(170)의 알림음 출력부(171), 진동부(172) 및 조명부(173) 중 적어도 하나만이 동작하도록 제1 단말 장치(100)를 설정할 수 있으며, 이에 따라 제1 단말 장치(100)는, 각각 유음 모드(음향 출력 모드), 진동 모드 및 무음 모드 중 적어도 하나로 설정될 수 있게 된다.
통신부(180)는, 제2 단말 장치(20) 및 서버 장치(300) 중 적어도 하나의 통신부(280, 350)와 유선 통신 네트워크 및 무선 통신 네트워크 중 적어도 하나를 이용하여 통신 가능하게 마련된다.
제1 단말 장치(10), 통신부(180)를 통해, 제2 단말 장치(20) 및 서버 장치(300) 중 적어도 하나로부터 적어도 하나의 명령, 요청 또는 데이터, 일례로 각종 메시지를 수신하거나, 또는 2 단말 장치(20) 및 서버 장치(300) 중 적어도 하나로 적어도 하나의 명령이나 요청, 일례로 서비스 제공 요청 신호 또는 데이터를 전송할 수 있다.
통신부(180)는, 필요에 따라, 제1 단말 장치(10)와 차량(10-1)을 통신 가능하게 연결하여, 제1 단말 장치(10)와 차량(10-1)이 서로 페어링 될 수 있도록 할 수도 있다.
통신부(180)는, 근거리 통신 모듈 및 이동 통신 모듈 중 적어도 하나를 이용하여 구현 가능하며, 근거리 통신 모듈은 상술한 근거리 통신 기술(표준)을 이용하여 외부의 장치(10-1, 20, 300)와 통신을 수행할 수 있도록 마련되고, 이동 통신 모듈은 상술한 이동 통신 기술(표준)을 이용하여 외부의 장치(20, 300)와 통신을 수행할 수 있도록 마련된다.
사용자 인터페이스(190)는, 사용자와의 상호 소통을 통하여, 사용자로부터 적어도 하나의 명령을 입력 받거나, 및/또는 사용자에게 각종 정보를 시각적 또는 청각적으로 제공할 수 있도록 마련된다.
일 실시예에 따르면, 사용자 인터페이스(190)는 표시부(191), 입력부(193), 사운드 입력부(195) 및 사운드 출력부(197) 중 적어도 하나를 포함할 수 있다. 표시부(191), 입력부(193), 사운드 입력부(195) 및 사운드 출력부(197) 중 적어도 하나는, 설계자의 선택에 따라서 생략 가능하다.
표시부(191)는, 적어도 하나의 정보를, 다양한 숫자, 기호, 문자, 도형 및/또는 모양을 이용하여 시각적으로 사용자에게 제공할 수 있다. 예를 들어, 표시부(191)는 서버 장치(300)로부터 수신된 통화 불과 안내 메시지, 통화 가능 메시지, 스케줄 설정 가능 메시지, 스케줄 설정 완료 메시지 및/또는 기타 서비스 제공에 필요한 메시지를 표시할 수 있다.
표시부(191)는, 예를 들어, 플라즈마 디스플레이 패널(PDP, plazma display panel)이나, 발광 다이오드(LED, light emitting diode) 디스플레이 패널이나, 또는 액정 디스플레이(LCD, liquid crystal display) 등을 이용하여 구현될 수 있다. 여기서, 발광 다이오드 패널은, 유기 발광 다이오드(OLED, organic light emitting diode) 등을 포함할 수 있으며, 유기 발광 다이오드는 수동형 유기 발광 다이오드(PMOLED, Passive Matrix OLED) 또는 능동형 유기 발광 다이오드(AMOLED, Active Matrix OLED)를 포함할 수 있다.
입력부(193)는, 사용자로부터 명령, 요청이나 데이터를 입력 받을 수 있다. 예를 들어, 입력부(193)는, 서비스 제공 요청, 서비스 제공 개시 요청, 통화 발신 명령, 스케줄 설정 명령 또는 기타 사용자가 입력 가능한 적어도 하나의 명령을 수신하고, 수신한 명령에 대응하는 전기적 신호를 출력할 수 있다. 출력된 전기적 신호는 프로세서(100)로 전달될 수 있다.
입력부(193)는, 예를 들어, 물리 버튼, 노브, 트랙볼, 트랙패드, 터치패드, 터치스크린, 조이스틱, 및/또는 동작 감지 센서 등을 포함할 수 있다. 여기서 터치스크린은 표시부(191) 및 입력부(193)의 기능을 모두 수행할 수 있다. 이외에도 데이터나 명령의 입력을 위하여 설계자가 고려 가능한 다양한 입력 장치 중 적어도 하나가 입력부(193)로 채용될 수 있다.
사운드 입력부(195)는, 외부로부터 음파를 수신하고, 수신한 음파를 전기적 신호로 변환함으로써, 수신된 음파에 대응하는 전기적 신호를 출력할 수 있다. 사운드 입력부(195)가 수신하는 음파는 사용자의 발화에 따라 발생된 음성을 포함할 수 있다. 사운드 입력부(195)는, 예를 들어, 마이크로폰을 이용하여 구현 가능하다.
사운드 입력부(195)에 의해 출력된 전기적 신호는 프로세서(100)로 전달될 수 있으며, 프로세서(100)는 수신한 전기적 신호를 이용하여 음성 인식을 수행하고, 음성 인식 결과에 따라서 소정의 동작을 수행할 수 있다.
사운드 출력부(197)는, 음성 등을 포함하는 음향을 출력할 수 있도록 마련된다. 사운드 출력부(197)는, 예를 들어, 전기적 신호를 음파로 변환하는 적어도 하나의 스피커 장치를 이용하여 구현될 수 있으며, 또한 이어폰이나 헤드폰 등을 이용하여 구현될 수도 있다.
사운드 입력부(195)에 수신된 음성은 통신부(180)를 통하여 서버 장치(300) 및 제2 단말 장치(20) 중 적어도 하나로 전송될 수 있으며, 사운드 출력부(197)는 서버 장치(300) 및 제2 단말 장치(20) 중 적어도 하나로부터 수신한 음성을 외부로 출력할 수 있다. 이에 따라 사용자는 제1 단말 장치(10)를 이용하여 제2 단말 장치(20)와 음성 통화를 할 수 있게 된다.
제2 단말 장치(20)는, 도 2에 도시된 바와 같이, 일 실시예에 있어서, 프로세서(200), 보조 기억 장치(240), 주 기억 장치(249), 통신부(280) 및 사용자 인터페이스(290)를 포함할 수 있으며, 또한, 실시예에 따라서, 제2 단말 장치(20)는, 클락(251), 위치 정보 획득부(253) 및 알림부(270) 중 적어도 하나를 더 포함할 수도 있다. 여기서, 알림부(270)는 알림음 출력부(271), 진동부(272) 및 조명부(273) 중 적어도 하나를 포함 가능하며, 사용자 인터페이스(290)는 입력부(291), 표시부(293), 사운드 입력부(295) 및 사운드 출력부(297) 중 적어도 하나를 포함할 수 있다.
제2 단말 장치(20)의 프로세서(200), 보조 기억 장치(240), 주 기억 장치(249), 클락(251), 위치 정보 획득부(253), 알림부(270), 통신부(280) 및 사용자 인터페이스(290)는, 제1 단말 장치(10)의 프로세서(100), 보조 기억 장치(140), 주 기억 장치(149), 클락(151), 위치 정보 획득부(153), 알림부(170), 통신부(180), 사용자 인터페이스(190)와 실질적으로 동일하거나 또는 일부 변형된 기능을 수행 가능하도록 마련된 것일 수 있다. 이하, 설명의 중복을 회피하기 위하여 제2 단말 장치(20)의 프로세서(200), 보조 기억 장치(240), 주 기억 장치(249), 클락(251), 위치 정보 획득부(253), 알림부(270), 통신부(280) 및 사용자 인터페이스(290)의 각각의 구조, 동작 및 기능에 대한 자세한 설명은 생략한다.
서버 장치(300)는, 단말 장치(10, 20)로부터 명령, 요청 또는 데이터 등을 신호의 형태로 전송 받고, 전송 받은 명령, 요청 또는 데이터 등에 따라서 서비스에 대응하는 동작을 수행하고, 동작 수행 결과에 따른 명령, 요청 또는 데이터 등을 단말 장치(10, 20)로 전송할 수 있다.
서버 장치(300)는, 예를 들어, 서버 기능을 수행하기 위해 마련된 컴퓨터 장치를 포함할 수 있으며, 예를 들어, 랩톱 컴퓨터, 노트북 컴퓨터 및/또는 네트워크 결합 스토리지(NAS, Network Attached Storage) 등을 이용하여 구현될 수 있다. 또한, 서버 장치(300)는, 실시예에 따라서, 셀룰러폰, 스마트폰, 태블릿 피씨, 가정용 또는 휴대용 게임기, 웨어러블 디바이스, 차량, 기계 장치, 각종 로봇 또는 가전 기기 등을 이용하여 구현되는 것도 가능하다.
일 실시예에 따르면, 서버 장치(300)는, 프로세서(310), 보조 기억 장치(330) 및 통신부(350)를 포함할 수 있다.
프로세서(310)는, 연산 및 처리를 통하여 서버 장치(300)에 필요한 각종 동작을 판단 및 결정하거나, 또는 서버 장치(300)의 전반적인 동작을 제어할 수 있다. 프로세서(310)는, 예를 들어, 중앙 처리 장치, 마이크로 컨트롤러 유닛 또는 전자 제어 장치를 이용하여 구현 가능하다.
일 실시예에 의하면, 프로세서(310)는, 복수의 단말 장치(10, 20) 중 적어도 하나로부터 전송된 상황 정보를 기반으로 서비스가 제공 가능한 상황인지 판단하고, 판단 결과를 기초로 서비스 제공 가능 여부를 판단할 수 있다. 또한, 프로세서(310)는, 판단 결과에 따라서 각각의 단말 장치(10, 20) 중 적어도 하나로 소정의 데이터를 전송하도록 통신부(350)를 제어할 수도 있다.
또한, 프로세서(310)는 어느 하나의 단말 장치, 일례로 제1 단말 장치(10)로부터 전송된 요청에 따라서, 전송된 요청에 대응하는 요청 신호를 생성하고, 생성된 요청 신호를 다른 단말 장치, 일례로 제2 단말 장치(20)로 전송할 수도 있으며, 요청 신호에 대응하여 제2 단말 장치(20)로부터 전송되는 응답 신호를 수신하고, 응답 신호에 따라 이후 수행될 동작을 결정할 수도 있다.
또한, 프로세서(310)는 제1 단말 장치(10) 및 제2 단말 장치(20) 상호 간의 음성 통화나, 메시지 전송이나, 또는 각종 데이터의 전송을 중계할 수도 있다.
또한, 프로세서(310)는, 복수의 단말 장치(10, 20) 중 적어도 하나로 소정의 요청 신호, 일례로 상황 정보 업데이트 요청 신호를 전송하여, 복수의 단말 장치(10, 20)가 요청 신호에 대응하는 정보, 일례로 상황 정보를 전송하도록 할 수도 있다.
뿐만 아니라, 프로세서(310)는, 복수의 단말 장치(10, 20) 중 적어도 하나로부터 전송된 데이터를 보조 기억 장치(330)에 일시적 또는 비일시적으로 저장시킬 수도 있다.
이외에도 프로세서(310)는, 설계자가 고려할 수 있는 다양한 동작을 수행할 수 있도록 설정 또는 설계된 것일 수 있다.
보조 기억 장치(330)는, 서버 장치(300)의 동작에 필요한 각종 정보를 저장할 수 있다. 보조 기억 장치(330)는, 예를 들어, 주 기억 장치 및 보조 기억 장치를 포함할 수 있으며, 주 기억 장치는 램이나 롬을 이용하여 구현 가능하고, 보조 기억 장치는 통상적으로 이용되는 반도체 저장 장치, 자기 디스크 저장 장치, 자기 드럼 저장 장치 또는 콤팩트 디스크 등과 같은 저장 매체를 이용하여 구현될 수 있다.
보조 기억 장치(330)는, 서비스의 수행에 필요한 각종 정보를 저장할 수도 있다. 예를 들어, 보조 기억 장치(330)는 서비스의 구현을 위해 필요한 각종 정보를 저장할 수도 있고, 어느 하나의 단말 장치(10, 20)의 사용자에 의해 요청된 스케줄을 저장할 수도 있고, 어느 하나의 단말 장치(10, 20)로부터 전송된 영상이나 음악과 같은 멀티미디어 데이터를 저장할 수도 있으며, 및/또는 복수의 단말 장치(10, 20) 사이의 통화 내역을 저장할 수도 있다.
통신부(350)는, 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나와 통신 가능하게 마련된다. 통신부(350)는 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나로부터 전송된 각종 명령, 요청 및 데이터 중 적어도 하나를 수신하고, 수신한 명령, 요청 및 데이터 중 적어도 하나를 프로세서(310) 및 보조 기억 장치(330) 중 적어도 하나로 전달할 수 있다.
통신부(350)는, 상술한 유선 통신 네트워크, 무선 통신 네트워크 및 유무선 통신 네트워크 중 적어도 하나에 접속하여, 외부의 단말 장치(10, 20)와 통신을 수행할 수 있다.
이하 도 3 내지 도 10을 참조하여, 상황 기반 동작 결정 시스템에 의해 수행되는 서비스의 전체적인 흐름에 대해 설명하도록 한다.
도 3은 상황 기반 동작 결정 시스템에 따른 전체적인 동작 흐름을 설명하기 위한 도면이다.
도 3에 도시된 바에 의하면, 서버 장치(300)는 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나에 상황 정보 업데이트 요청 신호를 전송할 수 있다(10, 11).
상황 정보 업데이트 요청 신호의 전송(10, 11)은, 주기적으로 수행될 수도 있고, 비주기적으로 수행될 수도 있으며, 또는 특정한 조건이 만족된 경우에 한하여 수행될 수도 있다. 예를 들어, 상황 정보 업데이트 요청 신호의 전송(10, 11)은, 서비스 제공이 개시된 이후에 한하여 주기적으로 또는 비주기적으로 수행될 수도 있다.
상황 정보 업데이트 요청 신호의 수신(10, 11)에 응하여, 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나는, 서버 장치(20)로 상황 정보를 전송할 수 있다(12, 12-1). 여기서, 상황 정보는, 예를 들어, 보조 기억 장치(140), 주 기억 장치(149), 클락(151), 위치 정보 획득부(153), 사용자 인터페이스(190), 또는 기타 사용자나 주변의 상태나 상황 등을 감지할 수 있는 센서 등을 이용하여 입력 또는 획득된 것일 수도 있다.
이후, 제1 단말 장치(10)는, 서비스 제공 요청 신호를 통신부(180)를 이용하여 서버 장치(300)로 전송할 수 있다. 이 경우, 제1 단말 장치(10)는 소정의 트리거(trigger)를 이용하여 서비스 제공 요청 신호를 서버 장치(300)로 전송할 수 있다.
일 실시예에 의하면, 제1 단말 장치(10)의 입력부(191)의 조작 동작이나 사운드 입력부(195)를 통한 음성의 입력이 트리거로 이용될 수 있다. 예를 들어, 사용자가 제1 단말 장치(10)의 입력부(191)를 조작하여, 서비스 제공 요청 명령을 입력하면, 제1 단말 장치(10)는 명령의 입력에 응하여 서비스 제공 요청 명령에 대응하는 서비스 제공 요청 신호를 생성할 수 있다.
또한, 다른 실시예에 의하면, 후술하는 바와 같이, 최종 동작의 결정 동작 역시 서비스 제공 요청 신호 발신에 대한 트리거로 이용될 수도 있다.
이뿐만 아니라, 설계자가 고려 가능한 다양한 동작이 상술한 트리거로 이용될 수도 있다.
서버 장치(300)는, 적어도 보조 기억 장치(330)에 저장된 제2 단말 장치(20) 또는 제2 단말 장치(20)의 사용자와 관련된 상황 정보를 기반으로 상황을 판단하고, 판단 결과를 기초로 서비스의 수행 가능 여부 및 서비스에 따라 서버 장치(300)가 수행할 동작을 결정할 수 있다(14). 여기서, 상황은 제2 단말 장치(20)의 사용자와 관련된 것일 수 있다. 또한, 필요에 따라, 서버 장치(300)는 서버 장치(300)가 수행할 동작과 더불어 제1 단말 장치(10)가 수행할 동작을 더 결정할 수도 있다. 또한, 서버 장치(300)는 서비스가 수행 가능한 경우와 수행 불가능한 경우에 나누어 서버 장치(300)가 수행할 동작을 더 결정할 수도 있다.
또한, 서버 장치(300)는, 실시예에 따라서, 제1 단말 장치(10) 또는 제1 단말 장치(10)의 사용자와 관련된 상황 정보를 더 이용하여 상황을 판단하는 것도 가능하다.
서비스가 가능하고, 또한 서버 장치(300)에 의해 서비스의 제공을 위해 필요한 동작이 결정되면, 서버 장치(300)는 제1 단말 장치(10)의 사용자 및 제2 단말 장치(20)의 사용자 중 적어도 하나에게 서비스를 제공할 수 있다(15). 예를 들어, 서버 장치(300)는, 서비스의 제공을 위하여 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나로 필요한 정보를 제공할 수 있다.
실시예에 따라서, 서버 장치(300)는 판단 결과를 제1 단말 장치(10)로 전송할 수도 있다. 구체적으로, 서버 장치(300)는 판단된 상황 및 이에 따른 결정 결과 중 적어도 하나에 대한 정보를 제1 단말 장치(10)로 전달할 수 있다.
예를 들어, 만약 서비스가 불가능한 경우라면, 서버 장치(300)는 서비스 제공 불가에 대한 안내 메시지를 전송할 수 있다. 서비스 제공 불가에 대한 안내 메시지는, 예를 들어, 서비스 제공 불가에 대한 사실과, 서비스가 제공 불가능한 이유에 대한 정보를 포함할 수 있다.
이에 따라, 제1 단말 장치(10)의 사용자는 서비스 제공 요청에 대한 서버 장치(300)의 판단 결과를 확인할 수 있게 되고, 또한 이에 대응하여 적절한 행동을 취할 수 있게 된다.
도 3에는 제1 단말 장치(10) 및 제2 단말 장치(20)만이 도시되어 있으나, 상술한 바와 같이 제1 단말 장치(10) 및 제2 단말 장치(20) 이외에 제3 단말 장치(20-1) 및 제4 단말 장치(10-1)와 같이 더 많은 수의 단말 장치가 서버 장치(300)와 연결된 경우에도, 상술한 서비스 요청, 상황 판단 및 서비스 제공 과정은 동일하게 또는 일부 변형을 거쳐 적용될 수 있다.
이하 도 3에 도시된 상황 기반 동작 결정 시스템에 의한 서비스 제공 과정의 다양한 실시예에 대해 설명한다.
도 4는 상황 기반 동작 결정 시스템에서 다른 사용자의 승인 과정을 설명하기 위한 도면이고, 도 5는 상황 기반 동작 결정 시스템에서 다른 사용자의 거절 과정을 설명하기 위한 도면이다.
일 실시예에 의하면, 서버 장치(300)는 복수의 사용자의 단말 장치(10, 20)의 사용자로부터 동의를 받은 경우에 한하여, 복수의 사용자의 단말 장치(10, 20)에 상술한 서비스를 제공할 수 있도록 마련될 수 있다. 다시 말해서, 제1 단말 장치(10)의 사용자가, 제2 단말 장치(20)의 사용자가 서비스에 참여하기를 요구하는 경우, 서버 장치(300)는 제2 단말 장치(20)의 사용자의 동의 또는 승인이 존재하는 하에서 제2 단말 장치(20)에 대한 상황을 판단하거나, 또는 제2 단말 장치(20)에 서비스를 제공할 수 있다.
구체적으로, 도 4에 도시된 바를 참조하면, 제1 단말 장치(10)의 사용자는 적어도 하나의 서비스, 일례로 전화 서비스나 스케줄 설정 서비스를 최초로 시작하기 위한 명령(이하 서비스 제공 개시 명령)을 입력하고, 제1 단말 장치(10)는 서비스 제공 개시 명령에 대응하여 서비스 제공 개시 요청 신호를 생성한 후, 생성한 서비스 제공 개시 요청 신호를 서버 장치(300)로 전송할 수 있다(300).
서비스 제공 개시 명령은, 제1 단말 장치(10)의 사용자가 서비스 제공에 참여하길 원하는 단말 장치의 사용자, 일례로 제2 단말 장치(20)의 사용자에 대한 정보를 포함할 수 있다.
서비스 제공 개시 요청 신호의 수신에 응하여, 서버 장치(300)는 사용자가 요청하는 서비스에 대한 필요 정보를 선택할 수 있다(22). 서비스에 대한 필요 정보는, 서비스의 수행을 위해 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나로부터 획득해야 할 정보를 포함한다. 예를 들어, 서비스가 통화 연결 서비스인 경우, 서비스 필요 정보는, 예를 들어, 제2 단말 장치(20)의 전화 번호, 알림부(270)의 설정 상태, 제2 단말 장치(20)가 통화 중인지 여부, 제2 단말 장치(20)의 위치, 제2 단말 장치(20)의 보조 기억 장치(240)에 저장된 스케줄 및/또는 기타 설계자가 필요하다고 고려할 수 있는 각종 정보를 포함할 수 있다.
서버 장치(300)는, 제1 단말 장치(10)의 사용자의 요구나 설정에 따라서, 제2 단말 장치(20)로 승인 요청 신호를 전송할 수 있다(23). 또한, 서버 장치(300)는, 승인 요청 신호와 더불어, 제2 단말 장치(20)로 서비스 필요 정보를 전송하여 제2 단말 장치(20)에 서비스 필요 정보에 해당하는 정보를 전송해줄 것도 요청할 수 있다.
제2 단말 장치(20)의 사용자는 승인 요청 신호에 응하여, 사용자 인터페이스(290)의 입력부(291) 또는 사운드 입력부(295)를 이용하여 승인 명령을 입력할 수 있다. 입력된 승인 명령에 따라서 제2 단말 장치(20)는 승인에 대응하는 신호를 서버 장치(300)로 전송한다(24).
승인에 대응하는 신호의 수신에 응하여, 서버 장치(300)는 제1 단말 장치(10)로 서비스가 제공될 수 있다는 신호를 전송할 수 있다(25). 이에 따라, 제2 단말 장치(20) 및 제2 단말 장치(20)의 사용자 중 적어도 하나의 상황을 기반으로 서비스의 제공 개시가 가능하게 되었음을 제1 단말 장치(10)의 사용자에게 알릴 수 있다.
이를 위해 서버 장치(300)는 서비스 제공 개시 안내 메시지를 제1 단말 장치(10)로 전송하여, 서비스의 제공이 가능하게 되었다는 사실을 사용자에게 알릴 수 있다. 이 경우, 서비스 제공 개시 안내 메시지는, 예를 들어, 단문 문자 서비스(SMS: Short Message Service), 멀티미디어 문자 서비스(MMS: Multimedia Message Service), 이메일, 인스턴트 메시징(instant messaging), 또는 기타 적절한 텍스트 또는 영상 전송 방법을 이용하여 제1 단말 장치(10)로 전송될 수도 있다. 또한, 서비스 제공 개시 안내 메시지는, 음성 등을 이용하여 제1 단말 장치(10)로 전송될 수도 있다.
반대로 도 5에 도시된 바와 같이, 서비스 제공 개시 명령에 대한 신호가 서버 장치(300)로 전송되고(26), 필요 정보가 선택된 후(27), 승인 요청 신호를 제2 단말 장치(20)에 보낸 경우, 제2 단말 장치(20)의 사용자는, 승인 요청 신호에 응하여, 입력부(291) 또는 사운드 입력부(295)를 이용하여 거절 명령을 입력할 수도 있다. 그러면, 제2 단말 장치(20)는, 입력된 거절 명령에 따라서, 거절에 대응하는 신호를 서버 장치(300)로 전송할 수 있다(29).
서버 장치(300)는 거절에 대응하는 신호의 수신에 응하여, 제1 단말 장치(10)로 제2 단말 장치(20)의 사용자가 거절하였다는 사실을 안내하는 메시지(이하 거절 안내 메시지)를 전송할 수 있다(30). 이 경우, 거절 안내 메시지는, 예를 들어, 단문 문자 서비스, 멀티미디어 문자 서비스, 이메일, 인스턴트 메시징 또는 기타 적절한 텍스트, 음성 또는 영상 전송 방법을 이용하여 제1 단말 장치(10)로 전송될 수도 있다.
이 경우, 제1 단말 장치(10)에는, 제2 단말 장치(20) 및 제2 단말 장치(20)의 사용자의 상황을 이용하여 수행되는 서비스가 제공되지 않게 되며, 아울러 제2 단말 장치(20)에도, 제1 단말 장치(10) 및 제1 단말 장치(10)의 사용자의 상황을 이용하여 수행되는 서비스가 제공되지 않게 된다.
이하 도 6 및 도 7을 참조하여, 상황 기반 동작 결정 시스템에 의해 통화 서비스가 제공되는 일례에 대해 설명한다.
도 6은 상황 기반 동작 결정 시스템을 이용하여 제2 사용자의 단말 장치로 통화 발신이 수행되는 과정의 일례를 설명하기 위한 제1 도면이고, 도 7은 상황 기반 동작 결정 시스템을 이용하여 제2 사용자의 단말 장치로 통화 발신이 수행되는 과정의 일례를 설명하기 위한 제2 도면이다.
도 6에 도시된 바를 참조하면, 서비스의 제공이 개시된 이후, 서버 장치(300)는, 주기적으로, 비주기적으로, 또는 조건의 만족에 따라서 상황 정보 업데이트 요청 신호를 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나에 전송하고(31, 32). 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나는, 상황 정보 업데이트 요청 신호의 수신에 응하여 상황 정보(33, 34)를 미리 정의된 바에 따라 또는 사용자의 선택에 따라서 서버 장치(300)로 전송할 수 있다(33, 34).
상술한 상황 정보의 업데이트 과정(31 내지 34)은, 실시예에 따라, 후술하는 동작(35 내지 38)이 수행되는 동안, 계속해서 수행될 수도 있다.
소정의 트리거의 발생에 따라서 제1 단말 장치(10)는 통화를 발신한다(35). 이 경우, 트리거는, 사용자에 의한 제1 단말 장치(10)의 조작을 포함할 수 있으며, 또는 후술하는 바와 같이 최종 동작의 결정 동작을 포함할 수도 있다.
서버 장치(300)는, 통화의 발신에 응하여 제2 단말 장치(20) 및 제2 단말 장치(20)의 사용자 중 적어도 하나에 대한, 하나 또는 둘 이상의 상황을 판단할 수 있다(36).
예를 들어, 서버 장치(300)는, 보조 기억 장치(330) 또는 제2 단말 장치(20)의 주 기억 장치(249)나 보조 기억 장치(240)에 저장된 제2 단말 장치(20)의 사용자의 스케줄을 열람하고, 스케줄 상 제2 단말 장치(20)의 사용자가 통화 수신을 할 수 없는 상황, 일례로 강의 중이거나 회의 중인 상황인지 여부를 판단할 수 있다. 또한, 다른 예를 들어, 서버 장치(300)는 보조 기억 장치(330) 등에 저장된 제2 단말 장치(20)의 알림부(271)의 설정 상태를 확인하고, 제2 단말 장치(20)가 소정의 모드, 예를 들어 진동 모드 또는 무음 모드로 설정된 상태인지 여부를 판단할 수 있다. 또 다른 예를 들어, 서버 장치(300)는 보조 기억 장치(330) 등에 저장된 제2 단말 장치(20)의 위치에 대한 정보를 확인하고, 제2 단말 장치(20)가 불가능한 위치, 예를 들어, 극장 내부에 위치하고 있는지 여부 등을 확인할 수도 있다.
서버 장치(300)는, 하나 또는 둘 이상의 상황을 확인하고, 확인 결과를 기초로 통화가 가능한지 여부를 결정할 수 있다(37). 이 경우, 서버 장치(300)는, 보조 기억 장치(330) 등에 저장된 통화 가능 여부 결정과 관련된 데이터베이스 등을 열람하여 확인된 상황에 대응하는 데이터를 획득한 후, 획득한 데이터에 따라 통화가 가능한 상태인지 여부를 결정할 수도 있다.
만약 통화가 가능하다고 판단 및 결정되면, 서버 장치(300)는 제1 단말 장치(10)와 제2 단말 장치(20)를 연결하여 상호 간에 통화가 수행되도록 할 수 있다(38). 예를 들어, 제1 단말 장치(10)의 통화 발신에 대응하여 제2 단말 장치(20)에 호를 송신할 수 있으며, 제2 단말 장치(20)는 호의 수신에 응하여 통화 수신 알림 신호를 알림음 출력부(271) 등을 통해 외부로 출력하게 된다. 만약 제2 단말 장치(20)의 사용자가 통화 수신을 승낙하면, 서버 장치(300)는 제1 단말 장치(10)와 제2 단말 장치(20)를 통신 가능하게 연결하여 제1 단말 장치(10)와 제2 단말 장치(20) 사이에서 통화가 수행되도록 할 수 있다.
한편, 도 7에 도시된 바와 같이, 서버 장치(300)가 판단 결과에 따라서 통화가 불가능하다고 결정할 수도 있다.
구체적으로, 도 7에 도시된 바를 참조하면, 상술한 바와 같이, 상황 정보 업데이트 요청이 주기적, 비주기적 또는 조건의 만족에 따라 발신되고, 상황 정보가 전송되어 갱신될 수 있다(41 내지 44). 실시예에 따라서, 상황 정보의 업데이트는 후술하는 동작(45 내지 54)이 수행되는 동안, 계속해서 수행되는 것도 가능하다.
상술한 바와 같이, 소정의 트리거의 발생에 응하여 제1 단말 장치(10)가 통화를 발신하면(45), 서버 장치(300)는, 통화의 발신에 응하여 제2 단말 장치(20) 및 제2 단말 장치(20)의 사용자 중 적어도 하나에 대한, 하나 또는 둘 이상의 상황을 판단할 수 있다(46).
상술한 바와 같이, 서버 장치(300)는 제2 단말 장치(20)의 사용자의 스케줄, 제2 단말 장치(20)의 알림부(271)의 설정 상태 및/또는 제2 단말 장치(20)의 위치에 대한 정보 등을 확인하고, 통화가 불가능하다고 판단할 수 있다(47).
만약 통화가 불가능하다고 결정되면, 서버 장치(300)는 제1 단말 장치로 통화 불가 안내 메시지를 전송할 수 있다(48). 통화 불가 안내 메시지는, 통화가 불가능하다는 사실을 포함할 수 있으며, 필요에 따라서, 통화가 불가능한 이유에 대한 정보를 더 포함할 수도 있다. 또한, 통화 불가 안내 메시지는, 통화가 가능한 시간에 대한 정보를 더 포함할 수도 있다.
서버 장치(300)는 이후 주기적으로 또는 비주기적으로 제2 단말 장치(20) 또는 제2 단말 장치(20)의 사용자가 통화가 가능한 상태인지 여부를 판단할 수 있다(49, 50). 이 경우, 서버 장치(300)는 제2 단말 장치(20)에 의해 갱신된 상황 정보를 이용하거나(49), 또는 별도로 마련된 클락 등을 이용하여 제2 단말 장치(20) 또는 제2 단말 장치(20)의 사용자가 통화가 가능한 상태인지 여부를 판단할 수도 있다.
이 경우, 서버 장치(300)는, 미리 설정된 조건이 만족되면 통화가 가능하게 되었다고 판단 및 결정할 수 있다(51). 예를 들어, 시간이 경과되고 제2 단말 장치(20)의 사용자의 스케줄에 통화 불가능한 상황이 기록되어 있지 않거나, 또는 갱신된 상황 정보에 따라서 제2 단말 장치(20)의 위치가 통화가 가능한 위치로 이동하거나, 제2 단말 장치(20)가 유음 모드로 설정된 경우, 서버 장치(300)는 통화가 가능하게 되었다고 결정할 수 있다(51).
만약 통화가 가능하게 된 경우, 서버 장치(300)는, 텍스트, 영상 또는 음성 등을 통하여 제1 단말 장치(10)로 통화가 가능하게 되었다는 메시지(이하 통화 가능 메시지)를 전송할 수 있다(52). 통화 가능 메시지는, 제1 단말 장치(10)의 표시부(193)나 사운드 출력부(194)를 통해 사용자에게 제공될 수 있다.
통화 가능 메시지에 의해 제1 단말 장치(10)에 표시되는 메시지는, 실시예에 따라서, 통화를 수행할 것인지 여부를 질의하기 위한 선택지를 포함할 수 있다. 제1 단말 장치(10)의 사용자는, 통화 가능 메시지를 열람하고, 통화 발신을 수행할지 여부를 결정할 수 있다. 사용자가 제2 단말 장치(20)로 통화 발신을 수행할 것을 결정하고, 제1 단말 장치(10)의 입력부(191)를 조작하여 통화 발신 명령을 입력하거나, 또는 상술한 복수의 선택지 중 통화 발신에 대한 선택지를 선택하면, 제1 단말 장치(10)는 서버 장치(300)로 통화를 발신한다(53).
서버 장치(300)는, 제2 단말 장치(20)의 사용자가 통화 수신의 승낙에 따라서, 제1 단말 장치(10)와 제2 단말 장치(20)를 통신 가능하게 연결하여 제1 단말 장치(10)와 제2 단말 장치(20) 사이의 통화가 수행되도록 한다(54).
이하 도 8 내지 도 10을 참조하여, 상황 기반 동작 결정 시스템에 의해 스케줄 설정 서비스가 제공되는 일례에 대해 설명한다.
도 8은 상황 기반 동작 결정 시스템을 이용하여 복수의 사용자 사이의 스케줄을 설정하는 과정의 일례를 설명하기 위한 제1 도면이고, 도 9는 상황 기반 동작 결정 시스템을 이용하여 복수의 사용자 사이의 스케줄을 설정하는 과정의 일례를 설명하기 위한 제2 도면이다. 도 10은 상황 기반 동작 결정 시스템을 이용하여 복수의 사용자 사이의 스케줄을 설정하는 과정의 일례를 설명하기 위한 제3 도면이다.
도 8에 도시된 바를 참조하면, 상술한 바와 같이, 상황 정보 업데이트 요청이 주기적, 비주기적 또는 조건의 만족에 따라 발신되고, 상황 정보가 전송되어 갱신될 수 있으며(61 내지 64), 이와 같은 상황 정보의 업데이트는 후술하는 동작(65 내지 73)이 수행되는 동안, 필요에 따라 더 수행될 수도 있다.
먼저, 제1 단말 장치(10)는, 스케줄 설정 요청 신호를 서버 장치(300)로 송신한다(65). 이 경우, 제1 단말 장치는, 제1 단말 장치(10)의 사용자가 제1 단말 장치(10)를 조작하여 스케줄 설정 요청 명령 및 스케줄 설정에 필요한 정보를 입력하면, 입력된 명령 및 정보를 이용하여 스케줄 설정 요청 신호를 생성한 후, 서버 장치(300)로 송신할 수도 있다.
여기서, 스케줄 설정에 필요한 정보는, 예를 들어, 시간, 장소 및 선택된 상대방 중 적어도 하나를 포함할 수 있다. 선택된 상대방은, 예를 들어, 복수의 선택 가능한 상대방, 일례로 제2 단말 장치(20)의 사용자 및 이외 서비스에 참여가 가능한 다른 단말 장치의 사용자 중에서 적어도 하나의 상대방을 포함할 수 있다.
실시예에 따라서, 제1 단말 장치(10)는, 소정의 트리거가 발생하면, 소정의 트리거의 발생에 응하여 스케줄 요청 신호를 서버 장치(300)로 전송할 수도 있다.
서버 장치(300)는, 스케줄 설정 요청에 응하여, 선택된 상대방(일례로 제2 단말 장치(20)의 사용자)과, 선택된 상대방의 단말 장치(일례로 제2 단말 장치(20))의 상황을, 선택된 상대방의 단말 장치 및 선택된 상대방의 상황을 기반으로, 판단할 수 있다(66).
만약 서버 장치(300)가 상황 판단 결과, 주어진 시간이나 장소에서 선택된 상대방과 스케줄 설정이 가능하다고 판단하면, 서버 장치(300)는 스케줄 설정이 가능하다는 메시지를, 단문 문자 서비스와 같이 적어도 하나의 방법을 이용하여, 제1 단말 장치(10)로 전송할 수 있다(68).
만약 스케줄 설정에 필요한 정보 중 일부가 누락되어 있다고 판단되는 경우, 서버 장치(300)는 제1 단말 장치(10)로 추가 정보를 더 제공해달라는 요청 신호를 전송할 수 있다(69). 예를 들어, 서버 장치(30)는 제1 단말 장치(10)로, 설정할 장소에 대한 요청 신호를 더 전송할 수 있다. 이 경우, 설정할 장소에 대한 요청 신호는, 기존에 설정된 장소에 대한 정보를 포함할 수 있다. 예를 들어, 보조 기억 장치(330)에 제1 단말 장치(10)의 사용자와 상대방, 일례로 제2 단말 장치(20)의 사용자 사이에 기존에 설정되었던 스케줄이 검색된다면, 서버 장치(300)는, 기존에 설정되었던 스케줄로부터 약속 장소에 대한 정보를 획득할 수 있다. 이어서, 서버 장치(300)는, 획득한 약속 장소에 대한 정보를 포함하여 설정할 장소에 대한 요청 신호를 생성하고, 제1 단말 장치(10로 전송할 수 있다.
만약 스케줄 설정에 필요한 정보가 모두 제1 단말 장치(10)로부터 제공된 경우라면, 추가 정보 요청 과정(69)은 생략 가능하다.
서버 장치(300)는, 스케줄 설정 가능 판단(67)에 응하여, 스케줄을 설정하고, 선택된 상대방의 단말 장치, 즉 제2 단말 장치(20)로 스케줄 승인 요청을 전송할 수 있다(70).
만약 선택된 상대방, 일례로 제2 단말 장치(20)의 사용자가, 선택된 상대방의 단말 장치, 일례로 제2 단말 장치(20)의 입력부(293)를 조작하여 스케줄 승인 명령을 입력하면, 선택된 상대방의 단말 장치(20)는 승인에 대응하는 신호를 서버 장치(300)로 전송한다(71).
승인에 대응하는 신호의 수신에 응하여, 서버 장치(300)는 설정된 스케줄을 확정하고, 필요에 따라서, 제1 단말 장치(10)에, 스케줄의 승인에 관련된 메시지(72)를 전송하거나, 및/또는 스케줄을 보조 기억 장치(330)에 저장할 수 있다(73). 스케줄을 보조 기억 장치(330)에 저장함으로써, 제1 단말 장치(10)의 사용자 및 제2 단말 장치(20)의 사용자 중 적어도 하나의 스케줄에 대한 정보가 갱신될 수 있게 된다.
만약 선택된 상대방이 선택된 상대방의 단말 장치를 조작하여 스케줄 거절 명령을 입력하면, 선택된 상대방의 단말 장치는 거절에 대응하는 신호를 서버 장치(300)로 전송하고, 서버 장치(300)는 이에 응하여, 스케줄 설정을 중단하고, 기 설정된 바에 따라서, 스케줄 중단과 관련된 메시지를 제1 단말 장치(10)로 전송할 수 있다.
도 9에 도시된 바를 참조하면, 상술한 바와 동일하게, 상황 정보 업데이트 요청이 주기적, 비주기적 또는 조건의 만족에 따라 발신되고, 상황 정보가 전송되어 갱신될 수 있다(81 내지 84). 이와 같은 상황 정보의 업데이트는 후술하는 동작(85 내지 89)이 수행되는 동안, 추가적으로 수행될 수도 있다.
제1 단말 장치(10)의 사용자는 제1 단말 장치(10)로 스케줄 설정 요청 명령 및 스케줄 설정에 필요한 정보를 입력하고, 제1 단말 장치(10)는 입력된 명령 및 정보를 이용하여 생성된 스케줄 설정 요청 신호를 서버 장치(300)로 송신할 수 있다(85). 상술한 바와 동일하게, 스케줄 설정에 필요한 정보는, 예를 들어, 시간, 장소 및 선택된 상대방 중 적어도 하나를 포함할 수 있다.
서버 장치(300)는, 스케줄 설정 요청을 수신하고, 스케줄 설정 요청 수신에 응하여, 선택된 상대방의 단말 장치 및 선택된 상대방의 상황을 기초로, 선택된 상대방(일례로 제2 단말 장치(20)의 사용자)과, 선택된 상대방의 단말 장치(일례로 제2 단말 장치(20))의 상황을 판단할 수 있다(86).
만약 상황 판단 결과, 서버 장치(300)는 스케줄이 설정 불가능하다고 판단할 수 있다(87). 예를 들어, 선택된 상대방의 스케줄에 대한 정보를 열람한 결과, 스케줄을 설정하고자 하는 시간이, 먼저 설정된 스케줄, 일례로 강의, 업무 회의 또는 약속 등과 중복되는 경우, 서버 장치(300)는 스케줄 설정이 불가능하다고 판단할 수 있다.
스케줄 설정이 불가능하다고 판단된 경우, 서버 장치(300)는 제1 단말 장치(10)로 스케줄 설정이 불가능하다는 메시지(이하 스케줄 설정 불가 안내 메시지)를 전송할 수 있다(88). 스케줄 설정 불가 안내 메시지는, 예를 들어, 스케줄 설정이 불가능하다는 사실을 포함할 수 있으며, 필요에 따라서, 스케줄 설정이 가능한 시간, 장소 및 상대방 중 적어도 하나에 대한 정보를 포함할 수도 있고, 및/또는 스케줄 설정이 불가능한 이유에 대한 정보를 더 포함할 수도 있다.
제1 단말 장치(10)는 표시부(191) 및 사운드 출력부(194) 중 적어도 하나를 이용하여 스케줄 설정 불가 안내 메시지를 제1 단말 장치(10)의 사용자에게 제공할 수 있으며, 사용자는 스케줄 설정 불가 안내 메시지를 제공 받고, 사용자의 의사에 따라서 스케줄을 재설정할 수도 있다.
사용자가 스케줄을 재설정하기 위해 명령이나 데이터를 입력한 경우, 제1 단말 장치(10)는 스케줄 재설정 요청을 서버 장치(300)로 전송할 수 있다(89). 이 경우, 서버 장치(300) 상술한 바와 같은 스케줄 설정과 관련된 동작(도 8의 65 내지 73, 또는 도 9의 85 내지 88)을 더 수행한다.
만약 제1 단말 장치(10)의 사용자와 원하는 상대방, 일례로 제2 단말 장치(20)의 사용자 사이에 스케줄이 설정되면, 도 10에 도시된 바와 같이, 스케줄 설정에 대응하는 서비스가 제1 단말 장치(10)의 사용자 및 제2 단말 장치(20)의 사용자 중 적어도 하나로 더 제공될 수 있다.
예를 들어, 서버 장치(300)는, 도 10에 도시된 바와 같이, 스케줄 알림 서비스나 또는 상대방, 일례로 제2 단말 장치(20)의 사용자의 출발 여부 등에 대한 정보 제공 서비스 등을 더 수행할 수도 있다.
도 8 및 도 10에 도시된 바를 참조하면, 제2 단말 장치(20)가 승인에 대응하는 신호를 서버 장치(300)로 전송하여(71), 스케줄이 설정 및 저장된 이후(73), 서버 장치(300)는 필요에 따라, 제2 단말 장치(20)로부터 제2 단말 장치(20)의 위치에 대한 정보를 수신할 수 있다(90). 제2 단말 장치(20)의 위치에 대한 정보의 수신은, 주기적으로 수행될 수도 있고, 또는 비주기적으로 수행될 수도 있으며, 또한, 스케줄에 따라 설정된 시간(예를 들어, 약속 시간)이 도래하기 일정 시간 전에 수행될 수도 있다.
필요에 따라서, 서버 장치(300)는 수신된 위치 정보를 제1 단말 장치(10)로 전송할 수 있다(91).
제1 단말 장치(10)는, 제2 단말 장치(20)의 위치 정보를 수신하고, 수신한 제2 단말 장치(20)의 위치 정보를 기반으로, 제2 단말 장치(20)의 현재의 위치에서 스케줄 설정 과정에서 설정된 장소까지의 거리, 경로 및 이동 소요 시간 중 적어도 하나를 연산하여 결정할 수 있다(92).
만약 이동 소요 시간이 연산된 경우라면, 제1 단말 장치(10)는 이동 소요 시간 및 스케줄 설정 과정에서 설정된 시간을 비교하여, 제2 단말 장치(20)의 사용자가 출발해야 하는 시간(이하 출발 요청 시간)을 더 결정할 수도 있다.
결정된 거리, 경로, 이동 소요 시간 및 출발 요청 시간 중 적어도 하나는 서버 장치(300)로 전송될 수 있다(93).
실시예에 따라서, 거리, 경로, 이동 소요 시간 및 출발 요청 시간 중 적어도 하나를 결정하는 과정(92, 93)은 서버 장치(300)에 의해 수행되는 것도 가능하다. 이 경우, 제1 단말 장치(10)로의 위치 정보의 전송 과정(91)은 생략될 수도 있다.
서버 장치(300)는 결정된 정보, 즉 결정된 거리, 경로, 이동 소요 시간 및 출발 요청 시간 중 적어도 하나를 보조 기억 장치(330)에 저장한다(94).
한편, 서버 장치(300)는, 결정된 거리, 경로, 이동 소요 시간 및 출발 요청 시간 중 적어도 하나의 결정 및 저장 과정(90 내지 94)과 독립적으로 또는 종속적으로 스케줄에 따라 설정된 시간의 도래 여부를 판단할 수 있다(95).
클락을 이용하여, 만약 스케줄에 따라 미리 정의된 시간이 도래하면, 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나로 시간의 도래에 대한 알림 신호를 전송할 수 있다(96-1, 96-2). 여기서, 미리 정의된 시간은, 스케줄 설정 과정에서 설정된 시간, 설정된 시간에 대하여 일정 기간 이전의 시간 및/또는 출발 요청 시간을 포함할 수 있다. 또한, 알림 신호는 스케줄에 따라 설정된 시간이나 출발 요청 시간이 도래하고 있다는 사실에 대한 메시지를 포함할 수 있다.
실시예에 따라서, 알림 신호는, 사용자의 편의를 위한 정보를 더 포함할 수 있다. 예를 들어, 알림 신호는, 스케줄의 구체적인 내용, 출발 요청 시간 및/또는 이동 소요 시간을 포함할 수 있으며, 스케줄의 구체적인 내용은, 예를 들어, 스케줄에 해당하는 상대방, 스케줄에 따라 설정된 시간 및 스케줄에 따라 설정된 장소 중 적어도 하나를 포함할 수 있다.
만약 제1 단말 장치(10)가 차량(10-1) 또는 차량(10-1)에 설치된 내비게이션 장치와 연동되거나 및/또는 제2 단말 장치(20)가 차량(20-1) 또는 차량(20-1)에 설치된 내비게이션 장치와 연동된 경우, 스케줄 승인 요청 및 알림 신호 중 적어도 하나에 포함된 장소에 대한 정보가 차량(10-1, 20-1) 또는 차량(10-1, 20-1)에 설치된 내비게이션 장치로 전송될 수 있다. 이 경우, 차량(10-1, 20-1) 또는 차량(10-1, 20-1)에 설치된 내비게이션 장치는, 장소에 대한 정보를 수신하고, 수신된 장소를 목적지로 설정할 수 있다(97).
또한, 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나는, 출발 여부에 대한 정보(출발 정보)를 서버 장치(300)로 전송할 수 있다. 출발 정보는, 제1 단말 장치(10)의 사용자 및 제2 단말 장치(20)의 사용자 중 적어도 하나가 목적지로 출발하였다는 정보를 포함할 수 있다. 또한, 출발 정보는, 출발한 시간이나 또는 출발한 위치에 대한 정보를 더 포함할 수도 있다.
제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나는, 제1 단말 장치(10)의 사용자 및 제2 단말 장치(20)의 사용자 중 적어도 하나의 사용자의 수동적 입력에 따라서 출발 정보를 획득할 수도 있고, 또는 위치 정보 획득부(153, 253)를 통해 획득된 위치의 변화를 기반으로 출발 정보를 획득할 수도 있다.
서버 장치(300)는 출발 정보를 수신하고, 수신한 출발 정보를 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나로 전송할 수 있다(99). 이에 따라 제1 단말 장치(10)의 사용자는 상대방이 약속된 장소로 출발하였는지 여부를 확인할 수 있다. 이 경우, 제1 단말 장치(10), 제2 단말 장치(20) 및 서버 장치(300) 중 적어도 하나는, 출발 시간 및 이동 소요 시간을 이용하여, 설정된 장소로의 도착 예정 시간을 결정할 수도 있다. 결정된 도착 예정 시간은, 제1 단말 장치(10) 및 제2 단말 장치(20) 중 적어도 하나에 의해, 제1 단말 장치(10)의 사용자 및 제2 단말 장치(20)의 사용자 중 적어도 하나의 사용자에게 시각적 또는 청각적으로 제공될 수 있다.
이상 상황 기반 동작 결정 시스템에 의해 제공 가능한 여러 서비스 중에서, 통화 서비스 및 스케줄 설정 서비스의 실시예에 대해 설명하였으나, 상황 기반 동작 결정 시스템에 의해 수행될 수 있는 서비스는 이에 한정되지 않는다. 실시예에 따라서, 설계자가 고려할 수 있는 다양한 서비스가 상술한 상황 기반 동작 결정 시스템을 이용하여 수행 및 제공될 수 있다.
이하, 도 11 내지 도 19를 참조하여, 상술한 서비스 제공 또는 서비스 제공 개시의 트리거로 이용되는 최종 동작 결정 과정의 일 실시예에 대해 설명하도록 한다.
일 실시예에 의하면, 제1 단말 장치(10)의 프로세서(100) 및 제2 단말 장치(20)의 프로세서(200) 중 적어도 하나는, 음성 인식 동작, 추천 동작 결정 동작 및/또는 최종 동작 결정 동작을 수행할 수도 있다.
이하 설명의 중복을 방지하기 위하여, 제1 단말 장치(10)의 프로세서(100)의 동작에 대해서만 기술하도록 하나, 후술되는 설명은 제2 단말 장치(20)의 프로세서(200)에도 동일하게 또는 일부 변형을 거쳐 적용될 수 있다.
제1 단말 장치(10)의 프로세서(100)는, 일 실시예에 있어서, 사운드 입력부(195)를 통하여 입력된 음향으로부터 음성 부분을 추출하고, 음성 부분을 이용하여 음성 인식을 수행할 수도 있다. 이에 따라 사용자는 음성 명령을 제1 단말 장치(10)에 입력할 수 있게 된다.
또한, 일 실시예에 의하면, 프로세서(100)는, 사용자의 명령에 따라서 소정의 동작을 예측 및 결정하고, 예측 및 결정된 동작에 따라서 제1 단말 장치(10)가 동작하도록 할 수도 있다. 예를 들어, 프로세서(100)는 상황 인식용 데이터베이스(141) 및 상황 정보를 수집할 수 있는 각종 장치, 일례로 클락(151), 위치 정보 수집부(153) 및/또는 기타 각종 데이터 수집 장치에 의해 수집된 상황 정보를 기반으로, 추천 동작을 결정하고, 결정한 추천 동작을 선택 이력 데이터베이스(142)를 이용하여 검증한 후, 검증 결과를 기초로 제1 단말 장치(10)에 대한 최종 동작을 결정할 수 있다.
또한, 실시예에 따라서, 프로세서(100)는 결정된 최종 동작을 사용자에게 추천 동작으로 제시하거나, 또는 추천 동작의 제시 없이 최종 동작에 따라 제1 단말 장치(10)가 동작하도록 연산 및 처리를 수행하거나 또는 각 부품을 제어할 수도 있다.
프로세서(100)의 상세한 동작 및 기능에 대한 설명은 후술한다.
도 11은 보조 기억 장치에 저장된 데이터베이스의 일례를 도시한 도면이고, 도 12는 상황 인식용 데이터베이스의 일 실시예로 전화 발생 동작에 대응하는 상황 인식용 데이터베이스의 일례를 도시한 도면이다.
도 11에 도시된 바를 참조하면, 보조 기억 장치(140)는, 상황 인식용 데이터베이스(141) 및 선택 이력 데이터베이스(143)를 저장할 수 있으며, 필요에 따라 음향 모델(145) 및 언어 모델(147)를 더 저장할 수 있다.
상황 인식용 데이터베이스(141)는, 추천 동작의 생성을 위해 이용되는 데이터베이스로, 도 12에 도시된 바를 참조하면, 복수의 레코드(R11 내지 R13)를 포함할 수 있다. 각각의 레코드(R11 내지 R13)는, 각각의 레코드(R11 내지 R13)를 인식하기 위한 식별자(f0)와 복수의 필드(f11 내지 f15) 각각에 대응하는 필드 데이터를 포함할 수 있다.
상황 인식용 데이터베이스(141)는, 각각의 기준 동작의 특성에 따라서 서로 상이한 적어도 하나의 필드 및 필드 데이터를 포함할 수도 있다.
예를 들어, 도 11에 도시된 바와 같이, 상황 인식용 데이터베이스(141)가 통화 발신 동작에 관한 데이터베이스(DB1)라면, 각각의 레코드(R11 내지 R13)는, 수신자에 대한 통화 대상 필드(f11), 수신자의 단말 장치에 관한 통화 수단 필드(f12), 통화 날짜에 관한 필드(f13), 통화 시간에 관한 필드(f14), 및/또는 사용자가 통화를 발신한 장소에 관한 필드(f15) 각각에 대응하는 필드 데이터를 포함할 수 있다.
또한 다른 예를 들어, 상황 인식용 데이터베이스(141)는, 목적지 검색 및 설정 동작에 관한 데이터베이스일 수도 있으며, 이 경우, 각각의 레코드는, 관심 지점에 대한 필드, 관심 지점에 대응하는 지도 상의 위치에 대한 필드, 검색에 이용된 장치에 대한 필드, 검색 요일에 대한 필드, 검색 시간에 대한 필드, 검색 장소에 대한 필드 및/또는 기타 정보에 대한 필드에 대응하는 필드 데이터를 포함할 수 있다.
실시예에 따라서, 서로 상이한 기준 동작에 대해 추천 동작을 결정하기 위해 이용되는 상황 인식용 데이터베이스(141)가 모두 동일한 필드로 이루어지는 것도 가능하다.
상황 인식용 데이터베이스(141)의 각각의 필드(f11 내지 f14)에 저장된 필드 데이터는, 기존에 사용자의 선택에 따른 제1 단말 장치(10)의 실제 동작을 기반으로 획득된 것일 수 있다.
도 13은 선택 이력 데이터베이스의 일 실시예로 전화 발생 동작과 관련된 사용 이력 데이터베이스의 일례를 도시한 도면이다.
선택 이력 데이터베이스(143)는 복수의 레코드(r21 및 r22)를 포함할 수 있으며, 각각의 레코드(r21 및 r22)는, 적어도 하나의 필드(f31 내지 f33) 각각에 해당하는 적어도 하나의 필드 데이터를 포함할 수 있다. 이 경우, 각각의 필드(f31 내지 f33)는, 기 결정되었던 추천 동작 또는 최종 동작에 대한 필드(f31), 기 결정되었던 추천 동작 또는 최종 동작에 대응하는 추천 지수에 대한 필드(f32) 및 기 결정되었던 추천 동작 또는 최종 동작을 사용자에게 제시한 상황에서 실제로 수행되었던 동작에 대한 필드(f33)를 포함할 수 있다.
예를 들어, 도 13에 도시된 바와 같이 전화 발신에 관한 선택 이력 데이터베이스(DB3)의 경우, 어느 하나의 레코드, 일례로 제1 레코드(r21)의 각각의 필드(f31 내지 f33)는, 순차적으로 휴대폰 번호를 이용한 전화 발신이 추천 동작으로 결정되었다는 정보에 대한 필드 데이터와, 결정된 추천 동작에 대한 추천 지수는 어떤 값, 일례로 89로 결정되었다는 정보에 대한 필드 데이터와, 휴대폰 번호를 이용하여 전화 발신을 수행했다는 필드 데이터를 포함할 수 있다.
이하 프로세서(100)의 동작 및 기능 등에 대해 보다 구체적으로 설명한다.
도 14는 프로세서의 동작에 의한 음성 인식 과정의 일례를 개략적으로 도시한 도면이다.
사용자가 음성을 발화하면, 발화된 음성은 사운드 입력부(195)를 통해 입력된다. 사운드 입력부(195)는, 도 14에 도시된 바와 같이, 발화된 음성에 대응하는 전기적 신호를 출력하고, 출력된 전기적 신호는 프로세서(100)로 전달될 수 있다.
프로세서(100)는 수신된 전기적 신호를 기초로 음성 인식을 수행한다.
구체적으로 도 14에 도시된 바를 참조하면, 프로세서(100)는, 먼저 수신된 전기적 신호로부터 음성 구간을 검출할 수 있다(101). 여기서, 음성 구간은, 사용자가 발화한 음성이 존재하거나, 또는 존재할 가능성이 높은 구간을 의미한다.
음성 구간이 검출되면, 프로세서(100)는 음성 구간에 존재하는 잡음을 제거하거나 및/또는 약화시킬 수 있다(102). 음성 구간에 존재하는 잡음 제거를 위해 프로세서(100)는 적어도 하나의 필터를 이용할 수도 있다. 잡음 제거 과정(102)은, 실시예에 따라 생략 가능하다.
이어서, 프로세서(100)는 음성 구간으로부터 음성의 특징을 추출할 수 있다. 이 경우, 프로세서(100)는 선형 예측 코딩 켑스트럼 계수(LPC, Linear Prediction Coefficient), 켑스트럼(Cepstrum), 멜 주파수 켑스트럼 계수(MFCC, Mel Frequency Cepstral Coefficient), 및 필터 뱅크 에너지(Filter Bank Energy) 중 적어도 하나를 이용하여 음성 구간으로부터 음성의 특징을 특징 벡터의 형태로 추출할 수 있다.
음성의 특징의 추출에 응하여, 프로세서(100)는 추출된 음성의 특징에 대응하는 패턴을 결정할 수 있다(104). 예를 들어, 프로세서(100)는 미리 정의된 소정의 음향 모델(145)을 이용하여 음성의 특징에 대한 패턴을 결정할 수 있다. 음향 모델(145)은 음성의 신호적 특성을 모델링 함으로써 획득된 것일 수 있다. 프로세서(100)는, 이와 같은 음향 모델(145)을 이용하여, 인간의 음성과 주파수 패턴이 동일하거나 근사한 주파수 패턴을 획득함으로써, 음성의 특징에 대한 패턴을 결정할 수 있다. 이에 따라 사운드 입력부(195)를 통해 입력된 음성으로부터 소정의 단어, 음절 또는 짧은 구와 같은 어휘를 인식될 수 있다.
프로세서(100)는, 필요에 따라서, 소정의 언어 모델(147)을 더 이용하여 언어 처리를 수행함으로써 문장 등을 인식할 수 있다(105). 언어 모델(147)는 인식된 단어, 음절 또는 구 등을 언어적 순서 관계를 결정하기 위해, 인간의 언어 및 문법 등을 기반으로 생성된 것일 수 있다. 이에 따라 프로세서(100)는 음성에 대응하는 문장을 인식할 수 있게 된다.
프로세서(100)는, 패턴 결정(104) 및 언어 처리(105) 중 적어도 하나의 과정을 통하여 음성 인식 결과는 획득하고, 음성 인식 결과에 따라서 사용자가 발화를 통해 요구 또는 명령하는 동작을 결정할 수 있다(106). 구체적으로, 프로세서(100)는, 소정의 데이터베이스 등을 이용하거나 또는 이용하지 않고, 음성 인식 결과에 대응하는 기준 동작을 결정하고, 결정된 기준 동작을 사용자가 요구하는 동작으로 판단할 수 있다. 여기서, 소정의 데이터베이스는, 음성 인식 결과와 음성 인식 결과에 대응하는 기준 동작에 대한 데이터를 기반으로 구축된 것일 수 있다. 음성 인식이 적절히 수행된 경우라면, 사용자가 발화를 통해 요구 또는 명령한 동작은 프로세서(100)에 의해 결정된 기준 동작과 동일할 수 있다.
만약 인식된 음성에 대응하는 기준 동작을 결정할 수 없는 경우라면, 프로세서(100)는 음성 인식이나 동작 결정에 오류가 발생했다고 판단하고, 사용자 또는 설계자에 의해 미리 정의된 바에 따라서, 음성 인식 동작을 다시 수행할 수도 있고, 또는 사용자에게 다시 발화해줄 것을 요청하거나, 사운드 입력부(195)가 아닌 다른 입력 수단, 일례로 상술한 입력부(191)를 이용하여 명령을 입력해줄 것을 요청하도록 제1 단말 장치(10)의 각 부품을 제어할 수도 있다. 발화의 요청이나 명령 입력 요청은, 표시부(193) 및 사운드 출력부(197) 중 적어도 하나를 이용하여 수행될 수 있다.
프로세서(100)에 의해 결정된 기준 동작은, 제1 단말 장치(10)에 의해 수행될 수 있는 다양한 동작 중 적어도 하나의 동작을 포함할 수 있다. 예를 들어, 기준 동작은, 특정인에게 대한 전화 발신 동작, 전화 수신 또는 거절 동작, 특정한 장소를 목적지로 설정하는 동작, 설정된 목적지까지의 경로 안내 동작, 온도 조절 동작, 메시지 전송 동작, 이 메일이나 메시지 등에 포함된 텍스트의 음성 변환 동작, 텍스트에 대응하는 음성 출력 동작, 음악이나 동영상 재생 동작, 소정의 화면 표시 동작 또는 라디오 장치나 텔레비전 장치의 채널 또는 음량 변경 동작 등 설계자가 고려할 수 있는 다양한 동작 중 적어도 하나를 포함할 수 있다.
도 15는 프로세서에 의해 처리되는 프로세스의 일 실시예를 설명하기 위한 제1 도이고, 도 16은 프로세서에 의해 처리되는 프로세스의 일 실시예를 설명하기 위한 제2 도이다.
프로세서(100)는, 입력부(191)를 통해 입력된 사용자에 명령에 따라 기준 동작이 결정되거나, 또는 상술한 바와 같이 음성 인식에 따라서 사용자의 명령에 대응하는 기준 동작이 결정되면, 현재의 상황이나 기 저장된 사용자의 행동 등을 이용하여, 최종 동작을 결정할 수 있다. 최종 동작은, 기준 동작을 보다 구체화한 동작을 의미한다. 예를 들어, 결정된 기준 동작이 특정인에게로의 통화 발신인 경우, 최종 동작은 기준 동작에서 통화 수단을 보다 상세히 한 동작일 수 있다. 이 경우, 보다 구체적으로 예를 들어, 최종 동작은 특정인의 휴대폰으로의 통화 발신일 수 있다.
구체적으로 프로세서(100)는 도 15에 도시된 바와 같이 정보 수집부(150)로부터 현재 상황을 판단할 수 있는 정보를 수신하고, 또한 상황 인식용 데이터베이스(141)로부터, 특정한 상황에서 사용자에 의해 선택된 동작, 즉 제1 단말 장치(10)가 기존에 수행한 동작에 대한 정보를 획득한 후, 획득하거나 또는 수신한 정보를 이용하여 추천 동작을 생성할 수 있다(110).
또한 프로세서(100)는, 추천 동작에 대응하는 추천 지수를 결정할 수 있다. 추천 지수는 추천 동작이 어느 정도로 현재의 상황에 적절한지 여부를 나타내는 지표로, 수치적으로 구현될 수 있다.
일 실시예에 의하면, 도 16에 도시된 바와 같이, 프로세서(100)는 먼저 이력의 존재 여부를 판단할 수 있다(111).
구체적으로 프로세서(100)는, 입력부(191)를 통해 입력되거나 또는 음성 인식 과정을 통해 결정된 기준 동작을 기초로, 기준 동작에 대응하는 상황 인식용 데이터베이스(141)를 호출을 시도하고, 상황 인식용 데이터베이스(141)가 호출되는지 여부를 판단할 수 있다.
이 경우, 프로세서(100)는, 사용자가 요구 또는 명령한 동작에 따라서 상이한 상황 인식용 데이터베이스(141)를 호출할 수 있다. 예를 들어, 사용자가 통화에 관한 명령을 입력한 경우라면, 통화에 관련된 상황 인식용 데이터베이스(141)가 호출될 수 있고, 사용자가 온도 조절에 관한 명령을 입력한 경우라면, 온도 조절에 관련된 상황 인식용 데이터베이스(141)가 호출될 수 있다. 또한, 사용자가 목적지 검색 또는 설정에 대한 명령을 입력한 경우라면 목적지 검색 또는 설정에 관련된 상황 인식용 데이터베이스(141)가 호출될 수 있다. 이외에도 프로세서(100)는 사용자의 명령에 따라서 적절한 상황 인식용 데이터베이스(141)를 호출할 수 있다.
또한 프로세서(100)는, 상황 인식용 데이터베이스(141)가 호출된 경우, 호출된 상황 인식용 데이터베이스(141)로부터 기준 동작과 관련하여 기존에 저장된 이력이 존재하는지 여부를 판단할 수 있다(111). 다시 말해서, 프로세서(100)는 추천 동작의 생성에 필요한 데이터가 상황 인식용 데이터베이스(141)에 존재하는지 여부를 판단할 수 있다.
만약 기준 동작에 대응하는 상황 인식용 데이터베이스(141)가 호출되지 않거나 또는 호출된 상황 인식용 데이터베이스(141)에 기존에 저장된 이력, 즉 레코드가 존재하지 않는 경우에는 추천 동작 생성(110), 추천 동작 검증(120) 및 최종 동작 결정(130) 과정을 수행하지 않고, 미리 정의된 설정에 따른 동작을 수행할 수 있다.
예를 들어, 기준 동작에 대응하는 상황 인식용 데이터베이스(141)가 호출되지 않거나 또는 호출된 상황 인식용 데이터베이스(141)에 기존에 저장된 이력이 검출되지 않는 경우, 프로세서(100)는, 사용자 인터페이스(190)의 표시부(193)가 음성 인식 결과에 따른 적어도 하나의 데이터를 포함하는 목록을 표시하도록 제어할 수 있다. 예를 들어, 만약 기준 동작이 전화 발신인 경우, 목록은 음성 인식 결과에 대응하는 것으로 판단된 적어도 하나의 수신자 및 수신자에 대응하는 전화번호를 하나 이상 포함할 수 있다. 사용자는 표시된 목록의 데이터를 확인하고, 입력부(191)를 조작하여 표시된 목록의 데이터 중에서 적어도 하나의 데이터를 선택할 수 있으며, 프로세서(100)는 사용자에 의해 선택된 데이터에 따라서 제1 단말 장치(10)가 동작하도록 제어할 수 있다.
또한, 일 실시예에 의하면, 기준 동작에 대응하는 상황 인식용 데이터베이스(141)가 호출되지 않거나 또는 호출된 상황 인식용 데이터베이스(141)에 기존에 저장된 이력이 검출되지 않는 경우, 프로세서(100)는 사용자의 선택 결과를 이용하여 상황 인식용 데이터베이스(141)를 갱신할 수 있다. 예를 들어, 프로세서(100)는 선택 결과에 대응하는 각종 데이터, 일례로 수신자 및 수신자의 전화번호를 포함하는 레코드를 상황 인식용 데이터베이스(141)에 부가하여 상황 인식용 데이터베이스(141)를 갱신할 수 있다.
만약 결정된 동작에 대응하는 상황 인식용 데이터베이스(141)가 호출되고, 호출된 상황 인식용 데이터베이스(141)에 기존에 저장된 레코드가 존재하는 경우에는, 프로세서(100)는 클락(151), 위치 정보 수집부(153) 및/또는 기타 각종 데이터 수집 장치로부터 상황 인식에 필요한 각종 정보를 수신할 수 있다.
상술한 상황 인식용 데이터베이스(141)의 호출 여부의 판단 및 상황 인식용 데이터베이스(141)에 이력이 존재하는지 여부의 판단 과정(111)은, 실시예에 따라서, 생략 가능하다.
또한, 프로세서(100)는, 클락(151), 위치 정보 수집부(153) 및/또는 기타 각종 데이터 수집 장치로부터 상황 인식에 필요한 상황 정보를 획득할 수 있다. 예를 들어, 프로세서(100)는 클락(151)으로부터 현재의 시각을 획득하고, 및/또는 위치 정보 획득부(153)로부터 사용자의 위치 정보를 획득할 수 있다.
프로세서(100)는, 호출된 상황 인식용 데이터베이스(141)로부터 적어도 하나의 데이터(일례로 적어도 하나의 레코드나 레코드의 필드 데이터(들))를 추출할 수도 있다. 이 경우, 실시예에 따라서, 프로세서(100)는 데이터의 추출 이전에 상황 인식용 데이터베이스(141)를 호출하는 과정을 더 수행할 수도 있다. 보조 기억 장치(140)로부터 호출되는 상황 인식용 데이터베이스(141)는, 상술한 바와 같이, 입력부(191)를 통해 입력되거나 또는 음성 인식 과정을 통해 결정된 동작을 기초로 결정된 기준 동작에 대응하는 데이터베이스일 수 있다.
만약 사용자의 명령에 따른 기준 동작으로 특정한 인물에 대한 전화 발신 동작이 결정된 경우라면, 프로세서(100)는, 호출된 상황 인식용 데이터베이스(141)로부터 특정한 인물에 대응하는 레코드들을 검출할 수 있다.
이어서, 프로세서(100)는 상황 정보 및 검출된 레코드를 이용하여 추천 가능한 동작에 대한 선택 패턴을 결정할 수 있다(113). 구체적으로 예를 들어, 사용자가 특정인으로의 통화 발신 명령을 입력한 경우라면, 프로세서(100)는 사용자가 미리 정의된 분석 기준(일례로 장소, 시간 또는 전체적인 행동이나 동작) 별로 어떤 방식이나 수단으로 특정인에게 전화를 하는지에 관한 선택 패턴을 결정할 수 있다. 보다 구체적으로 예를 들어, 사용자가 특정인에게 전화를 하는 경우, 프로세서(100)는 장소 별로, 시간 별로 또는 전체적인 동작에 비추어 특정인의 휴대폰 번호를 이용하여 전화를 하는지, 특정인의 직장 전화로 설정된 전화 번호를 이용하여 전화를 하는지, 및/또는 특정인의 집 전화로 설정된 전화 번호를 이용하여 전화를 하는지 여부에 대한 선택 패턴을 결정할 수 있다.
일 실시예에 의하면, 프로세서(100)는, 도 16에 도시된 바와 같이, 특정한 장소에서는 어떠한 선택 패턴에 따라서 결정된 동작이 수행되었는지 여부를 판단하거나(114), 특정한 시간에는 선택 패턴으로 결정된 동작이 수행되는지 여부를 판단하거나(115), 및/또는 전체적으로 어떠한 선택 패턴으로 결정된 동작이 수행되는지 여부를 판단할 수 있다(116).
일 실시예에 의하면 프로세서(100)는, 분석 기준 별로 선택 패턴을 결정하기 위하여 소정의 주파수 모델을 생성 및 이용할 수도 있다.
프로세서(100)는, 선택 패턴의 결정 과정의 수행 결과에 따라, 각각의 분석 기준에서의 선택 패턴에 대한 결과 값(p1i, p2i, p3i, i=1, 2, 3, ...)을 획득할 수도 있다. 예를 들어, 프로세서(100)는 장소에 따른 선택 패턴에 대한 결과 값(p1i)을 획득하거나(114), 시간에 따른 선택 패턴에 대한 결과 값(p2i)을 획득하거나(115) 및/또는 전체 동작에 대한 선택 패턴의 결과 값(p3i)을 획득할 수 있다(116).
보다 구체적으로 예를 들어, 위치 정보 획득부(153)에 의해 획득된 현재의 위치가 제1 구역(일례로 직장이나 학교 등)이고 기준 동작이 특정인에게 전화 발신인 경우, 프로세서(100)는 제1 구역 주변에서 사용자의 선택에 대한 데이터가 상황 인식용 데이터베이스(141)에 존재하는지 여부를 검출하고, 제1 구역 주변에서 사용자의 선택에 대한 데이터가 검출되면, 검출된 선택 패턴의 각각의 요소, 즉 각각의 선택된 동작에 소정의 값을 부여하여 장소 별로 각각의 동작에 대한 결과 값(p1i, 여기서 i는 각각의 동작을 식별하기 위한 인덱스)을 획득할 수 있다.
프로세서(100)는 제1 구역에서 전체적으로 수행된 동작에 대한 각각의 동작의 비중을 이용하여 제1 구역에서의 각각의 동작에 대응하는 결과 값(p1i)을 획득할 수 있다. 이에 따라 프로세서(100)는 제1 구역에서의 선택 패턴에 대한 결과 값(p1i)을 획득할 수 있다(114).
일 실시예에 의하면, 결과 값(p1i)은 선택된 동작 각각에 대한 선택 확률 또는 빈도를 이용하여 정의될 수 있다. 예를 들어, 결과 값(p1i)은 제1 구역에서의 전체 동작 대비 특정한 동작의 수행 빈도에 대한 비율(즉, 특정 동작을 수행한 횟수/전체 동작을 수행한 횟수)로 정의될 수 있다. 보다 구체적으로 예를 들어, 제1 구역에서 특정 수신자에게 전화를 한 횟수가 100이고, 제1 구역에서 특정 수신자의 휴대폰으로 전화를 한 횟수가 80이며, 제1 구역에서 특정 수신자의 집 전화기로 전화를 한 횟수가 20로 검출된 경우, 제1 구역에서 특정 수신자의 휴대폰으로 전화를 한 동작에 대응하는 결과 값(p11)은, 0.8로 결정되고, 제1 구역에서 특정 수신자의 집 전화기로 전화를 한 동작에 대응하는 결과 값(p12)은 0.2로 결정될 수 있다.
상술한 결과 값(p11, p12)은 사용자의 편의에 따라 다양하게 정의 가능하다. 예를 들어, 0.8 및 0.2 대신에 이들에 100을 곱한 80 및 20이, 각각 제1 구역에서 특정 수신자의 휴대폰으로 전화를 한 동작에 대응하는 결과 값(p11) 및 제1 구역에서 특정 수신자의 집 전화기로 전화를 한 동작에 대응하는 결과 값(p12)으로 정의되는 것도 가능하다.
만약 제1 구역에서의 사용자의 선택 패턴이 없는 경우, 장소에 따른 결과 값(p1i)은 0으로 주어질 수 있다.
또한, 동일하게 클락(151)에 의해 획득된 현재의 시각이 제1 시간대(일례로 오후 시간대 등)에 해당하는 경우, 프로세서(100)는, 제1 시간대의 각각의 선택된 동작에 대한 결과 값(p2i)을 획득할 수 있다(115). 예를 들어, 프로세서(100)는, 상술한 바와 동일하게, 제1 시간대에서의 전체 동작에 대한 각각의 동작의 비중에 따라 각각의 선택된 동작에 대한 선택 확률을 이용하여 제1 시간대의 각각의 선택된 동작에 대한 결과 값(p2i)을 획득할 수도 있다. 만약 제1 시간대에서의 사용자의 선택 패턴이 없는 경우, 프로세서(100)는 시간에 따른 결과 값(p2i)은 0으로 설정할 수 있다.
또한, 프로세서(100)는 장소나 시간을 고려하지 않고 각각의 선택된 동작에 대응하는 결과 값(p3i)을 획득할 수도 있다. 예를 들어, 프로세서(100)는 전체 동작 대비 각각의 동작의 비중에 따라서, 각각의 동작마다 대응하는 결과 값(p3i)을 상술한 바와 동일한 방법으로 획득할 수 있다(116).
일 실시예에 의하면, 프로세서(100)는, 특정한 동작에 대해 서로 상이한 분석 기준을 이용하여 획득된 결과 값(p1i, p2i, p3i)을 합산하거나, 또는 획득된 결과 값(p1i, p2i, p3i)을 가중합하여 선택 패턴을 분석할 수 있다(118).
이 경우, 프로세서(100)는, 도 4에 도시된 바와 같이, 분석 기준, 일례로 장소, 시간 및 전체 동작에 따른 선택 패턴에 대한 결과 값(p1i, p2i, p3i) 각각에 반영될 가중치(w11, w12, w13)를 더 결정할 수도 있다(117).
일 실시예에 의하면, 가중치(w11, w12, w13)는, 각각의 분석 기준마다 미리 정의된 것일 수도 있다. 예를 들어, 프로세서(100)는 각각의 분석 기준에 대응하는 결과 값(p1i, p2i, p3i)에 반영될 가중치(w11, w12, w13)를 분석 기준에 대응하는 결과 값들(p1i, p2i, p3i)마다 동일하게 결정할 수 있다.
예를 들어, 만약 장소, 시간 및 전체 동작에 대한 선택 패턴에 대응하는 결과 값(p1i, p2i, p3i) 모두 획득되는 경우에는, 프로세서(100)는 장소, 시간 및 전체 동작에 따른 선택 패턴에 대한 결과 값에 적용되는 가중치(w11, w12, w13)는, 모두 동일하게 0.33으로 결정할 수 있다.
다른 실시예에 의하면, 가중치(w11, w12, w13)는, 각각의 분석 기준에 대응하는 결과 값(p1i, p2i, p3i)값에 따라서 결정되는 것일 수도 있다. 즉, 프로세서(100)는, 각각의 분석 기준에 대응하는 결과 값(p1i, p2i, p3i)에 반영될 가중치(w11, w12, w13)를 결과 값(p1i, p2i, p3i)에 따라서 동일하게 또는 상이하게 결정할 수도 있다.
예를 들어, 프로세서(100)는 결과 값(p1i, p2i, p3i)이 0인 경우에는 0인 결과 값(p1i, p2i, p3i)에 대응하는 가중치(w11, w12, w13)도 0으로 결정하고, 결과 값(p1i, p2i, p3i)이 0이 아닌 경우에는 0이 아닌 결과 값(p1i, p2i, p3i)에 대응하는 가중치(w11, w12, w13)를 각각 동일하게 결정할 수 있다. 보다 구체적으로 예를 들어, 프로세서(100)는 장소에 따른 선택 패턴에 대한 결과 값(p1i)이 0이고(즉, 장소에 따른 선택 패턴이 부재하고), 시간 및 전체 동작에 따른 선택 패턴에 대한 결과 값(p2i, p3i)이 0이 아닌 경우(즉, 시간 및 전체 동작에 따른 선택 패턴이 존재하는 경우), 장소에 따른 선택 패턴에 대한 결과 값(p1i)에 가중되는 가중치(w11)는 0으로 결정하고, 시간 및 전체 동작에 따른 결과 값(p2i, p3i)에 적용되는 가중치(w12, w13)는 동일하게 0.5로 결정할 수도 있다.
상술한 바 외에도 프로세서(100)는, 설계자가 고려할 수 있는 적어도 하나의 방법으로 이용하여 결과 값(p1i, p2i, p3i) 각각에 반영될 가중치(w11, w12, w13)를 결정할 수 있다.
각각의 동작에 대한 결과 값(p1i, p2i, p3i)이 획득되고, 필요에 따라 분석 기준 별 가중치(w11, w12, w13)가 더 획득되면, 프로세서(100)는 패턴을 분석하고, 분석 결과를 획득할 수 있다(118).
일 실시예에 의하면, 패턴 분석은 분석 기준 별 선택 패턴에 대한 결과 값(p1i, p2i, p3i)의 조합, 또는 분석 기준 별 선택 패턴에 대한 결과 값(p1i, p2i, p3i) 및 분석 기준 별 가중치(w11, w12, w13)의 조합을 이용하여 수행될 수 있다.
이 경우, 패턴 분석을 위해 하기의 수학식 1이 이용될 수 있다.
Figure pat00001
Zi는, 특정한 동작에 대한 분석 결과를 의미하고, w1j는 분석 기준 별 가중치고, pji는 각각의 분석 기준에 대한 각각의 선택 패턴에 포함된 각각의 동작에 대한 결과 값을 의미한다. i는 각각의 동작을 식별하기 위한 값을 의미하고, j는 각각의 분석 기준을 식별하기 위한 값을 의미한다.
특정한 동작에 대한 분석 결과(Zi)는, 각각의 동작마다 개별적으로 연산될 수 있다. 따라서, 특정한 동작에 대한 분석 결과(Zi)의 개수는, 선택 패턴에 포함된 동작의 개수와 동일하게 주어질 수 있다.
예를 들어, 사용자가 특정인에게 통화 명령을 내린 경우에 있어서, 현재 사용자의 위치에 대한 선택 패턴이 부재하고, 현재 시간대에서 전체 통화 대비 집 전화 번호를 이용한 통화 비율은 0.2이고 전체 통화 대비 휴대폰 번호를 이용한 통화 비율은 0.8이며, 전체 동작 대비 집 전화 번호를 이용한 통화 비율은 0.3이고, 휴대폰 번호를 이용한 통화 비율은 0.7로 주어진 경우라면, 상술한 예시에 따른 각각의 상황에 대한 가중치 w11, w12, w13은 순차적으로 0, 0.5, 0.5로 결정될 수 있으며, 집 전화 번호 이용 패턴에 대한 분석 결과(Z1)는 0.25(=0+0.2/2+0.3/2)의 값을 가지고, 휴대폰 번호 이용 패턴에 대한 분석 결과(Z2)는 0.75(=0+0.3/2+0.7/2)의 값을 가지게 된다.
프로세서(100)는 패턴에 대한 분석 결과를 기초로 추천 동작을 결정하고, 또한 추천 동작에 대응하는 추천 지수를 결정할 수 있다(119).
예를 들어, 프로세서(100)는, 각각의 개별적인 동작에 대한 분석 결과(Zi: Z1, Z2, ...)를 상호 비교하고, 각각의 개별적인 동작에 대한 분석 결과(Zi)의 값이 가장 큰 동작을 추출하고, 추출된 동작을 추천 동작으로 결정할 수 있다. 예를 들어, 상술한 바와 같이 집 전화 번호 이용 패턴에 대한 분석 결과(Z1)는 0.25로 연산되고, 휴대폰 번호 이용 패턴에 대한 분석 결과(Z2)는 0.75로 연산되는 경우, 프로세서(100)는 휴대폰 번호 이용 패턴에 대한 분석 결과(Z2)의 값이 집 전화 번호 이용 패턴에 대한 분석 결과(Z1)의 값보다 상대적으로 크므로, 휴대폰 번호 이용을 추천 동작으로 결정할 수 있다.
또한, 프로세서(100)는 추천 동작으로 결정된 동작에 대한 분석 결과(Zi: Z1, Z2, ...)를, 추천 동작에 대응하는 추천 지수로 결정할 수 있다. 예를 들어, 휴대폰 번호 이용을 추천 동작으로 결정한 경우, 휴대폰 번호 이용 패턴에 대한 분석 결과(Z2)의 값인 0.75를 추천 지수로 결정할 수 있다.
도 17은 프로세서에 의해 처리되는 프로세스의 일 실시예를 설명하기 위한 제3 도이다.
도 15 및 도 17에 도시된 바를 참조하면, 프로세서(100)는 추천 동작과 추천 지수를 이용하여 추천 동작을 검증할 수 있다(120). 이 경우, 프로세서(100)는, 추천 동작에 대한 사용자의 선택 결과를 누적하여 획득된 선택 이력 데이터베이스(143)를 더 이용하여, 결정된 추천 동작이 사용자의 선택 이력에 비추어 적절한지 여부를 판단할 수도 있다.
추천 동작 및 추천 지수가 결정되면, 프로세서(100)는, 추천 동작을 검증하기 위하여, 추천 동작 및 추천 지수를 이용하여 미리 정의된 연산을 수행하고, 연산 결과를 이용하여 소정의 결과 값(X)을 획득할 수 있다.
일 실시예에 의하면, 프로세서(100)는, 각각 연산 처리가 가능한 제1 변수(x1) 및 제2 변수(x2)를 결정할 수 있다 (121, 123). 제1 변수(x1) 및 제2 변수(x2) 각각은, 추천 동작 및 추천 지수에 대응한다. 이어서, 프로세서(100)는 제1 변수(x1) 및 제2 변수(x2) 각각에 대응하는 소정의 가중치, 즉 제1 가중치(w21) 및 제2 가중치(w22)를 부가하고(122, 124), 제1 가중치(w21)가 부가된 제1 변수(x1) 및 제2 가중치(w22)가 부가된 제2 변수(x2)에 대해 미리 정의된 연산을 수행함으로써 결과 값(X)를 획득할 수 있다(126).
제1 변수(x1)를 결정함에 있어서, 프로세서(100)는, 예를 들어, 미리 정의된 바를 기초로, 추천 동작에 대응하고 연산 처리가 가능한 값을 획득한 후, 획득한 값을 제1 변수(x1)로 결정함으로써 추천 동작에 대응하는 제1 변수(x1)를 결정할 수 있다(121).
제2 변수(x2)를 결정함에 있어서, 프로세서(100)는, 예를 들어, 추천 지수를 그대로 또는 일부 변형함으로써 제2 변수(x2)를 결정할 수 있다(123).
일 실시예에 의하면, 미리 정의된 연산은, 제1 가중치(w21)가 부가된 제1 변수(x1)와, 제2 가중치(w22)가 부가된 제2 변수(x2)의 합산을 포함할 수 있다. 다시 말해서, 프로세서(100)는 추천 동작(또는 추천 동작에 대응하는 값) 및 추천 지수(또는 추천 지수에 대응하는 값)을 가중합하여 결과 값(X)을 획득할 수도 있다. 이 경우, 프로세서(100)는 하기의 수학식 2를 연산하여 결과 값(X)을 획득할 수 있다.
Figure pat00002
여기서, X는 프로세서(100)에 의해 획득되는 결과 값이고, wm는 각 변수에 부가되는 가중치이며, xm은 연산 처리가 가능한 제m 변수를 의미한다. m은, 상술한 바와 같이, 1 및 2를 포함할 수도 있고, 실시예에 따라서 3 이상의 자연수를 포함할 수도 있다. 예를 들어, 상술한 추천 동작 및 추천 지수 이외에 추천 동작의 검증을 위하여 다른 변수를 더 이용하는 경우에는, m은, 이용되는 변수의 개수에 대응하여 3이상의 값도 포함할 수 있다.
실시예에 따라서, 미리 정의된 연산은, 제1 가중치(w21)가 부가된 제1 변수(x1)와, 제2 가중치(w22)가 부가된 제2 변수(x2)의 합산 이외에 다른 연산 방법을 포함할 수 있다. 예를 들어, 미리 정의된 연산은, 사칙연산 중 어느 하나의 연산을 단독으로 이용하여 정의될 수도 있고, 사칙 연산 중 적어도 둘 이상의 연산을 조합하여 정의될 수도 있다. 또한, 미리 정의된 연산은, 지수나 제곱근을 더 이용하여 정의될 수도 있다.
소정의 가중치(w21, w22)는, 선택 이력 데이터베이스(142)에 저장된 레코드들을 기초로 획득된 것일 수 있다.
프로세서(100)는 기본 동작 또는 추천 동작에 따라서 서로 상이한 선택 이력 데이터베이스(DB3)를 호출하고, 호출된 선택 이력 데이터베이스(DB3)를 이용하여 소정의 가중치(w21, w22)를 결정할 수 있다.
예를 들어, 기본 동작이 전화 발신인 경우라면, 프로세서(100)는, 도 13에 도시된 바와 같이 전화 발신에 관한 선택 이력 데이터베이스(DB3)를 이용하고, 기본 동작이 목적지 검색 및 설정인 경우라면, 프로세서(100)는, 도 9에 도시된 바와 같이 목적지 검색 및 설정에 관한 선택 이력 데이터베이스(142)를 이용한다.
프로세서(100)는 기본 동작 또는 추천 동작에 따라서 상이한 선택 이력 데이터베이스(DB3)를 호출하면, 호출된 선택 이력 데이터베이스(DB3)의 각각의 레코드(r21, r22)에 저장된 필드 데이터를 이용하여 가중치(w21, w22)를 생성 및 획득할 수 있다. 이 경우, 프로세서(100)는, 미리 정의된 소정의 모델을 이용하거나, 또는 선택 이력 데이터베이스(142)를 이용하여 소정의 모델을 생성한 후 가중치(w21, w22)를 획득할 수도 있다.
일 실시예에 의하면, 프로세서(100)는, 각각의 동작마다 서로 상이한 수치를 부여하는 등의 방법으로 각각의 레코드(r21, r22)에 저장된 필드 데이터를 연산 처리가 가능하게 변경하고, 실제 동작을 종속 변수로, 추천 동작 및 추천 지수 각각을 독립 변수로 하여 회귀 분석을 수행하여 이를 기초로 추천 동작에 대한 제1 변수(x1)에 적용될 제1 가중치(w21) 및 추천 지수에 대한 제2 변수(x2)에 적용될 제2 가중치(w22)를 획득할 수 있다. 이 경우, 회귀 분석 결과 획득된 계수가 직접 또는 일부 변형되어 제1 가중치(w21) 및 제2 가중치(w22)로 결정될 수 있다.
또한, 다른 실시예에 의하면, 프로세서(100)는 실제 동작과 추천 동작의 사이의 상관 관계(correlation)와 실제 동작과 추천 지수 사이의 상관 관계를 연산하고 상관 관계의 연산 결과를 이용하여 추천 동작에 대한 제1 변수(x1)에 적용될 제1 가중치(w21) 및 추천 지수에 대한 제2 변수(x2)에 적용될 제2 가중치(w22)를 획득할 수도 있다.
또한, 또 다른 실시예에 의하면, 프로세서(100)는 최종 동작 및 실제 동작 사이의 오차를 최소화할 수 있도록 소정의 알고리즘을 이용하여 가중치(w21, w22)를 결정할 수도 있다.
여기서, 오차는, 예를 들어, 적어도 하나의 최종 동작과, 적어도 하나의 최종 동작에 대응하는 적어도 하나의 실제 동작 사이의 차이의 제곱을 합산한 후 이를 2로 나눈 것으로 정의될 수 있다.
일 실시예에 의하면, 소정의 알고리즘은 경사 하강법(gradient descent) 알고리즘을 포함할 수 있다. 이 경우, 미래의 가중치는 이동할 거리를 조절하는 매개변수와 가중치의 변화량을 현재의 가중치에 합산하거나 또는 차감하여 획득된 값으로 정의될 수 있다.
또한, 소정의 알고리즘은 학습 알고리즘일 수도 있다. 학습 알고리즘은, 예를 들어, 심층 신경망(DNN, Deep Neural Network), 콘볼루션 신경망(CNN, Convolutional Neural Network), 순환 신경망(RNN, Recurrent Neural Network), 심층 신뢰 신경망(DBN, Deep Belief Network) 및 심층 Q-네트워크(Deep Q-Networks) 중 적어도 하나의 알고리즘 또는 이들을 일부 변형하여 획득된 알고리즘을 포함할 수 있다.
이어서 프로세서(100)는 합산에 따라 획득된 값(X)을 기초로 추천 동작의 검증에 대한 검증 결과 값(O)을 생성할 수 있다(128).
일 실시예에 의하면, 프로세서(100)는 합산에 따라 획득된 값(X)이 미리 정의된 기준 값보다 큰지 또는 작은지 여부를 판단하고, 판단 결과를 기초로 검증 결과 값(O)을 생성할 수 있다(127, 128). 이 경우, 프로세서(100)는, 예를 들어, 하기의 수학식 3을 이용하여 검증 결과 값(O)를 획득할 수도 있다.
Figure pat00003
(O)는 검증 결과 값을 의미하고, X는 수학식 2의 연산 결과에 의해 획득된 결과 값이며, Cref는 기준 값으로, 사용자 또는 설계자에 의해 미리 정의된 상수이다.
수학식 3에 기재된 바와 같이, 획득된 결과 값(X)이 미리 정의된 값(Cref)보다 큰 경우, 프로세서(100)는 추천 동작 검증 과정에 따른 검증 결과 값(O)를 제1 값, 일례로 1로 결정할 수 있다. 반대로 프로세서(100)에 의해 획득된 결과 값(X)이 미리 정의된 값(Cref)보다 작은 경우, 프로세서(100)는 추천 동작 검증 과정에 따른 검증 결과 값(O)를 제1 값과 상이한 제2 값, 일례로 0으로 결정할 수 있다. 프로세서(100)에 의해 획득된 결과 값(X)이 미리 정의된 값(Cref)과 동일한 경우에는, 설계자의 설계에 따라서 프로세서(100)는 추천 동작 검증 과정에 따른 검증 결과 값(O)를 제1 값 및 제2 값 중 어느 하나의 값으로 결정할 수 있다. 제1 값 및 제2 값은 각각 설계자 또는 사용자의 선택에 따라 임의적으로 정의된 것일 수 있다.
추천 동작 검증 과정에 따른 검증 결과 값(O)이 결정되면, 도 3 및 도 7에 도시된 바와 같이, 프로세서(100)는, 추천 동작 및 추천 동작에 대한 검증 결과를 기초로 최종 동작을 결정할 수 있다(130). 만약 추천 동작, 추천 지수 및 선택 이력 데이터베이스(143)를 이용하여 판단한 결과, 결정된 추천 동작이 사용자의 의도에 부합되거나 부합될 가능성이 높다고 판단되는 경우에는, 프로세서(100)는 결정된 추천 동작을 최종 동작으로 결정할 수 있다. 반대로 결정된 추천 동작이 사용자의 의도에 부합하지 않거나 부합될 가능성이 낮다고 판단되는 경우에는, 프로세서(100)는 사전에 설정된 바에 따른 동작을 최종 동작으로 결정할 수도 있다.
일 실시예에 의하면, 프로세서(100)는 추천 동작 검증 과정에 따른 검증 결과 값(O)이 제1 값, 일례로 1인 경우(131), 추천 동작을 최종 동작으로 결정할 수 있다(132).
이에 따라, 프로세서(100)는 사용자가 조작하거나 또는 음성을 이용하여 입력한 명령에 대응하는 기준 동작에 따라서, 보다 적절한 최종 동작을 결정할 수 있게 된다.
예를 들어, 프로세서(100)는, 기준 동작이 통화 발신 동작인 경우, 상술한 바와 같이 결정된 전화 번호를 이용하여 통화 발신을 최종 동작으로 결정할 수 있게 된다. 또한, 다른 예를 들어, 프로세서(100)는 입력된 사용자의 명령에 대응하는 기준 동작에 따라서, 제1 단말 장치(10)가 수신 전화의 거절 동작, 목적지 설정 동작, 설정된 목적지로의 경로 안내 동작, 온도 조절 동작, 메시지 전송 동작, 이 메일이나 메시지 등에 포함된 텍스트의 음성 변환 동작 및 텍스트에 대응하는 음성 출력 동작, 음악이나 동영상 재생 동작, 소정의 화면 표시 동작, 라디오 장치나 텔레비전 장치의 채널 또는 음량 변경 동작 및 이외 설계자가 고려할 수 있는 다양한 동작 중 적어도 하나를 최종 동작으로 결정할 수 있게 된다.
최종 동작이 결정되면, 프로세서(100)는 최종 동작의 결정에 응하여 제1 단말 장치(10)가 결정된 최종 동작에 대응하는 동작을 수행하도록 동작하거나, 및/또는 제1 단말 장치(10)의 각 부품을 제어할 수 있다.
일 실시예에 의하면 최종 동작이 결정되면, 최종 동작의 결정에 응하여, 제1 단말 장치(10)는, 상술한 서비스 제공 요청 신호 및 서비스 제공 개시 요청 신호 중 적어도 하나를 서버 장치(300)로 전송할 수 있다. 다시 말해서, 최종 동작의 결정이, 서비스 제공 요청 및 서비스 제공 개시 요청 중 적어도 하나의 트리거로 이용될 수 있다.
실시예에 따라서, 프로세서(100)는 사용자 또는 설계자에 의해 미리 정의된 설정에 따라서, 최종 동작을 수행하기 전에 먼저 사용자에게 제1 단말 장치(10)가 결정된 최종 동작에 따라 동작할 것인지 여부를 먼저 질의하도록 설정될 수도 있다. 만약 최종 동작에 따른 제1 단말 장치(10)의 동작을 사용자가 동의하면, 제1 단말 장치(10)는 결정된 최종 동작을 수행할 수 있다. 또한, 실시예에 따라서, 사용자의 동의는 서비스 제공 요청 및 서비스 제공 개시 요청 중 적어도 하나의 트리거로 이용될 수도 있다.
도 18은 추천 결과를 표시하는 화면의 일 실시예를 도시한 도면이다.
일 실시예에 의하면, 프로세서(100)는 최종 동작을 수행하면서, 최종 동작을 승인할 것인지 여부를 질의할 수 있다.
예를 들어, 프로세서(100)는 사용자 인터페이스(190)의 표시부(193)를 제어하여, 표시부(193)가 도 18에 도시된 바와 같이 최종 동작 승인 여부를 질의하기 위한 화면(191a)을 표시하도록 할 수 있다. 최종 동작 승인 여부를 질의하기 위한 화면(191a)에는 최종 동작에 대한 정보(192a)와, 최종 동작의 승인(확인) 및 불승인(취소)의 선택을 안내하기 위한 소정의 영상(192b, 192c)가 표시될 수 있다. 소정의 영상(192b, 192c)은, 예를 들어, 아이콘이나 가상 버튼 등을 이용하여 구현 가능하다.
사용자는 입력부(191)를 조작하여 승인 및 불승인 중 어느 하나에 대한 선택 명령을 입력할 수 있다. 터치스크린을 이용하여 입력부(191) 및 표시부(193)가 구현된 경우에는, 사용자는 표시된 영상(192b, 192c) 중 어느 하나를 선택하여 승인 및 불승인 중 어느 하나에 대한 선택 명령을 입력할 수 있다.
만약 사용자가 최종 동작에 따른 제1 단말 장치(10)의 동작을 승인하면, 제1 단말 장치(10)는 최종 동작에 따라서 동작하게 된다.
반대로 사용자가 최종 동작에 따른 제1 단말 장치(10)의 동작을 승인하지 않으면, 제1 단말 장치(10)는 결정된 최종 동작에 따른 동작을 중단할 수 있다. 이 경우, 제1 단말 장치(10)는 미리 정의된 바에 따라서 소정의 동작을 수행할 수 있다. 예를 들어, 제1 단말 장치(10)는 후술하는 바와 같이 기본 동작을 수행할 수 있다.
기본 동작이 수행되는 경우, 제1 단말 장치(10)의 표시부(193)는 후술하는 바와 같이 복수의 선택지(도 9의 192d1, 192d2)를 포함하는 화면(191b)을 표시할 수 있다. 사용자는 입력부(191)를 이용하여 복수의 선택지(192d1, 192d2) 중 어느 하나를 선택함으로써 제1 단말 장치(10)가 원하는 동작을 수행하도록 할 수 있다.
만약 사용자가 복수의 선택지(192d1, 192d2) 중 어느 하나도 선택하지 않고 일정한 시간이 경과된 경우라면, 프로세서(100)는 상황 기반 동작 결정 과정을 종료시킬 수 있으며, 상술한 서비스 제공 또는 서비스 제공 개시 과정은 중단된다.
일 실시예에 의하면, 사용자가 최종 동작에 따른 제1 단말 장치(10)의 동작을 승인하거나 및/또는 승인하지 않으면, 도 3에 도시된 바와 같이, 프로세서(100)는 동작의 승인 및/또는 불승인에 응하여 선택 이력 데이터베이스(142)를 갱신할 수 있다(135).
구체적으로, 프로세서(100)는 획득된 추천 동작 및 추천 지수와, 사용자의 승인 여부에 따른 최종 동작을 각각 필드 데이터로 하는 레코드를 선택 이력 데이터베이스(143) 내에 더 생성할 수 있다. 실시예에 따라서 프로세서(1000)는 사용자가 최종 동작을 승인하지 않은 경우에 한하여 선택 이력 데이터베이스(142)를 갱신하도록 설계될 수도 있다(135).
도 19는 추천 결과가 표시되지 않을 경우 표시되는 화면의 일 실시예를 도시한 도면이다.
다른 일 실시예에 의하면, 프로세서(100)는 추천 동작 검증 과정에 따른 검증 결과 값(O)이 제1 값, 일례로 1이 아닌 경우(133), 추천 동작을 최종 동작으로 결정하지 않고, 미리 정의된 다른 동작, 일례로 기본 동작을 최종 동작으로 결정할 수 있다(132). 추천 동작 검증 과정에 따른 검증 결과 값(O)이 제1 값이 아닌 경우는, 추천 동작 검증 과정에 따른 검증 결과 값(O)이 제2 값, 일례로 0인 경우를 포함할 수 있다.
기본 동작은, 예를 들어, 도 19에 도시된 바와 같이 표시부(191)에 의한 기본 화면(191b)의 표시 동작을 포함할 수 있다.
구체적으로, 프로세서(100)는 추천 동작 검증 과정에 따른 검증 결과 값(O)이 1이 아니라는 결정 결과에 응하여, 표시부(191)를 제어하여 표시부(191)가 기본 화면(191b)을 표시하도록 한다. 기본 화면(191b)은 기본 화면(191b)은 복수의 선택지(192d1, 192d2)를 포함할 수 있으며, 복수의 선택지(192d1, 192d2)는 예를 들어 문자, 기호, 숫자 또는 영상으로 구현될 수 있다. 필요에 따라서, 프로세서(100)는, 소정의 창(192d)을 화면(191b) 상에 나타나도록 함으로써, 화면(191b)에 적어도 하나의 선택지(192d1, 192d2)가 표시되도록 할 수도 있다.
적어도 하나의 선택지(192d1, 192d2) 각각은, 제1 단말 장치(10)에 의해 수행 가능한 다양한 동작, 예를 들어, 휴대폰 번호를 이용한 통화, 집 전화 번호를 이용한 통화 및/또는 직장 전화 번호를 이용한 통화를 각각 나타내는 것일 수 있다.
사용자는 적어도 하나의 선택지(192d1, 192d2) 중 어느 하나의 선택지(192d1 및 192d2 중 어느 하나)를 선택하여, 제1 단말 장치(10)가 사용자가 의도하는 바에 따라 동작하도록 할 수 있다.
실시예에 따라서, 사용자의 선택은, 미리 정의된 바에 따라서, 서비스 제공 요청 및 서비스 제공 개시 요청 중 적어도 하나의 트리거로 이용될 수도 있고, 또는 이용되지 않을 수도 있다.
예를 들어, 선택된 선택지(192d1, 192d2)에 해당하는 전화번호가 상술한 서비스에 참여가 가능한 상대방에 대응하는 것이라면, 사용자의 선택은 서비스 제공 요청 및 서비스 제공 개시 요청 중 적어도 하나의 트리거로 이용될 수 있다. 다른 예를 들어, 선택된 선택지(192d1, 192d2)에 해당하는 전화번호가 상술한 서비스에 참여가 가능하지 않은 상대방에 대한 것이라면, 사용자의 선택은 서비스 제공 요청 및 서비스 제공 개시 요청의 트리거로 이용되지 않을 수 있다.
실시예에 따라서, 만약 사용자가 복수의 선택지(192d1, 192d2) 중 어느 하나도 선택하지 않고 일정한 시간이 경과되면, 프로세서(100)는 상황 기반 동작 결정 과정을 종료시킬 수 있으며, 제1 단말 장치(10)는 입력부(191) 및 사운드 입력부(195) 중 적어도 하나를 통해 입력된 사용자의 명령을 무시하고, 사용자의 명령에 대응하는 동작을 수행하지 않을 수 있다. 이 경우, 서비스 제공 역시 시작하지 않는다.
이하 상황 기반 동작 결정 방법의 여러 실시예에 대해 설명하도록 한다.
도 20은 상황 기반 동작 결정 방법의 일 실시예에 대한 흐름도이다.
도 20에 도시된 바를 참조하면, 소정의 트리거에 따라서 서비스 제공 개시 요청이 제1 단말 장치로부터 서버 장치로 전달될 수 있다(400). 이 경우, 트리거는, 사용자의 입력부 조작, 음성 명령의 입력 및 최종 동작의 결정 중 적어도 하나를 포함할 수 있다.
서버 장치는 서비스 제공 개시 요청이 수신되면, 제공 개시 요청된 서비스에 대응하는 필요 정보를 선택한다(401). 여기서, 필요 정보는, 서비스의 수행을 위해 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 획득해야 할 정보를 포함할 수 있다.
서버 장치는, 제1 단말 장치의 사용자의 요구나 설정에 따라서, 적어도 하나의 다른 단말 장치, 일례로 제2 단말 장치로 승인 요청을 발송할 수 있다(402). 이 경우, 승인 요청 신호와 더불어, 제2 단말 장치로 서비스 필요 정보 및 서비스 필요 정보에 대응하는 정보의 전송 요청도 함께 전송될 수 있다.
서버 장치는 제2 단말 장치로부터 승인 신호 또는 거절 신호가 전달될 때까지 대기한다.
만약 제2 단말 장치의 사용자가 승인을 하지 않고, 이에 따라 서버 장치로 거절 신호가 전달되면(403의 아니오), 서비스 제공의 개시가 불가능하다고 판단하고, 서비스 생성이 실패했다고 처리한다(404). 필요에 따라, 서버 장치로부터 거절 안내 메시지가 제1 단말 장치로 전송될 수도 있다.
만약 제2 단말 장치의 사용자가 승인을 하여 서버 장치가 승인 신호를 수신하면(403의 예), 서버 장치는 서비스 제공이 가능하다고 판단하고, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나에 대한 서비스 제공을 개시한다(405). 필요에 따라, 서버 장치는 제1 단말 장치로 서비스가 제공될 수 있다는 신호를 전송할 수도 있다.
이어서 서버 장치는, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 상황 정보에 대한 제공 또는 갱신 요청을 전송하고, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 상황 정보를 수신하여 저장 또는 갱신한다.
서버 장치가, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 제공 가능한 복수의 서비스 중 적어도 하나의 서비스에 대한 제공 요청을 수신하면(411), 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나의 서비스 제공 요청에 응하여, 제1 단말 장치, 제1 단말 장치의 사용자, 제2 단말 장치 및 제2 단말 장치의 사용자 중 적어도 하나의 상황을 판단할 수 있다(412, 413).
만약 서비스가 제공 가능한 상황이라고 판단되면(413의 예), 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나에 서비스를 제공한다(417).
반대로 만약 서비스의 제공이 불가능한 상황이라고 판단되면(413의 아니오), 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 서비스 제공 불가에 대한 안내 메시지를 전송할 수 있다. 미리 정의된 설정에 따라서, 서버 장치는 서비스 제공과 관련된 동작을 중단하거나, 또는 서비스가 가능한 상황이 도래할 때가지 대기할 수 있다(414).
만약 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 전달된 상황 정보에 의해 서버 장치에 저장된 상황 정보가 갱신되고, 이에 따라 상황이 변경되면(415의 예), 서버 장치는 다시 서비스가 제공 가능한지 판단할 수 있다(416).
만약 서비스가 제공 가능하다면 서버 장치는 서비스를 제공하기 시작하고(417), 반대로 서비스가 제공이 가능하지 않다면, 서버 장치는, 미리 정의된 설정에 따라서, 서비스 제공과 관련된 동작을 중단하거나, 또는 서비스가 가능한 상황이 도래할 때가지 대기할 수 있다(414).
이하 상황 기반 동작 결정 방법의 구체적인 실시예 중 하나로, 도 21을 참조하여 통화 발신에 관련된 서비스에 대한 제1 실시예를 설명하도록 한다.
도 21은 상황 기반 동작 결정 방법의 구체적인 제1 실시예에 대한 흐름도이다.
도 21에 도시된 상황 기반 동작 결정 방법의 제1 실시예를 참조하면, 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 상황 정보를 수신하여 획득하고, 저장부에 저장된 상황 정보를 갱신한다(420).
이후 제1 단말 장치 및 제2 단말 장치 중 적어도 하나가 통화를 발신하면(421), 서비스 제공이 시작되고, 이에 따라 서버 장치는 제1 단말 장치, 제1 단말 장치의 사용자, 제2 단말 장치 및 제2 단말 장치의 사용자 중 적어도 하나의 상황을 판단할 수 있다(423, 424).
만약 상황 판단 결과, 통화가 가능한 경우라면(424의 예), 서버 장치는 통화 회선을 생성하여 제1 단말 장치 및 제2 단말 장치 사이의 통화가 가능하도록 할 수 있다(430).
반대로 상황 판단 결과 통화가 불가능한 경우라면(424의 아니오), 서버 장치는 통화가 불가능한 것으로 판단하고, 필요에 따라 통화 불가 안내 메시지를 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 전달할 수 있다(425). 통화 불가 안내 메시지는, 통화가 불가능한 사실을 포함할 수 있으며, 필요에 따라서 통화가 가능한 것으로 예측되는 시점 등과 같이 적어도 하나의 정보를 더 포함할 수도 있다.
이후 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 전달된 상황 정보에 따라서 상황이 변경되었다고 판단되고(426의 예), 변경된 상황에 따라서 통화가 가능하게 되었다고 판단되면(427의 예), 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 통화가 가능하다는 메시지를 전송할 수 있다(428). 만약 상황이 변경되지 않거나(426의 아니오) 또는 통화가 불가능하다고 판단되면(427의 아니오), 필요에 따라 통화 불가 안내 메시지를 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 전송하고(425), 서버 장치는 계속해서 대기할 수 있다. 물론 실시예에 따라서 서버 장치가 서비스 제공 동작을 중단할 수도 있다.
통화가 가능하다고 판단된 이후, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 통화가 발신되면(429의 예), 서버 장치는 제1 단말 장치 및 제2 단말 장치가 상호 통화가 가능하도록 동작을 수행한다(430). 만약 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 통화 발신이 수행되지 않으면(429의 아니오), 서버 장치는, 미리 정의된 바에 따라서 서비스 제공 동작을 종료할 수도 있다.
이하 상황 기반 동작 결정 방법의 구체적인 실시예 중 하나로, 도 22 및 도 23을 참조하여 스케줄 설정에 관련된 서비스에 대한 제1 실시예를 설명하도록 한다.
도 22는, 상황 기반 동작 결정 방법의 구체적인 제2 실시예에 대한 제1 흐름도이고, 도 23은 상황 기반 동작 결정 방법의 구체적인 제2 실시예에 대한 제2 흐름도이다.
도 22 및 도 23에 도시된 상황 기반 동작 결정 방법의 제2 실시예를 참조하면, 먼저 상술한 바와 동일하게 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 상황 정보를 수신하여 획득하고, 저장부에 저장된 상황 정보를 갱신할 수 있다(440).
제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 스케줄 설정 요청이 수신되면(441), 서버 장치는 스케줄 설정 요청에 응하여, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나의 상황 정보를 기반으로 상황을 판단하고(442), 스케줄 설정이 가능한지 여부를 판단한다(442, 443). 스케줄 생성 요청은, 스케줄 설정에 필요한 정보를 포함할 수 있으며, 구체적으로 원하는 시간, 원하는 장소 및 원하는 상대방 중 적어도 하나에 대한 정보를 포함할 수 있다.
만약 스케줄 설정이 불가능한 경우라면, 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 스케줄 설정 불가 안내 메시지를 전송한다(444).
만약 서버 장치가 스케줄 재설정 요청 신호를 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 수신하면(445의 예), 서버 장치는 상황 판단 및 스케줄 설정 가능 여부의 판단을 순차적으로 수행한다(442, 443). 여기서, 스케줄 재설정 요청은, 수정된 스케줄 설정에 필요한 정보를 포함할 수 있다. 수정된 스케줄 설정에 필요한 정보는, 스케줄 설정에 필요한 정보에서 시간, 장소 및 상대방 중 적어도 하나가 수정된 정보를 의미한다.
만약 서버 장치가 스케줄 재설정 요청 신호를 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 수신하지 않으면(445의 아니오), 서버 장치는, 예를 들어, 미리 설정된 바에 따라서 서비스 제공 동작을 중단할 수 있다.
만약 스케줄의 설정이 가능하다고 판단되면(443의 예), 서버 장치는 설정된 바에 따라서 스케줄을 설정할 수 있다.
이 경우, 서버 장치는, 예를 들어, 먼저 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 스케줄 설정이 가능하다는 메시지를 전송할 수 있다(446).
또한, 만약 스케줄의 설정을 위해서 추가 자료가 더 필요한 경우라면(447의 예), 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 추가 자료를 제공할 것을 요청할 수 있다(448).
제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 스케줄 설정이 가능하다는 메시지를 전송한 후, 또는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 추가 자료가 수신된 이후, 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 스케줄 승인 요청을 전송할 수 있다(449). 이 경우, 제1 단말 장치로부터 스케줄 설정 요청이 송신된 경우라면, 서버 장치는 제2 단말 장치로 스케줄 승인 요청을 전송한다. 반대로 제2 단말 장치로부터 스케줄 설정 요청이 송신된 경우라면, 서버 장치는 제1 단말 장치로 스케줄 승인 요청을 전송한다.
만약 서버 장치가 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 스케줄 승인 요청을 발송한 것에 대응하여, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 스케줄의 승인에 대응하는 신호를 수신하면(450의 예), 서버 장치는 스케줄을 설정 및 저장하고(451), 필요에 따라서 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 스케줄이 승인되었다는 메시지를 전송할 수 있다(452).
반대로 서버 장치가 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 스케줄 승인 요청을 발송한 것에 대응하여, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 스케줄 승인의 거절에 대응하는 신호를 수신하면(450의 아니오), 서버 장치는 스케줄의 설정 동작을 중단하고, 필요에 따라, 승인이 거절되었다는 사실을 안내하는 승인 거절 안내 메시지를 생성하여 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 전송할 수 있다(453).
상술한 과정을 거쳐 스케줄이 설정 및 저장된 경우(451), 서버 장치는 필요에 따라 부가적으로 스케줄과 관련된 서비스를 더 제공할 수 있다.
구체적으로 도 23에 도시된 바를 참조하면, 서버 장치는 스케줄에 따라서 제1 단말 장치의 사용자 및 제2 단말 장치의 사용자 중 적어도 하나의 출발 요청 시간을 결정할 수 있다(460). 출발 요청 시간은 제1 단말 장치 및 제2 단말 장치 중 적어도 하나의 위치로부터 설정된 장소(즉, 목적지)까지의 소요 시간과, 스케줄 내에 설정된 시간을 이용하여 연산된 것일 수 있다. 이를 위해 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나의 위치에 대한 정보를 획득하고, 획득한 위치 정보와 장소 사이의 거리나 경로를 설정하고, 이를 기반으로 소요 시간을 획득한 후, 출발 요청 시간을 결정할 수도 있다. 출발 요청 시간의 결정은 제1 단말 장치 및 제2 단말 장치 중 적어도 하나에 의해 수행될 수도 있다.
출발 요청 시간 등은 기 정의된 스케줄에 반영될 수 있으며, 이에 따라 스케줄에 대한 정보는 갱신될 수 있다(461).
만약 설정된 시간, 설정된 시간에 대하여 일정 기간 이전의 시간 및/또는 출발 요청 시간이 도래하면(462의 예), 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 알림 신호를 전송할 수 있다(463).
또한, 필요에 따라 서버 장치는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 출발 여부에 대한 신호를 수신하여, 제1 단말 장치의 사용자 및 제2 단말 장치의 사용자 중 적어도 하나가 출발하였는지 여부를 모니터링할 수도 있다(464). 만약 제1 단말 장치의 사용자 및 제2 단말 장치의 사용자 중 적어도 하나가 설정된 장소로 출발한 경우, 출발 정보는 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로 전송된다. 이에 따라 제1 단말 장치의 사용자 및 제2 단말 장치의 사용자 중 적어도 하나는, 상대방의 출발 여부를 보다 적절히 인지할 수 있게 된다.
한편, 실시예에 따라서, 제1 단말 장치 및 제2 단말 장치 중 적어도 하나는 차량 및 차량에 설치된 내비게이션 장치 중 적어도 하나와 페어링된 것일 수 있다. 이 경우, 설정된 장소에 대한 정보를 제1 단말 장치 및 제2 단말 장치 중 적어도 하나로부터 차량 및 내비게이션 장치 중 적어도 하나로 전달되고, 차량 및 내비게이션 장치는 수신한 장소에 대한 정보를 기초로 목적지를 설정할 수도 있다.
상술한 바와 같이 최종 동작의 결정은 서비스 제공 및 서비스 제공 개시의 트리거로 이용될 수 있다. 이하 도 24를 참조하여, 최종 동작의 결정 및 서비스 제공을 수행하는 상황 기반 동작 결정 방법의 일 실시예에 대해 설명한다.
도 24는 상황 기반 동작 결정 방법의 구체적인 제3 실시예에 대한 제2 흐름도이다.
도 24에 도시된 바에 따르면, 먼저 사용자는 음성으로 단말 장치에 사용자 명령을 입력하거나, 또는 소정의 입력 장치를 조작하여 사용자 명령을 입력할 수 있다(470).
이 경우, 단말 장치는, 상술한 바와 같이, 단말 장치의 사용자 및 주변 환경 중 적어도 하나에 대한 상황 정보 및 상황 인식용 데이터베이스를 이용하여 사용자 명령에 대응하는 추천 동작을 결정할 수 있다(471).
이어서, 단말 장치는, 선택 이력 데이터베이스를 이용하여 추천 동작을 검증할 수 있다(472).
단말 장치는, 추천 동작의 검증 결과, 추천 동작이 적절한 것으로 판단되면, 추천 동작을 최종 동작으로 결정하고, 만약 추천 동작이 적절하지 않으면, 미리 정의된 바에 따라 기본 동작을 최종 동작으로 결정할 수 있다(437).
최종 동작이 결정되면 최종에 따라서 단말 장치는 동작을 개시한다(474). 필요에 따라 단말 장치는 최종 동작의 수행 전에 또는 최종 동작의 수행 이후에 최종 동작에 대한 사용자의 승인을 수신할 수도 있다.
이 경우, 최종 동작의 결정이나, 사용자의 승인 및/또는 단말 장치의 동작은, 서비스 제공 또는 서비스 제공 개시에 대한 트리거로 이용될 수 있다.
이에 따라, 단말 장치는 서버 장치로 최종 동작에 대응하는 서비스에 대한 제공 요청 신호를 전송하고, 서버 장치는, 이에 응하여 서비스 제공 요청 신호에 대응하는 상대방 및 상대방의 단말 장치 중 적어도 하나의 상황을 판단한다(475).
서버 장치는 상대방 및 상대방의 단말 장치 중 적어도 하나에 대한 상황 판단 결과에 따라서 서비스 제공 여부가 판단 및 결정되고(476), 서버 장치는 서비스 제공 여부에 대한 판단 및 결정 결과를 기초로 상술한 바와 같은 동작을 수행할 수 있다.
상술한 상황 기반 동작 결정 방법은, 동일하거나 또는 일부 변형을 거쳐 단말 장치의 제어 방법, 서버 장치의 제어 방법 또는 차량의 제어 방법에도 적용 가능하다.
상술한 실시예에 따른 상황 기반 동작 결정 방법은, 다양한 컴퓨터 장치에 의해 구동될 수 있는 프로그램의 형태로 구현될 수 있다. 여기서 프로그램은, 프로그램 명령, 데이터 파일 및 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 프로그램은 기계어 코드나 고급 언어 코드를 이용하여 설계 및 제작된 것일 수 있다. 프로그램은 상술한 차량 충전 방법을 구현하기 위하여 특별히 설계된 것일 수도 있고, 컴퓨터 소프트웨어 분야에서 통상의 기술자에게 기 공지되어 사용 가능한 각종 함수나 정의를 이용하여 구현된 것일 수도 있다.
상황 기반 동작 결정 방법을 구현하기 위한 프로그램은, 컴퓨터에 의해 판독 가능한 기록 매체에 기록될 수 있다. 컴퓨터에 의해 판독 가능한 기록 매체는, 예를 들어, 하드 디스크나 플로피 디스크와 같은 자기 디스크 저장 매체, 자기 테이프, 컴팩트 디스크(CD) 또는 디브이디(DVD) 등과 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 기록 매체(magneto-optical media) 및 롬(ROM), 램(RAM) 또는 플래시 메모리 등과 같은 반도체 저장 장치 등 컴퓨터 등의 호출에 따라 실행되는 특정 프로그램을 저장 가능한 다양한 종류의 하드웨어 장치를 포함할 수 있다.
이상 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법의 적어도 하나의 실시예에 대해 설명하였으나, 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법은 오직 상술한 실시예에 한정되는 것은 아니다. 해당 기술 분야에서 통상의 지식을 가진 자가 상술한 실시예를 기초로 수정 및 변형하여 구현 가능한 다양한 실시예 역시 상술한 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법의 또 다른 실시예가 될 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성 요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나 다른 구성 요소 또는 균등물에 의하여 대치되거나 또는 치환되더라도, 상술한 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법의 일 실시예가 될 수 있으며, 상술한 바와 동일하거나 유사한 결과를 획득할 수 있다.
10: 제1 단말 장치 10-1: 차량
20: 제2 단말 장치 20-1: 차량
100: 프로세서 140: 보조 기억 장치
149: 주 기억 장치 151: 클락
153: 위치 정보 획득부 170: 알림부
171: 알림음 출력부 172: 진동부
173: 조명부 180: 통신부
190: 사용자 인터페이스 191: 입력부
193: 표시부 195: 사운드 입력부
197: 사운드 출력부 300: 서버 장치
310: 프로세서 340: 저장부
380: 통신부

Claims (22)

  1. 제1 단말 장치;
    상기 제1 단말 장치와 통신 가능하게 연결되고, 상기 제1 단말 장치로부터 서비스 제공 요청을 수신하는 서버 장치; 및
    상기 서버 장치와 통신 가능하게 연결되고, 상기 서버 장치로 상황 정보를 전달하는 제2 단말 장치;를 포함하되,
    상기 서버 장치는, 상기 서비스 제공 요청에 응하여 상기 제2 단말 장치로부터 전달된 상황 정보를 기초로 서비스 제공 가능 여부를 결정하고, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하는 상황 기반 동작 결정 시스템.
  2. 제1항에 있어서,
    상기 제1 단말 장치는, 상기 서버 장치로 서비스 제공 개시 요청을 전송하고,
    상기 서버 장치는, 상기 제공 개시 요청에 따른 서비스에 필요한 정보를 결정하고, 상기 제2 단말 장치로 승인 요청을 전송하는 상황 기반 동작 결정 시스템.
  3. 제1항에 있어서,
    상기 서버 장치는, 상기 제2 단말 장치로 주기적으로 또는 임의적 시점에 상황 정보의 갱신 요청을 전송하는 상황 기반 동작 결정 시스템.
  4. 제1항에 있어서,
    상기 서버 장치는, 서비스 제공이 불가능하다고 결정되면, 상기 제1 단말 장치에 서비스 제공 불가에 대한 안내 메시지를 전송하는 상황 기반 동작 결정 시스템.
  5. 제4항에 있어서,
    상기 서버 장치는, 상기 제2 단말 장치로부터 상황 정보를 다시 전달 받고, 상기 상황 정보를 기초로 서비스 제공 가능 여부를 다시 결정하는 상황 기반 동작 결정 시스템.
  6. 제5항에 있어서,
    상기 서버 장치는, 상기 서비스 제공 가능 여부의 재 결정 결과, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하거나, 또는 상기 제1 단말 장치에 서비스 제공 가능에 대한 안내 메시지를 전송하는 상황 기반 동작 결정 시스템.
  7. 제4항에 있어서,
    상기 서버 장치는, 상기 제1 단말 장치로부터 새로운 서비스 제공 요청을 수신하는 상황 기반 동작 결정 시스템.
  8. 제1항에 있어서,
    상기 서버 장치는, 상기 제1 단말 장치에 추가 정보 전송 요청을 전달하는 상황 기반 동작 결정 시스템.
  9. 제1항에 있어서,
    상기 서비스는, 스케줄 설정을 포함하고,
    상기 서버 장치는, 상기 스케줄에 따른 시간이 도래하면, 상기 제1 단말 장치 및 상기 제2 단말 장치 중 적어도 하나로 알림 신호를 전송하는 상황 기반 동작 결정 시스템.
  10. 제1항에 있어서,
    상기 제1 단말 장치는, 상황 인식용 데이터베이스 및 상기 상황 정보를 이용하여 추천 동작 및 상기 추천 동작에 대응하는 추천 지수를 결정하고, 선택 이력 데이터베이스를 이용하여 상기 추천 동작을 검증하고, 검증 결과에 따라서 최종 동작을 결정하는 상황 기반 동작 결정 시스템.
  11. 제1 단말 장치로부터 서비스 제공 요청을 수신하는 단계;
    상기 제1 단말 장치와 상이한 제2 단말 장치로부터 상황 정보를 수신하는 단계;
    상기 서비스 제공 요청에 응하여 상기 제2 단말 장치로부터 전달된 상황 정보를 기초로 서비스 제공 가능 여부를 결정하는 단계; 및
    서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하는 단계;를 포함하는 상황 기반 동작 결정 방법.
  12. 제11항에 있어서,
    서비스 제공 개시 요청을 수신하는 단계;
    상기 제공 개시 요청에 따른 서비스에 필요한 정보를 결정하는 단계; 및
    상기 제2 단말 장치로 승인 요청을 전송하는 단계;를 더 포함하는 상황 기반 동작 결정 방법.
  13. 제11항에 있어서,
    상기 제2 단말 장치로 주기적으로 또는 임의적 시점에 상황 정보의 갱신 요청을 전송하는 단계;를 더 포함하는 상황 기반 동작 결정 방법.
  14. 제11항에 있어서,
    서비스 제공이 불가능하다고 결정되면, 상기 제1 단말 장치에 서비스 제공 불가에 대한 안내 메시지를 전송하는 단계;를 더 포함하는 상황 기반 동작 결정 방법.
  15. 제14항에 있어서,
    상기 제2 단말 장치로부터 상황 정보를 다시 전달 받는 단계; 및
    상기 상황 정보를 기초로 서비스 제공 가능 여부를 다시 결정하는 단계;를 더 포함하는 상황 기반 동작 결정 방법.
  16. 제15항에 있어서,
    상기 서비스 제공 가능 여부의 재 결정 결과, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하는 단계; 및
    상기 서비스 제공 가능 여부의 재 결정 결과, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스 제공 가능에 대한 안내 메시지를 전송하는 단계; 중 적어도 하나를 더 포함하는 상황 기반 동작 결정 방법.
  17. 제14항에 있어서,
    상기 제1 단말 장치로부터 새로운 서비스 제공 요청을 수신하는 단계;를 더 포함하는 상황 기반 동작 결정 방법.
  18. 제11항에 있어서,
    상기 제1 단말 장치에 추가 정보 전송 요청을 전달하는 단계;를 더 포함하는 상황 기반 동작 결정 방법.
  19. 제11항에 있어서,
    상기 서비스는, 스케줄 설정을 포함하고,
    상기 스케줄에 따른 시간이 도래하면, 상기 제1 단말 장치 및 상기 제2 단말 장치 중 적어도 하나가 알림 신호를 수신하는 단계;를 더 포함하는 상황 기반 동작 결정 방법.
  20. 제11항에 있어서,
    상황 인식용 데이터베이스 및 상기 상황 정보를 이용하여 추천 동작 및 상기 추천 동작에 대응하는 추천 지수를 결정하는 단계;
    선택 이력 데이터베이스를 이용하여 상기 추천 동작을 검증하는 단계; 및
    검증 결과에 따라서 최종 동작을 결정하는 단계;를 더 포함하는 상황 기반 동작 결정 방법.
  21. 외부의 장치와 통신 가능하게 마련된 통신부; 및
    상황 인식용 데이터베이스 및 상기 상황 정보를 이용하여 추천 동작 및 상기 추천 동작에 대응하는 추천 지수를 결정하고, 선택 이력 데이터베이스를 이용하여 상기 추천 동작을 검증하고, 검증 결과에 따라서 최종 동작을 결정하는 프로세서;를 포함하되,
    상기 통신부는, 상기 최종 동작의 결정에 응하여, 외부 장치로 서비스 제공 요청을 전송하고, 상기 외부 장치로부터 서비스와 관련된 정보를 수신하는 차량.
  22. 제21항에 있어서,
    상기 외부 장치는, 상기 서비스 제공 요청에 응하여 상기 제2 단말 장치로부터 전달된 상황 정보를 기초로 서비스 제공 가능 여부를 결정하고, 서비스 제공이 가능하다고 결정되면, 상기 제1 단말 장치에 서비스를 제공하도록 제어하는 차량.
KR1020170066517A 2017-05-30 2017-05-30 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법 KR102419728B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170066517A KR102419728B1 (ko) 2017-05-30 2017-05-30 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법
US15/805,514 US11044325B2 (en) 2017-05-30 2017-11-07 System for determining action based on context, vehicle for performing action determined based on context, and method of determining action based on context
CN201711160107.2A CN108989542B (zh) 2017-05-30 2017-11-20 基于情境确定动作的系统和方法、用于执行基于情境确定的动作的车辆

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170066517A KR102419728B1 (ko) 2017-05-30 2017-05-30 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법

Publications (2)

Publication Number Publication Date
KR20180130663A true KR20180130663A (ko) 2018-12-10
KR102419728B1 KR102419728B1 (ko) 2022-07-13

Family

ID=64460181

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170066517A KR102419728B1 (ko) 2017-05-30 2017-05-30 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법

Country Status (3)

Country Link
US (1) US11044325B2 (ko)
KR (1) KR102419728B1 (ko)
CN (1) CN108989542B (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021251699A1 (ko) * 2020-06-09 2021-12-16 ㈜올윈에어 아이템 추천 방법 및 장치
WO2022231209A1 (ko) * 2021-04-27 2022-11-03 삼성전자주식회사 사용 패턴을 이용한 예측 기반의 제어 방법 및 그 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2550309A (en) 2015-01-27 2017-11-15 Beijing Didi Infinity Tech And Dev Co Ltd Information providing method and system for on-demand service
US10394954B2 (en) * 2017-02-27 2019-08-27 Intel Corporation Natural language intent and location determination method and apparatus

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140131828A (ko) * 2013-05-06 2014-11-14 주식회사 엠텔로 음성 통화가 가능한 모바일 기기의 화면에 통화 상대방의 식별정보를 제공해주는 방법 및 시스템
JP2014238364A (ja) * 2013-06-10 2014-12-18 クラリオン株式会社 情報処理装置及びナビゲーション装置
KR20160035753A (ko) * 2014-09-24 2016-04-01 삼성전자주식회사 메시지 자동 생성 방법 및 장치
KR20160059798A (ko) * 2014-11-19 2016-05-27 현대자동차주식회사 텔레메틱스를 이용한 도어폰 통화 서비스 방법 및 시스템

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11231289B2 (en) * 2008-09-10 2022-01-25 Dominic M. Kotab Systems, methods and computer program products for sharing geographical data
US8644165B2 (en) * 2011-03-31 2014-02-04 Navteq B.V. Method and apparatus for managing device operational modes based on context information
JP5586530B2 (ja) * 2011-06-08 2014-09-10 株式会社日立ソリューションズ 情報提示装置
US9263040B2 (en) * 2012-01-17 2016-02-16 GM Global Technology Operations LLC Method and system for using sound related vehicle information to enhance speech recognition
KR20130096978A (ko) * 2012-02-23 2013-09-02 삼성전자주식회사 사용자 단말, 서버, 상황기반 정보 제공 시스템 및 그 방법
CN104509145B (zh) * 2012-07-31 2018-06-01 Sk普兰尼特有限公司 消息服务提供方法及用于该消息服务提供方法的装置和系统
US20140229568A1 (en) * 2013-02-08 2014-08-14 Giuseppe Raffa Context-rich communication between a device and a vehicle
WO2015011710A1 (en) * 2013-07-26 2015-01-29 Anagog Ltd. Associating external devices to vehicles and usage of said association
JP6348831B2 (ja) * 2014-12-12 2018-06-27 クラリオン株式会社 音声入力補助装置、音声入力補助システムおよび音声入力方法
US9955319B2 (en) * 2016-09-12 2018-04-24 Zendrive, Inc. Method for mobile device-based cooperative data capture

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140131828A (ko) * 2013-05-06 2014-11-14 주식회사 엠텔로 음성 통화가 가능한 모바일 기기의 화면에 통화 상대방의 식별정보를 제공해주는 방법 및 시스템
JP2014238364A (ja) * 2013-06-10 2014-12-18 クラリオン株式会社 情報処理装置及びナビゲーション装置
KR20160035753A (ko) * 2014-09-24 2016-04-01 삼성전자주식회사 메시지 자동 생성 방법 및 장치
KR20160059798A (ko) * 2014-11-19 2016-05-27 현대자동차주식회사 텔레메틱스를 이용한 도어폰 통화 서비스 방법 및 시스템

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021251699A1 (ko) * 2020-06-09 2021-12-16 ㈜올윈에어 아이템 추천 방법 및 장치
WO2022231209A1 (ko) * 2021-04-27 2022-11-03 삼성전자주식회사 사용 패턴을 이용한 예측 기반의 제어 방법 및 그 장치

Also Published As

Publication number Publication date
US11044325B2 (en) 2021-06-22
KR102419728B1 (ko) 2022-07-13
US20180352039A1 (en) 2018-12-06
CN108989542B (zh) 2022-04-29
CN108989542A (zh) 2018-12-11

Similar Documents

Publication Publication Date Title
CN109964271B (zh) 用于提供对用户的语音输入的响应消息的设备和方法
US10268491B2 (en) Intelli-voyage travel
US11004451B2 (en) System for processing sound data and method of controlling system
US10803859B1 (en) Speech processing for public devices
KR102419728B1 (ko) 상황 기반 동작 결정 시스템, 상황 기반으로 결정된 동작을 수행 가능한 차량 및 상황 기반 동작 결정 방법
KR102155977B1 (ko) 제3자 서비스를 디지털 어시스턴트와 통합하기 위한 시스템 및 방법
CN110244931B (zh) 用于音频输入监视的装置
US20180108353A1 (en) Personality-based chatbot and methods including non-text input
WO2017018009A1 (ja) 情報処理装置、情報処理方法及びプログラム
CN104272709B (zh) 确定推断的上下文的方法和装置
EP3724791A1 (en) Chatbot integrating derived user intent
CN108346430A (zh) 对话系统、具有对话系统的车辆以及对话处理方法
KR20180070684A (ko) 다이얼로그 시스템들에서의 파라미터 수집 및 자동 다이얼로그 생성
KR20190041569A (ko) 대화 시스템, 이를 포함하는 차량 및 대화 서비스 처리 방법
KR102339443B1 (ko) 상황 기반 동작 결정 장치, 상황 기반 동작 결정이 가능한 차량, 상황 기반 동작 결정 방법 및 상기 차량의 제어 방법
KR20190088086A (ko) 전자 장치 및 이의 제어 방법
US20220338281A1 (en) Artificial intelligence device for providing device control function based on interworking between devices and method therefor
CN105284099A (zh) 针对免提交互来自动调整用户界面
KR20200115695A (ko) 전자 장치 및 이의 제어 방법
KR20190037470A (ko) 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
KR20190031935A (ko) 대화 시스템과 이를 포함하는 차량 및 모바일 기기와 대화 처리 방법
US20240095320A1 (en) Voice-activated authorization to access additional functionality using a device
KR20190036018A (ko) 대화 시스템, 이를 포함하는 차량 및 대화 처리 방법
US11769503B2 (en) Electronic device and method for processing user utterance in the electronic device
JP6018133B2 (ja) 情報検索装置、情報検索プログラム、および情報検索システム

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right