根據應用程序活動來預測用戶意圖和未來交互的制作方法
【專利說明】
[0001] 相關的專利申請
[0002] 本專利申請與于2012年9月20日提交的代理人案卷號為4860P15342的名稱為 "Inferring User Intent from Battery Usage Level and Charging Trends"的共同未決 的美國專利申請13/623, 747相關。
技術領域
[0003] 本發明的實施例整體涉及便攜式設備的功率管理。更具體地,本發明的實施例涉 及針對功率管理目的根據應用活動來預測用戶意圖和未來交互。
【背景技術】
[0004] 對數據處理系統的功率管理經常涉及用于降低數據處理系統中的部件的功率消 耗的技術。數據處理系統可為膝上型電腦或其他形式的便攜式計算機,諸如手持式通用計 算機或蜂窩電話。由電池供電的便攜式設備中的功率消耗的管理特別重要,因為功率管理 越好通常導致當便攜式設備由一個或多個電池供電時有能力使用該便攜式設備更長的時 間段。
[0005] 隨著設備變得越來越復雜并且其能力越來越多樣化,越來越難從系統深處作出最 佳功率管理決定。盡管設計者已成功作出關于中心功率管理驅動器內的硬件狀態的決定, 但他們無法說明硬件之外的塊。
[0006] 由電池供電的設備的用戶通常更愿意在他們使用設備時電池并未耗盡。用戶級功 率管理可隨著電池接近耗盡通過以性能降低為代價降低功率消耗來試圖延長電池的壽命。 大多數常規系統僅在電池電量已經很低時執行此類功率管理動作。有時這實際上可能為時 已晚。
【附圖說明】
[0007] 本發明的實施例以舉例的方式進行說明,而不僅限于各個附圖的圖形,在附圖中 類似的附圖標號指示類似的元件。
[0008] 圖1為示出根據本發明的一個實施例的便攜式設備的實例的框圖。
[0009] 圖2為示出根據本發明的一個實施例的便攜式設備的硬件配置的框圖。
[0010] 圖3為示出根據本發明的一個實施例的用戶級功率管理系統的實例的框圖。
[0011] 圖4為示出根據本發明的一個實施例的用于根據電池使用啟發法和充電模式來 推斷用戶意圖的方法的流程圖。
[0012] 圖5為示出根據本發明的另一實施例的用于根據電池使用啟發法和充電模式來 推斷用戶意圖的方法的流程圖。
[0013] 圖6為示出根據本發明的另一實施例的用戶級功率管理系統的框圖。
[0014] 圖7為示出根據本發明的另一個實施例的用于用戶級功率管理的方法的流程圖。
[0015] 圖8為示出根據本發明的另一個實施例的用于用戶級功率管理的方法的流程圖。
[0016] 圖9為示出可與本發明的一個實施例一起使用的數據處理系統的實例的框圖。
【具體實施方式】
[0017] 將參考以下討論的細節來描述本發明的多個實施例和方面,并且附圖將示出各個 實施例。以下說明書和附圖對于本發明是示例性的,并且不應被理解為限制本發明。描述 了眾多具體細節以提供對本發明的各種實施例的徹底理解。然而,在某些實例中,熟知的或 常規的細節并未被描述以提供對本發明的實施例的簡明論述。
[0018] 在本說明書中對"一個實施例"("one embodiment"或"an embodiment")的引 用是指結合該實施例所描述的特定特征、結構或特性可被包括在本發明的至少一個實施例 中。在本說明書中的各個位置出現的短語"在一個實施例中"不一定都是指同一個實施例。
[0019] 根據一些實施例,用戶代理(也稱為自適應用戶體驗管理器)被設計用于以當設 備的各種性能對效率的旋扭被暴露于用戶時用戶會設定這些旋鈕的方式來設定這些旋鈕。 由于性能和效率通常為相對的目標,因此需要新的度量來優化各種旋鈕。其包括最適合用 戶的情況。有時,其可能為更高的性能。在其他時候,其可能為更長電池壽命(功率效率)。
[0020] 根據一個實施例,用戶代理利用許多競爭性啟發法以憑直覺獲知用戶目標,然后 決定如何以最佳方式管理設備的各種塊的性能和效率以實現用戶目標。啟發法從用戶運 行的應用程序、收集關于用戶環境的數據的傳感器(環境光線、運動(例如,陀螺儀)、位置 (例如,全球定位系統或GPS)、無線網絡可用性等)中得到信息,并且從用戶與設備的物理 交互(屏幕開/關、電源適配器連接/分離等)中得到信息。用戶代理然后評估來自各種 啟發法的信息,并且然后針對其能夠進行管理的塊中的每個塊在性能和效率之間選擇最佳 調諧。
[0021] 所關注的一個領域是瞬時功率預算和長期功率預算。在任何給定時間處,來自啟 發法的信息指出如何以最佳方式在各種設備之間分配有限的功率預算(由功率源設計或 設備的熱性能進行限制)。可以想象,如果這意味著可提供給GPU更多功率并且游戲性能增 強,則用戶在處于黑暗的房間時滿足于稍暗的屏幕。長期功率預算關注確保設備隨時間的 功率使用并不耗盡電池和干擾用戶。這些類型的功率預算有助于提供系統中的旋鈕上的界 限并且能夠限制可應用哪種啟發法或各種啟發法可應用至何種程度。
[0022] 根據一個方面,跟蹤日常電池使用水平和充電模式(例如,用戶對設備電池充電 的頻率),并且可創建有關用戶行為的趨勢。偏離這些趨勢也可發信號通知用戶意圖上更即 時的變化。根據另一方面,經由應用程序編程接口(API)來監視正在便攜式設備內運行的 應用程序活動并且可利用這些活動來推斷使用便攜式設備的用戶意圖。
[0023] 圖1為示出根據本發明的一個實施例的便攜式設備的實例的框圖。例如,便攜式 設備100可為智能電話(例如,iPhone)、媒體播放器(例如,iPod)、平板電腦(例如,iPad)、 膝上型電腦(例如,Mac Book)等。參考圖1,便攜式設備100包括也稱為自適應用戶體驗管 理器的用戶代理101來與程序102-104通信以監視程序102-104的活動,其中程序102-104 可正在便攜式設備100的操作系統的用戶空間(例如,應用程序)或內核空間(例如,設備 驅動程序)處運行。此外,用戶代理101耦接至多個功率管理代理(PMAs) 105以獲得硬件 106的功率管理狀態和/或經由對應的PMA對硬件106執行某些功率管理動作,這些PMA包 括但不限于背光源代理111、片上系統(SOC)代理112、基帶(例如,RF前端)代理113和 WiFi代理114。如圖2所示,硬件106表示多種硬件設備,諸如SOC芯片201、背光源電路 202、基帶電路203、WiFi部件204、存儲器205、顯示器206、多點觸摸設備或鍵盤207和電 池。
[0024] 根據一個實施例,用戶代理101包括電池使用監視器110,該電池使用監視器被配 置為監視便攜式設備100的日常電池使用和日常電池充電模式并編譯存儲在便攜式設備 100的持久性存儲設備中的電池啟發法107。給定時間點處的特定電池使用水平可由用戶 意圖確定單元109使用來與電池啟發法107相比較以確定便攜式設備100的用戶是否正 在異常條件下操作,在該情況下可對便攜式設備執行某些功率管理動作以適應便攜式設備 100的異常使用。
[0025] 在一個實施例中,用戶代理101包括活動分析器108以經由一組API傳送程序 102-104,從而獲得程序102-104的某一活動或事件信息。基于程序的活動,用戶代理101的 用戶意圖確定單元109可解譯或推斷用戶當前利用便攜式設備的用戶意圖和/或在不對電 池進行充電的情況下用戶想要使用便攜式設備的時間段。基于用戶意圖,用戶代理101可 指示PMAlll-114中的至少一些以對硬件106執行某些功率管理動作。此外,用戶代理101 還可與一個或多個程序102-104通信以使程序調節(例如,提高或降低)試圖優化電池剩 余功率容量的利用的程序的某一性能。
[0026] 圖3為示出根據本發明的一個實施例的用戶級功率管理系統的實例的框圖。系統 300可被實現為圖1的系統100的一部分。參考圖3,電池使用監視器110被配置為經由電 池功率管理單元302來監視電池303的電池使用和電池充電數據。電池使用監視器110可 周期性地監視日常的電池使用和充電。然后電池統計值編譯器301使用表示電池使用和充 電數據的數據來分析并編譯電池啟發法和充電模式或趨勢107,其可存儲在便攜式設備的 持久性存儲設備(未示出)中。電池使用啟發法和充電模式107可長時間不斷地或周期性 地進行更新以形成用戶的電池使用和充電行為的更精確的趨勢。在一個實施例中,電池啟 發法編譯器301還可計算用戶的日常