Application enabler layer support for management of AIML operations
The application enabler layer addresses the challenge of managing disturbances in AIML operations within 5G systems by providing operational management through AIML enabler servers and clients, ensuring seamless and efficient AIML operations.
Patent Information
- Application Number
- PCT/US2024/060031
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-15
- Filing Date
- 2024-12-13
- Publication Date
- 2025-06-19
Smart Images

Figure IMGF000004_0001 
Figure IMGF000005_0001 
Figure IMGF000011_0001
Abstract
Description
APPLICATION ENABLER LAYER SUPPORTFOR MANAGEMENT OF AIML OPERATIONSCROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Patent Application No. 63 / 610,655, filed December 15, 2023, which is hereby incorporated by reference in its entirety.BACKGROUND
[0002] Applications are becoming increasingly more complex and various mechanisms have been designed to assist with quicker development of the applications. One such mechanism is the introduction of different functional layers within (or adjacent to) the application layer to separate functions that may be accessed via application programming interfaces or APIs. In 3 GPP, the Service Enabler Architecture Layer for Verticals (SEAL) provides horizontal functionality to certain applications. Some of the common services offered by SEAL are location management, group management, configuration management, identity management, key management, and network resource management. These services may be available to all applications as the services are agnostic to vertical industries. Each of the services offered may be associated with a corresponding management server, e.g. a group management server offering group services and a location management server offering location services. Machine Learning (ML) is a complex process in which mathematical algorithms are trained with curated data to generalize predictions of future data based upon the training. The first step of an ML workflow is the determination of requirements for the ML application, which could be based on business needs. ML requirements may specify the general (e.g. supervised, unsupervised) and specific (e.g. classification, regression) types of ML applications, the desired ML models (e.g. neural networks, decision trees), input data requirements, training details, and ML model output.SUMMARY
[0003] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to beused to limit the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to limitations that solve any or all disadvantages noted in any part of this disclosure.
[0004] The present disclosure defines systems and methods for using an application enabler layer to support management of machine learning systems. The support of AIML within 5G systems offers many intriguing possibilities for federated learning and other types of machine learning. The 5G system can provide an abundance of federated learning clients with various capabilities and data collection potential to craft a wide range of machine learning applications. However, disturbances and interruptions to artificial intelligence / machine learning (AIML) operations must be accounted for to enable seamless and meaningful operations. An AIML enabler layer consisting of AIML enabler servers and clients may be able to provide the required operational management of AIML operations to offload Vertical Application Layer (VAL) servers from the tedious adaptation required for the disturbances and interruptions.
[0005] In an example, an apparatus may receive, from a server, a subscription request for an artificial intelligence / machine learning (AIML) operation. The subscription request may be associated with at least one of: one or more ML models, one or more ML model parameters, one or more training requirements, or at least one of: an AIML enabler client identifier, an AIML enabler client set, or an indicator to allow for the management of the AIML enabler client set. The apparatus may cause training, by one or more AIML enabler clients, of the ML model. The apparatus may send, to the server, a notification indicating at least one of: a subscription identifier, one or more trained ML models, the one or more ML model parameters, a percentage completion of the AIML operation, or a time that has elapsed for the AIML operation.BRIEF DESCRIPTION OF THE DRAWINGS
[0006] FIG. 1 shows an example system of a tiered application layer architecture model;
[0007] FIG. 2 shows an example system of a generic on-network SEAL functional model;
[0008] FIG. 3 shows an example system of a machine learning workflow;
[0009] FIG. 4 shows an example of a general application enabler layer AIML operational management procedure;
[0010] FIG. 5 shows an example of an application enabler layer operational management procedure due to UE mobility;
[0011] FIG. 6 shows an example of an application enabler layer operational management procedure due to UE communication loss;
[0012] FIG. 7 shows an example of an application enabler layer operational management procedure due to UE conditions;
[0013] FIG. 8 shows an example of an application enabler layer operational management procedure due to network congestion;
[0014] FIG. 9 shows an example graphical user interface for an AIML job request;
[0015] FIG. 10 shows an example user interface;
[0016] FIG. 11 A shows an example communications system;
[0017] FIG. 1 IB shows an example apparatus configured for wireless communications;
[0018] FIG. 11C shows an example system;
[0019] FIG. 1 ID shows an example system;
[0020] FIG. 1 IE shows an example system;
[0021] FIG. 1 IF shows an example system; and
[0022] FIG. 11G shows an example system.DETAILED DESCRIPTION
[0023] Methods and apparatuses are described herein for supporting artificial intelligence / machine learning (AIML) with an application enabler layer.
[0024] The following abbreviations may be used herein:
[0025] The following definitions may be used herein:
[0026] Applications are becoming increasingly more complex and various mechanisms have been designed to assist with quicker development of the applications. One such mechanism is the introduction of different functional layers within (or adjacent to) the application layer to separate functions that may be accessed via application programming interfaces or APIs.
[0027] FIG. 1 shows an example of a generalized application layer architecture 100 that separates application development into three distinct layers: application-specific, vertical application enabler, and (common) service layers. At the bottom of the application stack is the (common) service layer, which provides common or horizontal services to all applications. The services may include location management, group management, configuration management, and security aspects for application development. Above the service layer is the vertical application enabler layer, which is a layer that manages services for a specific vertical application such as autonomous vehicles, drones, loT, gaming, etc. At the top of the application stack is the application-specific layer which serves specific applications within a vertical application. This layer contains custom or business logic for a particular application and may be provided by various service providers in a vertical application domain. One goal of this three-layered approach is toabstract common services for all applications to the vertical application enabler and service layers to simplify application development for faster deployments of the applications.
[0028] The architecture shown in FIG. 1 is based on a client-server communication model. One or more client applications on devices may communicate with one or more server applications on application servers. Note that server applications may reside in one or more application servers. The client application and server application of each layer communicate with each other between the devices and application servers. The application-specific client and server may communicate with client and server applications at any of the lower layers, respectively. For example, an application-specific client may communicate with the client application at either the vertical application enabler or service layers. A network between the client and server applications provides the medium for communication. The network may be a cellular network such as a mobile operator network or the network may be a broadband service provider network providing access to the internet for client and server applications.
[0029] It is worth noting that the architecture shown in FIG. 1 may also apply to publish- subscribe and subscription-notification communication models. It is also worth noting that for decentralized deployments in which devices communicate directly with other devices, server functionality may reside on a device rather than on the application servers. For this case, devices may communicate with one another such that one device may function as a client and another device may function as a server.
[0030] In 3GPP, the Service Enabler Architecture Layer for Verticals (SEAL) provides horizontal functionality to all applications similar to the common service layer shown in FIG. 1. Some of the common services offered by SEAL are location management, group management, configuration management, identity management, key management, and network resource management. These services may be available to all applications as the services are agnostic to vertical industries. Each of the services offered may be associated with a corresponding management server, e.g. a group management server offering group services and a location management server offering location services.
[0031] FIG. 2 shows the on-network functional model of SEAL 200 as described in 3GPP Technical Specification 23.434, Service Enabler Architecture Layer for Verticals (SEAL); Functional architecture and information flows; VI 8.6.0 (2023-09).
[0032] Machine Learning (ML) is a complex process in which mathematical algorithms are trained with curated data to generalize predictions of future data based upon the training. The first step of an ML workflow is the determination of requirements for the ML application, which could be based on business needs. ML requirements may specify the general (e.g. supervised, unsupervised) and specific (e.g. classification, regression) types of ML applications, the desired ML models (e.g. neural networks, decision trees), input data requirements, training details, and ML model output.
[0033] FIG. 3 shows an example machine learning workflow 300.
[0034] After ML requirements are available, the process of collecting data and preparing the data for training is of utmost importance. An ML model’s generalization capability is wholly dependent on the quality and quantity of data provided during the training process. Data may be collected from different sources and dependent on the ML algorithm, data preparation may be required in order for the ML model to be properly trained. Data may be split and merged, formatted, cleaned, scaled, converted, transformed, feature engineered, synthesized, labeled, etc. to form a dataset for training.
[0035] ML model training and evaluation follows in the ML workflow once a dataset is available. During model training, model parameters are updated periodically and performance metrics are maintained to provide status of the training. Training may consist of many rounds and be performed centrally or in a federated manner. Central, or conventional, machine learning uses a shared dataset that was prepared in totality while federated learning requires individual clients to use their private data for the training. The individual model updates are aggregated by a central FL server and updated model parameters are shared with the FL clients for the next training round. Hyperparameter optimization, which repeats training for different hyperparameter sets, may be incorporated during training to obtain the best performing model.
[0036] When the performance metric reaches a desired threshold, training may be complete and model deployment may ensue. The trained model will now be able to provide generalizations on new input data. The performance of the model may be monitored and updates to the model may be made via re-training of the model with the new data, e.g. to address data and / or model drifts.
[0037] Machine learning is a complex, highly iterative process which requires careful consideration of the input data used to train ML models. Federated learning further complicatesthe ML workflow by spliting the training to many clients whose data privacy are preserved. The availability and management of the clients are necessary to implement successful federated learning operations.
[0038] The 3GPP cellular system provides an abundance of mobile devices that may serve as federated learning clients that offer the capability and data required for federated learning. At the same time, the mobile devices may introduce challenges that a federated learning server may need to manage due to mobility, potential communication loss, various device conditions that may interfere with proper FL operations, and network disturbances and / or performance degradation. As a result, operational management of the machine learning process becomes an important consideration when developing machine and federated learning support within 3 GPP systems.
[0039] The support of AIML within 5G systems offers many intriguing possibilities for federated learning and other types of machine learning. The 5G system can provide an abundance of federated learning clients with various capabilities and data collection potential to craft a wide range of machine learning applications. However, disturbances and interruptions to AIML operations must be accounted for to enable seamless and meaningful operations. An AIML enabler layer consisting of AIML enabler servers and clients may be able to provide the required operational management of AIML operations to offload VAL servers from the tedious adaptation required for the disturbances and interruptions.
[0040] A method for an AIML enabler server to:
[0041] 1) Receive an AIML job request, the request includes one or more of: AIML operation, AIML job profile, AIML client list, minimum number of AIML clients, AIML operation schedule, AIML training threshold, and notification setings.
[0042] 2) Generate an operational schedule for the AIML job and assign an identifier for the AIML job.
[0043] 3) Send an AIML job response, the response includes one or more of: an AIML job identifier and the result of the request.
[0044] 4) Send one or more AIML task requests to AIML enabler clients, the requests include one or more of: a job identifier, a task identifier, an AIML task profile, AIML operation, operational schedule, and task expiration.
[0045] 5) Receive notifications of disturbances and interruptions to the AIML task, the disturbances and interruptions may be due to: UE mobility, UE loss of communication, network congestion, and UE conditions.
[0046] 6) Update the operational task for the AIML job.
[0047] 7) Receive AIML task notifications from AIML enabler clients, the notifications include one or more of: job identifier, task identifier, the result of the AIML task, an AIML status profile, and the elapse time for the task.
[0048] 8) Send a job notification to the VAL server, the notification includes one or more of: job identifier, task identifier, results of the task / job, an AIML status profile, and a completion status.
[0049] Within 3GPP cellular systems, User Equipment (UEs) serve as communication devices that may also provide machine / federated learning client capabilities required for training an ML model and / or support one or more steps of the ML workflow shown in FIG. 3. An ML / FL server may be realized as a VAL server shown in FIG. 2 and an AIML enabler server may provide application enablement functionalities (e.g. via common services to all ML / FL applications) as shown in FIG. 1. Hence, the AIML enabler server may be realized as part of a SEAL server or as a separate server hosting AIML specific functionality. Hereinafter, an AIML enabler server may provide functionality of both ML and FL servers and the terms ML and AIML may be used interchangeably. Additionally, while the detailed description focuses on federated learning, it may easily apply to machine learning, distributed learning, and other types of learning.
[0050] An AIML enabler server may be tasked with managing AIML operations for a VAL server in order to offload operational management from the VAL server. There may be disturbances and / or interruptions during AIML operations that an AIML enabler server may be able to better manage on behalf of VAL servers without having to needlessly notify the VAL server. For example, AIML enabler clients may move out of an area of interest for which data collection is desired, AIML enabler clients may be in an area without communication coverage or may have loss communication coverage, or there may be operational issues with the UE the AIML enabler client is running on (e.g. due to low battery power, memory and / or storage limits, and processor overload). Network disturbances and performance degradation may also impact AIML operations, which AIML enabler servers may manage by rescheduling AIML operations.
[0051] In an example, an apparatus may receive, from a server, a subscription request for an artificial intelligence / machine learning (AIML) operation. The subscription request may be associated with at least one of: one or more ML models, one or more ML model parameters, one or more training requirements, or at least one of: an AIML enabler client identifier, an AIML enabler client set, or an indicator to allow for the management of the AIML enabler client set. The apparatus may cause training, by one or more AIML enabler clients, of the ML model. The apparatus may send, to the server, a notification indicating at least one of: a subscription identifier, one or more trained ML models, the one or more ML model parameters, a percentage completion of the AIML operation, or a time that has elapsed for the AIML operation. This example is further described below and depicted in FIG. 4.
[0052] FIG. 4 shows an example application enabler layer AIML operational management procedure 400 where an AIML enabler server may offload operational management of AIML operations for VAL servers.FIG. 4 shows the following steps (note the order of the steps may be different than what is shown in the figure):
[0053] Step 1 : AIML enabler clients register with an AIML enabler server to indicate support of AIML operations. Each client may provide information of its AIML and compute capabilities, memory and storage allotment, available datasets, data collection and data preparation capabilities, and schedule availability for AIML operations. A VAL server may request to discover AIML enabler clients that meet the requirements for a desired AIML operation and the AIML enabler server may return a list of AIML enabler clients that fulfills the requirements of the AIML operation. The VAL server may select AIML enabler clients for the AIML operation and the AIML enabler server may assign an AIML set identifier for the group of AIML enabler clients willing to participate in AIML operations. The AIML enabler clients may also subscribe to receive notifications from the AIML enabler server to be notified of the selection for participation in AIML operations.
[0054] Note the AIML enabler client set identifier is different from the group identifier that is already defined within 3GPP systems. The AIML set identifier represents AIML enabler clients that have been selected for a particular AIML operation. Hereinafter, the term AIML set identifier will be used to represent the group of AIML enabler clients selected for a particular AIML operation to avoid confusion with the 3 GPP group identifier.
[0055] Step 2: The VAL server may send a subscription request to initiate an AIML job with request parameters as shown in Table 1. The subscription request may trigger the AIML enabler server to perform and manage the indicated AIML operation for the VAL server. The VAL server may include AIML specific information in an AIML job profile to provide AIML model and associated model parameters, data processing functions, training requirements, aggregation algorithms, hyperparameter sets, etc. that are required for the AIML operation. The term AIML job will be used to refer to any step of the ML workflow shown in FIG. 3, from data collection to AIML model monitoring and all steps in between. Additionally and / or alternatively, the VAL server may send a request to create a job independent of a subscription request. For this scenario, the VAL server may first send a job create request with information shown in Table 1 and then subscribe to receive notifications for the job status during the management of the AIML operation. Note the information elements listed in the table may be organized different than what is shown, e.g. AIML operation requirements and AIML training threshold may be sub-information elements of the AIML job profile.able 1 - AIML Job Request
[0056] Step 3: The AIML enabler server may use the information provided by the VAL server and information provided by VAL clients (via the AIML enabler clients) to create a schedule for the AIML operation and may assign a Job ID to manage the operational schedule of the AIML operation. The AIML enabler server may determine the appropriate number of AIML enabler clients from the AIML enabler client set provided by the VAL server. The AIML operationalschedule may be based on client availability at the time of the schedule and also the minimum number of AIML enabler clients required for the AIML operation. The AIML enabler server may also make subscriptions with the core network, a location management server, one or more analytics server, and other network entities and application servers that may provide information about each AIML enabler clients (or the UE each client is associated with). The AIML enabler server may also request each AIML enabler client provide updates of UE conditions and other information about the UE that may impact AIML operations. Additionally, the AIML enabler server may also request network monitoring and / or analytics in order to make determination on network performance during AIML operations.
[0057] Step 4: The AIML enabler server may return a response to the VAL server, the response may include the information elements as shown in Table 2. An AIML job ID may be returned in the response to the VAL server. The job ID may be used by the VAL server to obtain status from the AIML enabler server on the progress of the AIML job. The VAL server may also use the job ID to update information associated with the AIML job at a future time, e.g. to change any of the information elements in Table 1. A result for the job request may be provided and if the original request was a subscription request, a subscription identifier may also be provided in the response. Note that steps 3 and 4 may occur in a different order than what is shown in the figure.Table 2 - AIML Job Response
[0058] Step 5: The AIML enabler clients may be configured and / or provisioned in step 5a to participate in the AIML operation associated with the AIML job. The configuration and / or provisioning may be performed via application layer signaling, user configuration, the download of AIML profiles or other policies, or another out of band mechanism. The AIML enabler clients may each send a request to the AIML enabler server in step 5b indicating the intention to participate in the AIML job. The request may include a job ID, the available computation and memory resources for the AIML operation, and the schedule availability of the AIML enabler client to perform AIML operations. The AIML enabler server may return a task ID, the AIML operation to perform, AIML task profile information, the operational schedule, and a task expiration to the AIML enabler client.
[0059] Additionally and / or alternatively, the AIML enabler server may send individual task subscription requests to the chosen AIML enabler clients for the AIML job. The subscription request may contain an AIML task profile and other information as shown in Table 3. Note the information elements listed in the table may be organized different than what is shown, e.g., the operational schedule and task expiration may be sub-information elements of the AIML task profile.
[0060] Note that there may be many more task subscription requests sent to AIML enabler clients than what is shown in the figure and the AIML enabler server may even schedule more AIML enabler clients than the minimum number of clients requirement. The AIML task profile may provide the AIML model and model parameters, input data and data processing requirements, etc. The task subscription request may be associated with a training / inferencing task as part of an overall AIML job. Each AIML enabler client may return a response that may include an indication whether the AIML enabler client is willing and able to participate in the AIML operation for the task duration. AIML enabler clients that agree to participate in the AIML operation may start to perform the AIML task at the appropriate time and / or when entering a specific area of interest as shown in step 5c.
[0061] In yet another embodiment, the AIML enabler server may send notifications to the chosen AIML enabler clients of their selection to participate in AIML operations for the job. The AIML enabler clients may have sent subscription requests in step 1 to be notified of the selection for participation in AIML operations. The notification messages may include information as shown in Table 3.Table 3 - AIML Task Request
[0062] Step 6: Each AIML enabler client may complete the task at different times and therefore, the AIML enabler server may need to wait until the task expiration to aggregate the results. However, various disturbances and interruptions may occur that may jeopardize the completion of the task. During these disturbances and / or interruptions, the AIML enabler server may need to update the operational schedule to continue the AIML task.
[0063] For example, disturbances and interruptions to the network and / or UEs may result in a reduced number of AIML enabler clients reporting operational results. A UE may move out of the area of interest and is no longer able to collect data within the area of interest. Networkcongestions or UEs being out of coverage may delay AIML operations beyond the task expiration time. At times, UE conditions may affect the AIML enabler client’s ability to complete the task, e.g. due to low battery power, UEs operating in power saving mode, overloaded processor, memory and storage limits, and a user powering off or restarting the UE.
[0064] For these cases, the AIML enabler server may need to configure task requests to other available AIML enabler clients that could complete the task. In the absence of readily available AIML enabler clients (e.g. from a client pool), the AIML enabler server may be required to discover new AIML enabler clients that could fulfill the AIML tasks. There may also be cases in which UE conditions may prevent the timely completion of the AIML task and the AIML enabler server may need to configure an extension to the task expiration while delaying the scheduling of the next AIML task within the job.
[0065] If all the AIML enabler clients complete the task within the allotted time, the AIML enabler server may skip steps 7 and 8 and proceed to step 9.
[0066] Step 7 : If there have been disturbances and / or interruptions to the completion of the AIML task, the AIML enabler server may discover and configure one or more AIML enabler clients to complete the AIML task. The task request may contain similar information as that shown in Table 3 but adapted and sent to different AIML enabler clients. The AIML enabler server may select the AIML enabler clients from a client pool that the AIML enabler server may maintain or the AIML enabler server may discover new AIML enabler clients that have become available after the last time the AIML enabler server performed AIML enabler client discovery. The AIML enabler server may proactively discover newly available AIML enabler clients after an AIML job has started to ensure AIML task disruptions are kept to a minimum. As part of the AIML enabler client discovery process, the AIML enabler server may maintain a pool of AIML enabler clients that is available to participate in future AIML tasks. Therefore, the AIML enable server is dynamically managing the AIML enabler client set for the VAL server and adapting AIML operations in responses to disturbances and / or interruptions to the AIML operations.
[0067] Step 8: When the AIML enabler clients are complete with the configured task, each AIML enabler client may send a task notification to the AIML enabler server. The AIML task notification may include an AIML status profile and other information elements as shown in Table 4. Note the information elements listed in the table may be organized different than what is shown, e g. the elapse time may be a sub-information element of the AIML status profile.Table 4 - AIML Task Notification
[0068] Step 9: After the AIML enabler server receives task notifications from all configured AIML enabler clients, the results may be aggregated together and the cost function may be updated if the AIML enabler server is capable of. Additionally and / or alternatively, the AIML enabler server may send a job notification to the VAL server with the status of the task and the progress of the AIML job as shown in Table 5. Note the information elements listed in the table may be organized different than what is shown, e.g. the job status and elapse time may be subinformation element of the AIML status profile. Note also both the task notification and the job notification include the AIML status profile, which may be defined such that the profile contains the superset of information elements shown in Table 4 and Table 5.Table 5 - AIML Job Notification
[0069] Step 10: If more tasks are required for the completion of the AIML job, the AIML enabler server may update the operational schedule for the next task. This step may require the AIML enabler server to perform AIML enabler client selection and / or discovery of new AIML enabler clients for the upcoming task. The process repeats for steps 5 to 10 for the next task. When the last task has been completed for the AIML job or when the AIML training threshold (e g. the early stop threshold) is met , the AIML enabler server may terminate AIML job and proceed to step 11.
[0070] Step 11 : Once the AIML job completes, the AIML enabler server may send a job notification to the VAL server indicating the AIML job has completed. The notification messagemay include the information elements as previously shown in Table 5, including the AIML status profde.
[0071] Referring to the general procedure shown in FIG. 4, the following procedures describe disturbances and interruptions that may occur within a 5G system during AIML operations.
[0072] FIG. 5 shows an example procedure 500 where a UE moves out of an area of interest for which AIML operations have been scheduled. The AIML enabler client on the UE may be in the middle of performing an AIML operation and have not yet completed data collection within the area of interest, which is a requirement for the AIML operation. For these scenarios, the AIML enabler server may be able to select another AIML enabler client within a client pool the AIML enabler server may manage to enable the continuation of the AIML operation. If the AIML enabler server does not have an available AIML enabler client, AIML enabler client discovery may be performed to obtain available clients for the AIML operation.
[0073] The steps in the procedure of FIG. 5 show application enabler layer AIML operational management due to UE mobility (note the order of the steps may be different than what is shown in the figure):
[0074] Steps 1 - 5: Steps 1 - 5 from FIG. 4 may be performed respectively for steps 1 - 5. In step 5d, the AIML enabler server may subscribe to get notifications from the 5G network on UE mobility. The AIML enabler server may make subscriptions to other entities in the system, such as a location management server in SEAL, an analytics function, or an application server.
[0075] Step 6: The UE with AIML enabler client 1 may leave the area of interest before AIML enabler client 1 has completed data collection for the AIML operation.
[0076] Step 7: A UE mobility notification may be provided by the 5G network, by a location service within SEAL, by an analytics function, and / or by AIML enabler client 1 indicating the UE associated with AIML enabler client 1 has moved out of the area of interest. Note that only the notification from the 5G network is shown in the figure.
[0077] Step 8: The data requirements may have specified that data needs to be collected within the area of interest. As a result, the AIML enabler server may be required to select another AIML enabler client that is able to complete the AIML operation. If there are readily available AIML enabler clients (e g. from a client pool that AIML enabler server has maintained), the AIML enabler server may select the AIML enabler clients and proceed to step 9 to configure the clientsfor AIML operation. However, it may be necessary for the AIML enabler server to perform AIML enabler client discovery and selection to find suitable AIML enabler clients that are available to complete the AIML operation. If no available AIML enabler clients are found to complete the AIML operation, steps 9 and 10 may be skipped and the AIML enabler server may wait for other AIML enabler clients to complete their task before sending the VAL server a notification in step 11 with a status of fail or incomplete. The notification may include a reason why the AIML task failed, e.g. AIML enabler client mobility or data collection error.
[0078] Step 9 - 11 : Steps 7 - 9 from FIG. 4 may be performed respectively for steps 9 - 11.
[0079] Another disturbance to AIML operations that may occur is the loss of communication of a UE associated with an AIML enabler client.
[0080] FIG. 6 shows an example procedure 600 where a UE with an AIML enabler client has lost communications with the network and the AIML task has expired. The AIML enabler client may be finished with the AIML task but is unable to notify the AIML enabler server due to the lack of communication. For these scenarios, the AIML enabler server may be able to select other AIML enabler clients to complete the AIML operation as previously described or the AIML enabler server may send the VAL server results from other AIML enabler clients if a sufficient number of AIML enabler client results are available. For example, the AIML enabler server may have scheduled a greater number of AIML enabler clients for the AIML operation beyond the minimum number of clients required by the VAL server.
[0081] The steps in the procedure of FIG. 6 show application enabler layer AIML operational management due to UE communication loss (note the order of the steps may be different than what is shown in the figure):
[0082] Steps 1 - 5: Steps 1 - 5 from FIG. 4 may be performed respectively for steps 1 - 5.
[0083] Step 6: AIML enabler client 2 has completed the AIML operation and may send a task notification to the AIML enabler server. However, AIML enabler client 1 is not able to complete the AIML task before the expiration of the task.
[0084] Step 7: The allotted time for the AIML task expires before AIML enabler client 1 has completed its AIML operation. The UE with AIML enabler client 1 may have loss communications with the network and is unable to transfer the results of the AIML operation to the AIML enabler server.
[0085] Step 8 : The AIML enabler server may make adjustments to the operational schedule for the task. The AIML enabler server may evaluate the results received from all other AIML enabler clients to check if the minimum number of clients are met. If the number of received results are under the minimum number of clients threshold, the AIML enabler server may need to find additional AIML enabler clients to complete the AIML operation in order to meet the threshold and proceed to step 9. Note that the AIML enabler server may notify the VAL server instead with a reduced number of results since the task has already expired. If the AIML operation is not time bound (e.g. to perform training with already collected data), then the AIML enabler server may proceed to find additional AIML enabler clients to complete the task.
[0086] However, if the number of received results exceeds the minimum number of clients threshold, the AIML enabler server may proceed to step 11 and send the VAL server the results of all AIML enabler clients that participated in the task for the AIML operation. The AIML enabler server may have configured a greater number of AIML enabler clients beyond the minimum number of clients threshold and the received results still exceeds the minimum number of clients threshold.
[0087] Step 9 - 11 : Steps 7 - 9 from FIG. 4 may be performed respectively for steps 9 - 11.
[0088] Another category of disturbances that may impact AIML operations are HE conditions that may prevent the completion of the AIML operation. HE conditions may include low battery power, UE in power saving mode, a surge in processor usage by other applications on the UE, memory and storage limits for AIML operations, and the powering off or restarting of the UE. These disturbances may render the AIML enabler client from notifying the AIML enabler server until the task has expired as previously described or the AIML enabler client may proactively notify the AIML enabler server of its inability to complete the AIML operation within the allotted time. For example, if memory and / or storage limits are reached or a surge in processor usage during AIML operation occurs, the AIML enabler client may send a notification to the AIML enabler server that an error has occurred.
[0089] FIG. 7 shows such an example procedure 700. The steps in the procedure of FIG. 7 show application enabler layer AIML operational management due to UE conditions (note the order of the steps may be different than what is shown in the figure):
[0090] Steps 1 - 5: Steps 1 - 5 from FIG. 4 may be performed respectively for steps 1 - 5.
[0091] Step 6: AIML enabler client 2 has completed the AIML operation and may send a task notification to the AIML enabler server.
[0092] Step 7: AIML enabler client 1 experiences interruptions to perform the AIML task due to changes in UE conditions. For example, another application may have been launched and require a higher percentage of computing power or the AIML task has exceeded the memory and / or storage available for the AIML operation. The UE may also be in power saving mode and is restricting compute intensive applications or the user of the UE may have powered off or restarted the UE. For scenarios in which the AIML enabler client is able to communicate with the AIML enabler server, an AIML task error notification may be sent to the AIML enabler server. The notification may include the reason for the error, e.g. due to UE conditions where UE conditions may further be specified.
[0093] Step 8 : The AIML enabler server may make adjustments to the operational schedule for the task. The AIML enabler server may evaluate the results received from all other AIML enabler clients to check if the results from a minimum number of clients have been received. If the number of received results are under the minimum number of clients threshold, the AIML enabler server may need to find additional AIML enabler clients to complete the AIML operation in order to meet the requirement and proceed to step 9. However, if the number of received results exceeds the minimum number of clients threshold, the AIML enabler server may proceed to step 11 and send the VAL server the results of all AIML enabler clients that participated in the AIML operation. The AIML enabler server may have configured a greater number of AIML enabler clients beyond the minimum number of clients threshold and the received results exceed the minimum number of clients threshold.
[0094] Step 9 - 11 : Steps 7 - 9 from FIG. 4 may be performed respectively for steps 9 - 11.
[0095] Another type of disturbance that may impact AIML operations is congestion within the 5G network. The congestion may cause certain UEs to not be able to send the task notification to the AIML enabler server. The congestion may also cause delayed transfers of AIML profiles, which may be large to include AIML models required for the AIML operation. As such, the AIML enabler server may need to adapt the operational schedule to account for the network congestion. Note that adaptation to network congestion may also be made proactively, e.g. in response to analytics indicating potential network congestion in the near future. The AIML enabler server mayhave already configured AIML enabler clients for the AIML task before receiving the prediction of network congestion. In response, the AIML enabler server may adjust the task expiration to allow more time for the results to be received. The AIML enabler client may be configured to send the task results regardless of task expiration.
[0096] FIG. 8 show an example procedure 800 for AIML enabler server adaptation to network congestion. The steps in the procedure of FIG. 8 show application enabler layer AIML operational management due to network congestion (note the order of the steps may be different than what is shown in the figure):
[0097] Steps 1 - 5: Steps 1 - 5 from FIG. 4 may be performed respectively for steps 1 - 5.
[0098] Step 6: Network congestion occurs and the AIML enabler server is notified. Additionally and / or alternatively, the AIML enabler server may receive predictions of network congestion from one of more analytics functions or the AIML enabler server may be able to determine potential network congestions due to having an uncommonly large number of retransmissions.
[0099] Step 7: The AIML enabler server may adapt certain parameters associated with the AIML task to account for the network congestion. For example, the AIML enabler server may lengthen the task expiration time to allow AIML enabler clients time to submit the task results. If necessary, the AIML enabler server may send task subscription requests to additional AIML enabler clients (not shown in the figure) that may not be impacted by the network congestion. For example, the network congestion may be caused by a failure of a RAN node in the area of interest but other RAN nodes in the area of interest may be operating without issues.
[0100] Step 8: AIML enabler clients that are able to send task notifications to the AIML enabler server may provide the results of their AIML task and include information as shown in Table 4.
[0101] Step 9: Step 9 from FIG. 4 may be performed for this step.
[0102] Note that in the above procedures, various AIML profiles were specified to include AIML specific information. The AIML profiles serve as a mechanism to relay AIML specific information between AIML entities without requiring the AIML enabler layer to fully understand the information. However, the AIML enabler layer may still be able to process the information from the AIML profiles by performing matching of similar information elements provided by AIML enabler clients and VAL servers for example in support of AIML enabler client discoveryand selection procedures. The profiles may be considered as providing a template for AIML information to allow the application enabler layer the ability to process AIML information. The “profile templates” may be defined such that only the information elements are specified as part of API definition and the values associated with the information elements are defined during deployment, e.g. by a network operator. The VAL server or AIML enabler clients (via VAL clients) may provide information for the AIML profile (e.g. fills the profile template with AIML specific information) to the AIML enabler server. In turn, the AIML enabler server may process and manage the information as described hereinafter.
[0103] Within the AIML profiles, there may be keys associated with AIML information for which AIML enabler servers may use to process AIML information, e.g. to assist with the discovery and selection processes. The “keys” in this case refer to key-value pairs of information and not to security keys. For example, a key may be defined for “ML model” and the value associated with the key may be a name or identifier for the model (“e.g. neural network, random forest, gradient boost) or a URL for which the model may be download from. In addition, the keys may have association to data types for which the AIML information is bind to. As an example, keys for AIML capabilities and dataset features may be defined and a “string” or “enumerated” data type may be associated with the keys such that AIML enabler servers may process the values associated with the keys for discovery purposes, e.g. by matching string data types with each other. Another example may a key defined for AIML model with “binary” or “URL” data type, which may indicate the need for the AIML enabler server to transport contents of the AIML model to FL clients for use in FL operations or for the AIML enabler clients to download the ML model. In yet another example, the key may be associated with other data types such as time-series, categorical, or other qualitative data. From an application enabler layer (AEL) perspective, the keys in AIML profiles may be specified as part of API definition while the values associated with the keys may be deployment specific. Note that the term “key” may illicit references to security related keys, which is not the intention. An alternative term that may replace “key” can be “attribute”, as in the attributes of an AIML profile. Therefore, an AIML profile may be referred to as a “profile template” of AIML information and the AIML information may be represented as attributes and their values, which may also have an associated data type.
[0104] An example will be provided to further illustrate how AIML profiles may be used. Table 6 shows an example of an AIML capability profile that may be sent by AIML enabler clientswhen registering to AIML enabler servers. The profile may contain AIML specific information that an AIML enabler server may use to discover AIML enabler clients that are suitable for a particular AIML application. The keys or attributes may be specified and defined for different AIML profiles but the data associated with the keys or attributes may be deployment specific, e.g. defined by a mobile network operator. Therefore, within each operator network, the information within AIML profiles would be consistent and the AIML enabler layer may be able to process the AIML information, e.g. to perform matching of similar data types, to compute some numerical value, or to download from or upload to a certain URL. Furthermore, the AIML profile templates (e.g. keys or attributes) would be consistent between operator networks, which would allow for interworking between operator networks. However, interworking functions are required to translate the information from one operator network to another operator network. The keys or attributes would remain the same between operators and the interworking function would only need to translate their values.Table 6 - Example AIML Capability Profile
[0105] It is worth noting that other AIML profiles may be defined, such as AIML discovery profiles, AIML selection profiles, AIML job profiles, AIML task profiles, and AIML status profiles. An example AIML discovery profile is shown in Table 7, which shows criteria a VAL server may specify to find all AIML enabler clients capable of supporting the defined AIML application. The VAL server may send the AIML discovery profile to an AIML enabler server to check if enough AIML enabler clients can be found for a particular AIML application. The information provided in the AIML discovery profile aligns with information from the AIML capability profile such that the AIML enabler server can perform matching of discovery criteria with client capabilities to find suitable AIML enabler clients.Table 7 - Example AIML Discovery Profile
[0106] Similarly, Table 8 shows an example of an AIML selection profile a VAL server may send to an AIML enabler server to select AIML enabler clients to participate in AIML operations for an AIML application. The selection profile may contain discovery IES for an AIML job in order for the AIML enabler server to manage an AIML enabler client pool during AIML operations to address any disturbances and / or interruptions that may occur. In other words, a VALserver may include discovery criteria from the AIML discovery profile in the AIML selection profile to allow an AIML enabler server to continuously manage a client pool of AIML enabler clients that may be available to participate in AIML operations.Table 8 - Example AIML Selection Profile
[0107] FIG. 9 shows an example procedure 900 that illustrates a high-level flow of the ML workflow shown in FIG. 3. The procedure highlights when AIML profiles are exchanged among VAL servers, AIML enabler servers, and AIML enabler clients. Note that the steps shown may be executed in an order different from the figure as the ML workflow is a highly iterative process.
[0108] Step 1 : AIML enabler clients may send registration requests to an AIML enabler server with AIML capability profiles to notify the AIML enabler server of each client’s compute and data capabilities for AIML operations. The information in the AIML capability profiles may be used by the AIML enabler server for discovery, selection, and operational management purposes.
[0109] Step 2: An AIML application is defined and created on a VAL server. AIML applications are complex and very specific to a user’s (e.g. a data scientist) needs and may have strict requirements for inputs, outputs, and data. Data must be identified to fulfill the targeted outcome of the AIML application and appropriate AIML models must be found for training. As a result, the process to create an AIML application are highly iterative and requires robust and stringent management. Note that steps 1 and 2 may occur in an order different than what is shown in the figure. In fact, step 2 may be repeated at any time in the ML workflow to refine the definitions for the AIML application.
[0110] Step 3 : Once an AIML application has been defined and appropriate data have been identified, a VAL server may send an AIML client discovery request to an AIML enabler server. The request may contain an AIML discovery profile as shown in Table 7 to indicate the requirements for the AIML application. The purpose of the discovery request may be to check if sufficient AIML enabler clients are available to fulfill the requirements for the AIML application. For example, if AIML enabler clients support the desired AIML model, have the necessary compute and storage capabilities, have required data or has the ability to acquire the data and within a certain location, and is available for the requested time for AIML operations. Note that a VAL server may perform multiple discovery requests in order to determine if sufficient AIML enabler clients are capable and available for AIML operations. For example, a discovery request may result in only a small number of AIML enabler clients that supports a desired AIML model. A VAL server may then need to select a different AIML model that may be more widely supported.
[0111] As an example of the usage of AIML profiles, the AIML enabler server may be able to compare the Supported AIML application types IE from the AIML capability profile with the AIML application types IE from the AIML discovery profile. If the values of the comparison matches, then the AIML enabler server may determine that the AIML enabler client is a candidate for the AIML application for which the discovery was performed for. In addition, the AIML enabler server may be able to query for important features required for an AIML application bysearching the Feature identifier and / or Feature name IES of AIML capability profiles to match those of the corresponding IEs in the AIML discovery profile provided by the VAL server.
[0112] Step 4: After a sufficient number of AIML enabler clients are discovered, the VAL server may then select the clients to be part of an AIML enabler client set for participation in AIML operations. The AIML client selection request may include an AIML selection profile, an example of which is shown in Table 8. In addition to the AIML selection profile, the VAL server may select a list of AIML enabler clients for the AIML enabler client set. Additionally and / or alternatively, AIML enabler clients may also request to participate in AIML operations by requesting to join an AIML enabler client set. Again, the AIML enabler server may compare keys or attributes from the selection profile to the corresponding keys or attributes in the capability profile.
[0113] As an example, an AIML application may require recent data (e.g. within the past 30 days). The age of a dataset specified in an AIML capability policy may be calculated with a reference to the current date and time to determine whether the dataset meets the criteria of the AIML application. The AIML enabler server may then be able to determine AIML enabler clients with current data that satisfies the requirements for the AIML application. Similarly, the size of a dataset from Dataset identifier / size IE of the AIML capability profile may be easily compared with the corresponding data size requirement specified in the AIML selection profile.
[0114] Step 5: The VAL server may send a request to initiate an AIML job for the AIML application, the request may include an AIML job profile as shown in Table 1 to configure requirements for the AIML operation. AIML operations may consist of any operation that fulfills the ML workflow shown in FIG. 3 and may include downloading AIML models, collecting and preparing data, training AIML models, updating model parameters, performing inferencing, etc. Note that many AIML operations (i.e. AIML job requests) may be required to complete the requirements for an AIML application.
[0115] The information from the AIML job profile may be used to configure AIML enabler clients for AIML operations. For example, ML model, model parameters, dataset requirements, data processing functions, and the cost function IEs may be passed transparently to AIML enabler clients in the AIML task profile sent in the AIML task configuration request. The training requirements IE may be interpreted by the AIML enabler server to manage the operational aspects of AIML training. If the AIML enabler server has further capabilities, the aggregation algorithm and hyperparameters set IEs may also be managed by the AIML enabler server. The aggregationalgorithm may be a function the AIML enabler server execute upon receiving cost function values from individual AIML enabler clients. The hyperparameters sets may be further managed by the AIML enabler server to manage different combinations of hyperparameters such as batch size, number of iterations, and epochs.
[0116] An AIML enabler server may not support all the advanced features as previously described, such as the aggregation algorithm and the hyperparameter sets. In the absence of such support for more advanced AIML features, the AIML enabler server may simply relay the information in the AIML profdes between AIML enabler clients and VAL servers. For example, computed cost function value from individual AIML enabler clients may be included in the AIML status profile sent to the VAL server.
[0117] Note that an AIML enabler server may combine the AIML enabler client selection request with the AIML job request to minimize VAL server interactions and offer value-add functionality. The IES from the AIML selection and job profiles may be combined together and sent within an AIML job request.
[0118] Step 6: The AIML enabler server may configure AIML enabler clients to perform the required AIML task as requested for the AIML job, the request may include an AIML task profile as shown in Table 3. The AIML task may initiate AIML enabler clients to start data collection, perform data preparation, download an AIML model, train the AIML model, etc. One or more tasks may be scheduled to complete the requirements for the AIML job.
[0119] As previously mentioned, IEs from the AIML job profile may be included in the AIML task profile to configure AIML enabler clients for a particular task. For example, the ML model IE may be specified with a URL of the location where the ML model is stored and can be retrieved by the AIML enabler clients. Similarly, the Model parameters IE may be used to initialize the ML model prior to performing AIML operations. The Dataset requirements and Data processing functions IEs may be used by the AIML enabler client (or VAL clients) on a UE to properly prepare data for AIML operations. Finally, the Cost function IE may be used to compute the AIML operational progress of AIML training.
[0120] Step 7: AIML enabler clients may perform the requested task for the AIML job using the configured IEs from the AIML task profile.
[0121] Step 8: When the AIML enabler clients are complete with the AIML task, the AIML enabler server may receive the results of the task from the AIML enabler clients. The AIMLspecific results may be specified in an AIML status profile as shown in Table 5. If there were disturbances and / or interruptions during the AIML task, the AIML enabler server may need to address the disturbances and / or interruptions as outlined in the above procedures.
[0122] The AIML status profile may transport AIML task results such as model parameters or model output updates, dataset information, the computed cost function if applicable, and statistics on the execution of the task. If the AIML task was for training purposes, model parameters may be generated and included in the AIML task profile. However, if the AIML task was for inferencing purposes, the model outputs may be generated and included in the task profile. The dataset information may be included in the AIML task profile to provide insight into the data that was collected, processed, used for training or inferencing, model evaluation, etc. A cost function value may be generated as part of AIML training to specify the progress of the training. The cost function value may be evaluated against a target cost function value (e g. either by the AIML enabler server or the VAL server) to determine whether training is complete. Finally, task statistics may be provided for informative purposes to assist with determining various aspects of the AIML operation, e.g. ML model efficiency and UE loading.
[0123] Step 9: After all the AIML tasks are completed and the AIML enabler server has received all the results from the AIML enabler clients, the AIML enabler server may send an AIML job status notification to the VAL server. The job status notification may include an AIML status profile that provides an update to the progress of the job.
[0124] Note that the AIML status profile is reused for the AIML job notification sent to the VAL server. As a result, the AIML status profile may comprise of IES from both the task and job notifications. The AIML status profile may share common IEs such as Model parameter, output updates, Dataset information, Cost function value, and Task statistics that are sent as part of task and job notifications. For the job notifications, additional IEs are present to provide status information for the overall job such as Job statistics, aggregated cost function value, and grouping of the common IEs according to AIML enabler clients.
[0125] Note that steps 6 - 9 may be repeated until all the AIML tasks are completed for the AIML job.
[0126] FIG. 10 shows an example graphical user interface 1000 that may be exposed to a VAL server to configure an AIML job request. The GUI may provide the ability to specify AIML client list and / or identifier, a minimum number of AIML enabler clients required for an AIMLoperation, dataset requirements such as age and area data should be collected from, information on AIML operational requirements, and AIML job profile.
[0127] FIG. 11A illustrates one embodiment of an example communications system 100 in which the methods and apparatuses described and claimed herein may be embodied. As shown, the example communications system 100 may comprise wireless transmit / receive units (WTRUs) 102a, 102b, 102c, 102d, 102e, 102f, and / or 102g (which generally or collectively may be referred to as WTRU 102), a radio access network (RAN) 103 / 104 / 105 / 103b / 104b / 105b, a core network 106 / 107 / 109, a public switched telephone network (PSTN) 108, the Internet 110, , other networks 112, and V2X server (or ProSe function and server) 113, though it will be appreciated that the disclosed embodiments contemplate any number of WTRUs, base stations, networks, and / or network elements. Each of the WTRUs 102a, 102b, 102c, 102d, 102e, 102f, 102g may be any type of apparatus or device configured to operate and / or communicate in a wireless environment. Although each WTRU 102a, 102b, 102c, 102d, 102e, 102f, 102g is depicted in FIGs. l lA-HE as a hand-held wireless communications apparatus, it is understood that with the wide variety of examples contemplated for 5G wireless communications, each WTRU may comprise or be embodied in any type of apparatus or device configured to transmit and / or receive wireless signals, including, by way of example only, user equipment (UE), a mobile station, a fixed or mobile subscriber unit, a pager, a cellular telephone, a personal digital assistant (PDA), a smartphone, a laptop, a tablet, a netbook, a notebook computer, a personal computer, a wireless sensor, consumer electronics, awearable device such as a smartwatch or smart clothing, a medical or eHealth device, a robot, industrial equipment, a drone, a vehicle such as a car, truck, train, or airplane, and the like.
[0128] The communications system 100 may also include a base station 114a and a base station 114b. Base stations 114a may be any type of device configured to wirelessly interface with at least one of the WTRUs 102a, 102b, 102c to facilitate access to one or more communication networks, such as the core network 106 / 107 / 109, the Internet 110, and / or the other networks 112. Base stations 114b may be any type of device configured to wiredly and / or wirelessly interface with at least one of the RRHs (Remote Radio Heads) 118a, 118b, TRPs (Transmission and Reception Points) 119a, 119b, and / or RSUs (Roadside Units) 120a and 120b to facilitate access to one or more communication networks, such as the core network 106 / 107 / 109, the Internet 110, the other networks 112, and / or V2X server (or ProSe function and server) 113. RRHs 118a, 118b may be any type of device configured to wirelessly interface with at least one of the WTRU 102c, tofacilitate access to one or more communication networks, such as the core network 106 / 107 / 109, the Internet 110, and / or the other networks 112. TRPs 119a, 119b may be any type of device configured to wirelessly interface with at least one of the WTRU 102d, to facilitate access to one or more communication networks, such as the core network 106 / 107 / 109, the Internet 110, and / or the other networks 112. RSUs 120a and 120b may be any type of device configured to wirelessly interface with at least one of the WTRU 102e or 102f, to facilitate access to one or more communication networks, such as the core network 106 / 107 / 109, the Internet 110, the other networks 112, and / or V2X server (or ProSe function and server) 113. By way of example, the base stations 114a, 114b may be a base transceiver station (BTS), a Node-B, an eNode B, a Home Node B, a Home eNode B, a site controller, an access point (AP), a wireless router, and the like. While the base stations 114a, 114b are each depicted as a single element, it will be appreciated that the base stations 114a, 114b may include any number of interconnected base stations and / or network elements.
[0129] The base station 114a may be part of the RAN 103 / 104 / 105, which may also include other base stations and / or network elements (not shown), such as a base station controller (BSC), a radio network controller (RNC), relay nodes, etc. The base station 114b may be part of the RAN 103b / l 04b / l 05b, which may also include other base stations and / or network elements (not shown), such as a base station controller (BSC), a radio network controller (RNC), relay nodes, etc. The base station 114a may be configured to transmit and / or receive wireless signals within a particular geographic region, which may be referred to as a cell (not shown). The base station 114b may be configured to transmit and / or receive wired and / or wireless signals within a particular geographic region, which may be referred to as a cell (not shown). The cell may further be divided into cell sectors. For example, the cell associated with the base station 114a may be divided into three sectors. Thus, in an embodiment, the base station 114a may include three transceivers, e.g., one for each sector of the cell. In an embodiment, the base station 114a may employ multiple-input multiple output (MIMO) technology and, therefore, may utilize multiple transceivers for each sector of the cell.
[0130] The base stations 114a may communicate with one or more of the WTRUs 102a, 102b, 102c over an air interface 115 / 116 / 117, which may be any suitable wireless communication link (e.g., radio frequency (RF), microwave, infrared (IR), ultraviolet (UV), visible light, cmWave,mmWave, etc ). The air interface 1 15 / 116 / 1 17 may be established using any suitable radio access technology (RAT).
[0131] The base stations 114b may communicate with one or more of the RRHs 118a, 118b, TRPs 119a, 119b, and / or RSUs 120a and 120b, over awired or air interface 115b / l 16b / l 17b, which may be any suitable wired (e.g., cable, optical fiber, etc.) or wireless communication link (e.g., radio frequency (RF), microwave, infrared (IR), ultraviolet (UV), visible light, cmWave, mmWave, etc.). The air interface 115b / l 16b / l 17b may be established using any suitable radio access technology (RAT).
[0132] The RRHs 118a, 118b, TRPs 119a, 119b and / or RSUs 120a, 120b, may communicate with one or more of the WTRUs 102c, 102d, 102e, 102f over an air interface 115c / l 16c / l 17c, which may be any suitable wireless communication link (e.g., radio frequency (RF), microwave, infrared (IR), ultraviolet (UV), visible light, cmWave, mmWave, etc.). The air interface 115c / l 16c / l 17c may be established using any suitable radio access technology (RAT).
[0133] The WTRUs 102a, 102b, 102c,102d, 102e, 102f, and / or 102g may communicate with one another over an air interface 115d / l 16d / l 17d (not shown in the figures), which may be any suitable wireless communication link (e.g., radio frequency (RF), microwave, infrared (IR), ultraviolet (UV), visible light, cmWave, mmWave, etc.). The air interface 115d / l 16d / l 17d may be established using any suitable radio access technology (RAT).
[0134] More specifically, as noted above, the communications system 100 may be a multiple access system and may employ one or more channel access schemes, such as CDMA, TDMA, FDMA, OFDMA, SC-FDMA, and the like. For example, the base station 114a in the RAN 103 / 104 / 105 and the WTRUs 102a, 102b, 102c, or RRHs 118a, 118b, TRPs 119a, 119b and RSUs 120a, 120b, in the RAN 103b / l 04b / l 05b and the WTRUs 102c, 102d, 102e, 102f, may implement a radio technology such as Universal Mobile Telecommunications System (UMTS) Terrestrial Radio Access (UTRA), which may establish the air interface 115 / 116 / 117 or 115c / l 16c / l 17c respectively using wideband CDMA (WCDMA). WCDMA may include communication protocols such as High-Speed Packet Access (HSPA) and / or Evolved HSPA (HSPA+). HSPA may include High-Speed Downlink Packet Access (HSDPA) and / or High-Speed Uplink Packet Access (HSUPA).
[0135] In an embodiment, the base station 114a and the WTRUs 102a, 102b, 102c, or RRHs 118a, 118b, TRPs 119a, 119b, and / or RSUs 120a, 120b, in the RAN 103b / 104b / 105b andthe WTRUs 102c, 102d, may implement a radio technology such as Evolved UMTS Terrestrial Radio Access (E-UTRA), which may establish the air interface 115 / 116 / 117 or 115c / l 16c / l 17c respectively using Long Term Evolution (LTE) and / or LTE-Advanced (LTE-A). In the future, the air interface 115 / 116 / 117 may implement 3GPP NR technology. The LTE and LTE-A technology includes LTE D2D and V2X technologies and interface (such as Sidelink communications, etc.) The 3GPP NR technology includes NR V2X technologies and interface (such as Sidelink communications, etc.)
[0136] In an embodiment, the base station 114a in the RAN 103 / 104 / 105 and the WTRUs 102a, 102b, 102c, or RRHs 118a, 118b, TRPs 119a, 119b and / or RSUs 120a, 120b, in the RAN 103b / l 04b / l 05b and the WTRUs 102c, 102d, 102e, 102f may implement radio technologies such as IEEE 802.16 (e.g., Worldwide Interoperability for Microwave Access (WiMAX)), CDMA2000, CDMA2000 IX, CDMA2000 EV-DO, Interim Standard 2000 (IS-2000), Interim Standard 95 (IS- 95), Interim Standard 856 (IS-856), Global System for Mobile communications (GSM), Enhanced Data rates for GSM Evolution (EDGE), GSM EDGE (GERAN), and the like.
[0137] The base station 114c in FIG. 11 A may be a wireless router, Home Node B, Home eNode B, or access point, for example, and may utilize any suitable RAT for facilitating wireless connectivity in a localized area, such as a place of business, a home, a vehicle, a campus, and the like. In an embodiment, the base station 114c and the WTRUs 102e, may implement a radio technology such as IEEE 802.11 to establish a wireless local area network (WLAN). In an embodiment, the base station 114c and the WTRUs 102d, may implement a radio technology such as IEEE 802.15 to establish a wireless personal area network (WPAN). In yet another embodiment, the base station 114c and the WTRUs 102e, may utilize a cellular-based RAT (e.g., WCDMA, CDMA2000, GSM, LTE, LTE-A, etc.) to establish a picocell or femtocell. As illustrated in FIG. 11A, the base station 114b may have a direct connection to the Internet 110. Thus, the base station 114c may not be required to access the Internet 110 via the core network 106 / 107 / 109.
[0138] The RAN 103 / 104 / 105 and / or RAN 103b / l 04b / l 05b may be in communication with the core network 106 / 107 / 109, which may be any type of network configured to provide voice, data, applications, and / or voice over internet protocol (VoIP) services to one or more of the WTRUs 102a, 102b, 102c, 102d. For example, the core network 106 / 107 / 109 may provide call control, billing services, mobile location-based services, pre-paid calling, Internet connectivity, video distribution, etc., and / or perform high-level security functions, such as user authentication.
[0139] Although not illustrated in FIG. H A, it will be appreciated that the RAN 103 / 104 / 105 and / or RAN 103b / l 04b / l 05b and / or the core network 106 / 107 / 109 may be in direct or indirect communication with other RANs that employ the same RAT as the RAN 103 / 104 / 105 and / or RAN 103b / l 04b / l 05b or a different RAT. For example, in addition to being connected to the RAN 103 / 104 / 105 and / or RAN 103b / l 04b / l 05b, which may be utilizing an E-UTRA radio technology, the core network 106 / 107 / 109 may also be in communication with another RAN (not shown) employing a GSM radio technology.
[0140] The core network 106 / 107 / 109 may also serve as a gateway for the WTRUs 102a, 102b, 102c, 102d, 102e to access the PSTN 108, the Internet 110, and / or other networks 112. The PSTN 108 may include circuit-switched telephone networks that provide plain old telephone service (POTS). The Internet 110 may include a global system of interconnected computer networks and devices that use common communication protocols, such as the transmission control protocol (TCP), user datagram protocol (UDP) and the internet protocol (IP) in the TCP / IP internet protocol suite. The networks 112 may include wired or wireless communications networks owned and / or operated by other service providers. For example, the networks 112 may include another core network connected to one or more RANs, which may employ the same RAT as the RAN 103 / 104 / 105 and / or RAN 103b / l 04b / 105b or a different RAT.
[0141] Some or all of the WTRUs 102a, 102b, 102c, 102d in the communications system 100 may include multi-mode capabilities, e.g., the WTRUs 102a, 102b, 102c, 102d, and 102e may include multiple transceivers for communicating with different wireless networks over different wireless links. For example, the WTRU 102e illustrated in FIG. HA may be configured to communicate with the base station 114a, which may employ a cellular-based radio technology, and with the base station 114c, which may employ an IEEE 802 radio technology.
[0142] FIG. 1 IB is a block diagram of an example apparatus or device configured for wireless communications in accordance with the embodiments illustrated herein, such as for example, a WTRU 102. As illustrated in FIG. 11B, the example WTRU 102 may include a processor 118, a transceiver 120, a transmit / receive element 122, a speaker / microphone 124, a keypad 113, a display / touchpad / indicators 128, non-removable memory 130, removable memory 132, a power source 134, a global positioning system (GPS) chipset 136, and other peripherals 138. It will be appreciated that the WTRU 102 may include any sub-combination of the foregoing elements while remaining consistent with an embodiment. Also, embodiments contemplate thatthe base stations 114a and 1 14b, and / or the nodes that base stations 114a and 1 14b may represent, such as but not limited to transceiver station (BTS), a Node-B, a site controller, an access point (AP), a home node-B, an evolved home node-B (eNodeB), a home evolved node-B (HeNB), a home evolved node-B gateway, and proxy nodes, among others, may include some or all of the elements depicted in FIG. 1 IB and described herein.
[0143] The processor 118 may be a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Array (FPGAs) circuits, any other type of integrated circuit (IC), a state machine, and the like. The processor 118 may perform signal coding, data processing, power control, input / output processing, and / or any other functionality that enables the WTRU 102 to operate in a wireless environment. The processor 118 may be coupled to the transceiver 120, which may be coupled to the transmit / receive element 122. While FIG. 1 IB depicts the processor 118 and the transceiver 120 as separate components, it will be appreciated that the processor 118 and the transceiver 120 may be integrated together in an electronic package or chip.
[0144] The transmit / receive element 122 may be configured to transmit signals to, or receive signals from, a base station (e.g., the base station 114a) over the air interface 115 / 116 / 117. For example, in an embodiment, the transmit / receive element 122 may be an antenna configured to transmit and / or receive RF signals. In an embodiment, the transmit / receive element 122 may be an emitter / detector configured to transmit and / or receive IR, UV, or visible light signals, for example. In yet an embodiment, the transmit / receive element 122 may be configured to transmit and receive both RF and light signals. It will be appreciated that the transmit / receive element 122 may be configured to transmit and / or receive any combination of wireless signals.
[0145] In addition, although the transmit / receive element 122 is depicted in FIG. 1 IB as a single element, the WTRU 102 may include any number of transmit / receive elements 122. More specifically, the WTRU 102 may employ MIMO technology. Thus, in an embodiment, the WTRU 102 may include two or more transmit / receive elements 122 (e.g., multiple antennas) for transmitting and receiving wireless signals over the air interface 115 / 116 / 117.
[0146] The transceiver 120 may be configured to modulate the signals that are to be transmitted by the transmit / receive element 122 and to demodulate the signals that are received bythe transmit / receive element 122. As noted above, the WTRU 102 may have multi-mode capabilities. Thus, the transceiver 120 may include multiple transceivers for enabling the WTRU 102 to communicate via multiple RATs, such as UTRA and IEEE 802.11, for example.
[0147] The processor 118 of the WTRU 102 may be coupled to, and may receive user input data from, the speaker / microphone 124, the keypad 126, and / or the display / touchpad / indicators 128 (e.g., a liquid crystal display (LCD) display unit or organic light-emitting diode (OLED) display unit). The processor 118 may also output user data to the speaker / microphone 124, the keypad 126, and / or the display / touchpad / indicators 128. In addition, the processor 118 may access information from, and store data in, any type of suitable memory, such as the non-removable memory 130 and / or the removable memory 132. The non-removable memory 130 may include random-access memory (RAM), read-only memory (ROM), a hard disk, or any other type of memory storage device. The removable memory 132 may include a subscriber identity module (SIM) card, a memory stick, a secure digital (SD) memory card, and the like. In an embodiment, the processor 118 may access information from, and store data in, memory that is not physically located on the WTRU 102, such as on a server or a home computer (not shown).
[0148] The processor 118 may receive power from the power source 134, and may be configured to distribute and / or control the power to the other components in the WTRU 102. The power source 134 may be any suitable device for powering the WTRU 102. For example, the power source 134 may include one or more dry cell batteries, solar cells, fuel cells, and the like.
[0149] The processor 118 may also be coupled to the GPS chipset 136, which may be configured to provide location information (e.g., longitude and latitude) regarding the current location of the WTRU 102. In addition to, or in lieu of, the information from the GPS chipset 136, the WTRU 102 may receive location information over the air interface 115 / 116 / 117 from a base station (e.g., base stations 114a, 114b) and / or determine its location based on the timing of the signals being received from two or more nearby base stations. It will be appreciated that the WTRU 102 may acquire location information by way of any suitable location-determination method while remaining consistent with an embodiment.
[0150] The processor 118 may further be coupled to other peripherals 138, which may include one or more software and / or hardware modules that provide additional features, functionality and / or wired or wireless connectivity. For example, the peripherals 138 may include various sensors such as an accelerometer, biometrics (e.g., finger print) sensors, an e-compass, asatellite transceiver, a digital camera (for photographs or video), a universal serial bus (USB) port or other interconnect interfaces, a vibration device, a television transceiver, a hands free headset, a Bluetooth® module, a frequency modulated (FM) radio unit, a digital music player, a media player, a video game player module, an Internet browser, and the like.
[0151] The WTRU 102 may be embodied in other apparatuses or devices, such as a sensor, consumer electronics, a wearable device such as a smart watch or smart clothing, a medical or eHealth device, a robot, industrial equipment, a drone, a vehicle such as a car, truck, train, or airplane. The WTRU 102 may connect to other components, modules, or systems of such apparatuses or devices via one or more interconnect interfaces, such as an interconnect interface that may comprise one of the peripherals 138.
[0152] FIG. 11C is a system diagram of the RAN 103 and the core network 106 according to an embodiment. As noted above, the RAN 103 may employ a UTRA radio technology to communicate with the WTRUs 102a, 102b, and 102c over the air interface 115. The RAN 103 may also be in communication with the core network 106. As illustrated in FIG. 11C, the RAN 103 may include Node-Bs 140a, 140b, 140c, which may each include one or more transceivers for communicating with the WTRUs 102a, 102b, 102c over the air interface 115. The Node-Bs 140a, 140b, 140c may each be associated with a particular cell (not shown) within the RAN 103. The RAN 103 may also include RNCs 142a, 142b. It will be appreciated that the RAN 103 may include any number of Node-Bs and RNCs while remaining consistent with an embodiment.
[0153] As illustrated in FIG. 11C, the Node-Bs 140a, 140b may be in communication with the RNC 142a. Additionally, the Node-B 140c may be in communication with the RNC 142b. The Node-Bs 140a, 140b, 140c may communicate with the respective RNCs 142a, 142b via an lub interface. The RNCs 142a, 142b may be in communication with one another via an lur interface. Each of the RNCs 142a, 142b may be configured to control the respective Node-Bs 140a, 140b, 140c to which it is connected. In addition, each of the RNCs 142a, 142b may be configured to carry out or support other functionality, such as outer loop power control, load control, admission control, packet scheduling, handover control, macro-diversity, security functions, data encryption, and the like.
[0154] The core network 106 illustrated in FIG. 11C may include a media gateway (MGW) 144, a mobile switching center (MSC) 146, a serving GPRS support node (SGSN) 148, and / or a gateway GPRS support node (GGSN) 150. While each of the foregoing elements are depicted aspart of the core network 106, it will be appreciated that any one of these elements may be owned and / or operated by an entity other than the core network operator.
[0155] The RNC 142a in the RAN 103 may be connected to the MSC 146 in the core network 106 via an luCS interface. The MSC 146 may be connected to the MGW 144. The MSC 146 and the MGW 144 may provide the WTRUs 102a, 102b, 102c with access to circuit-switched networks, such as the PSTN 108, to facilitate communications between the WTRUs 102a, 102b, 102c and traditional land-line communications devices.
[0156] The RNC 142a in the RAN 103 may also be connected to the SGSN 148 in the core network 106 via an luPS interface. The SGSN 148 may be connected to the GGSN 150. The SGSN 148 and the GGSN 150 may provide the WTRUs 102a, 102b, 102c with access to packet-switched networks, such as the Internet 110, to facilitate communications between and the WTRUs 102a, 102b, 102c and IP-enabled devices.
[0157] As noted above, the core network 106 may also be connected to the networks 112, which may include other wired or wireless networks that are owned and / or operated by other service providers.
[0158] FIG. 1 ID is a system diagram of the RAN 104 and the core network 107 according to an embodiment. As noted above, the RAN 104 may employ an E-UTRA radio technology to communicate with the WTRUs 102a, 102b, and 102c over the air interface 116. The RAN 104 may also be in communication with the core network 107.
[0159] The RAN 104 may include eNode-Bs 160a, 160b, 160c, though it will be appreciated that the RAN 104 may include any number of eNode-Bs while remaining consistent with an embodiment. The eNode-Bs 160a, 160b, 160c may each include one or more transceivers for communicating with the WTRUs 102a, 102b, 102c over the air interface 116. In an embodiment, the eNode-Bs 160a, 160b, 160c may implement MIMO technology. Thus, the eNode-B 160a, for example, may use multiple antennas to transmit wireless signals to, and receive wireless signals from, the WTRU 102a.
[0160] Each of the eNode-Bs 160a, 160b, and 160c may be associated with a particular cell (not shown) and may be configured to handle radio resource management decisions, handover decisions, scheduling of users in the uplink and / or downlink, and the like. As illustrated in FIG. 1 ID, the eNode-Bs 160a, 160b, 160c may communicate with one another over an X2 interface.
[0161] The core network 107 illustrated in FIG. 1 ID may include a mobility management gateway (MME) 162, a serving gateway 164, and a packet data network (PDN) gateway 166. While each of the foregoing elements are depicted as part of the core network 107, it will be appreciated that any one of these elements may be owned and / or operated by an entity other than the core network operator.
[0162] The MME 162 may be connected to each of the eNode-Bs 160a, 160b, and 160c in the RAN 104 via an SI interface and may serve as a control node. For example, the MME 162 may be responsible for authenticating users of the WTRUs 102a, 102b, 102c, bearer activation / deactivation, selecting a particular serving gateway during an initial attach of the WTRUs 102a, 102b, 102c, and the like. The MME 162 may also provide a control plane function for switching between the RAN 104 and other RANs (not shown) that employ other radio technologies, such as GSM or WCDMA.
[0163] The serving gateway 164 may be connected to each of the eNode-Bs 160a, 160b, and 160c in the RAN 104 via the SI interface. The serving gateway 164 may generally route and forward user data packets to / from the WTRUs 102a, 102b, 102c. The serving gateway 164 may also perform other functions, such as anchoring user planes during inter-eNode B handovers, triggering paging when downlink data is available for the WTRUs 102a, 102b, 102c, managing and storing contexts of the WTRUs 102a, 102b, 102c, and the like.
[0164] The serving gateway 164 may also be connected to the PDN gateway 166, which may provide the WTRUs 102a, 102b, 102c with access to packet-switched networks, such as the Internet 110, to facilitate communications between the WTRUs 102a, 102b, 102c and IP-enabled devices.
[0165] The core network 107 may facilitate communications with other networks. For example, the core network 107 may provide the WTRUs 102a, 102b, 102c with access to circuit- switched networks, such as the PSTN 108, to facilitate communications between the WTRUs 102a, 102b, 102c and traditional land-line communications devices. For example, the core network 107 may include, or may communicate with, an IP gateway (e.g., an IP multimedia subsystem (IMS) server) that serves as an interface between the core network 107 and the PSTN 108. In addition, the core network 107 may provide the WTRUs 102a, 102b, 102c with access to the networks 112, which may include other wired or wireless networks that are owned and / or operated by other service providers.
[0166] FIG. 1 IE is a system diagram of the RAN 105 and the core network 109 according to an embodiment. The RAN 105 may be an access service network (ASN) that employs IEEE 802.16 radio technology to communicate with the WTRUs 102a, 102b, and 102c over the air interface 117. As will be further discussed below, the communication links between the different functional entities of the WTRUs 102a, 102b, 102c, the RAN 105, and the core network 109 may be defined as reference points.
[0167] As illustrated in FIG. HE, the RAN 105 may include base stations 180a, 180b, 180c, and an ASN gateway 182, though it will be appreciated that the RAN 105 may include any number of base stations and ASN gateways while remaining consistent with an embodiment. The base stations 180a, 180b, 180c may each be associated with a particular cell in the RAN 105 and may include one or more transceivers for communicating with the WTRUs 102a, 102b, 102c over the air interface 117. In an embodiment, the base stations 180a, 180b, 180c may implement MIMO technology. Thus, the base station 180a, for example, may use multiple antennas to transmit wireless signals to, and receive wireless signals from, the WTRU 102a. The base stations 180a, 180b, 180c may also provide mobility management functions, such as handoff triggering, tunnel establishment, radio resource management, traffic classification, quality of service (QoS) policy enforcement, and the like. The ASN gateway 182 may serve as a traffic aggregation point and may be responsible for paging, caching of subscriber profiles, routing to the core network 109, and the like.
[0168] The air interface 117 between the WTRUs 102a, 102b, 102c and the RAN 105 may be defined as an R1 reference point that implements the IEEE 802.16 specification. In addition, each of the WTRUs 102a, 102b, and 102c may establish a logical interface (not shown) with the core network 109. The logical interface between the WTRUs 102a, 102b, 102c and the core network 109 may be defined as an R2 reference point, which may be used for authentication, authorization, IP host configuration management, and / or mobility management.
[0169] The communication link between each of the base stations 180a, 180b, and 180c may be defined as an R8 reference point that includes protocols for facilitating WTRU handovers and the transfer of data between base stations. The communication link between the base stations 180a, 180b, 180c and the ASN gateway 182 may be defined as an R6 reference point. The R6 reference point may include protocols for facilitating mobility management based on mobility events associated with each of the WTRUs 102a, 102b, 102c.
[0170] As illustrated in FIG. 11 E, the RAN 105 may be connected to the core network 109. The communication link between the RAN 105 and the core network 109 may defined as an R3 reference point that includes protocols for facilitating data transfer and mobility management capabilities, for example. The core network 109 may include a mobile IP home agent (MIP-HA) 184, an authentication, authorization, accounting (AAA) server 186, and a gateway 188. While each of the foregoing elements are depicted as part of the core network 109, it will be appreciated that any one of these elements may be owned and / or operated by an entity other than the core network operator.
[0171] The MIP-HA may be responsible for IP address management, and may enable the WTRUs 102a, 102b, and 102c to roam between different ASNs and / or different core networks. The MIP-HA 184 may provide the WTRUs 102a, 102b, 102c with access to packet-switched networks, such as the Internet 110, to facilitate communications between the WTRUs 102a, 102b, 102c and IP-enabled devices. The AAA server 186 may be responsible for user authentication and for supporting user services. The gateway 188 may facilitate interworking with other networks. For example, the gateway 188 may provide the WTRUs 102a, 102b, 102c with access to circuit- switched networks, such as the PSTN 108, to facilitate communications between the WTRUs 102a, 102b, 102c and traditional land-line communications devices. In addition, the gateway 188 may provide the WTRUs 102a, 102b, 102c with access to the networks 112, which may include other wired or wireless networks that are owned and / or operated by other service providers.
[0172] Although not illustrated in FIG. 1 IE, it will be appreciated that the RAN 105 may be connected to other ASNs and the core network 109 may be connected to other core networks. The communication link between the RAN 105 the other ASNs may be defined as an R4 reference point, which may include protocols for coordinating the mobility of the WTRUs 102a, 102b, 102c between the RAN 105 and the other ASNs. The communication link between the core network 109 and the other core networks may be defined as an R5 reference, which may include protocols for facilitating interworking between home core networks and visited core networks.
[0173] The core network entities described herein and illustrated in FIGs. 11 A, 11C, 11D, and 1 IE are identified by the names given to those entities in certain existing 3GPP specifications, but it is understood that in the future those entities and functionalities may be identified by other names and certain entities or functions may be combined in future specifications published by 3GPP, including future 3GPP NR specifications. Thus, the particular network entities andfunctionalities described and illustrated in FTGs. 11 A, 1 IB, 1 1C, 1 ID, and 1 IE are provided by way of example only, and it is understood that the subject matter disclosed and claimed herein may be embodied or implemented in any similar communication system, whether presently defined or defined in the future.
[0174] FIG. 1 IF is a block diagram of an exemplary computing system 90 in which one or more apparatuses of the communications networks illustrated in FIGs. HA, 11C, 11D and HE may be embodied, such as certain nodes or functional entities in the RAN 103 / 104 / 105, Core Network 106 / 107 / 109, PSTN 108, Internet 110, or Other Networks 112. Computing system 90 may comprise a computer or server and may be controlled primarily by computer readable instructions, which may be in the form of software, wherever, or by whatever means such software is stored or accessed. Such computer readable instructions may be executed within a processor 91, to cause computing system 90 to do work. The processor 91 may be a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor (DSP), a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits (ASICs), Field Programmable Gate Array (FPGAs) circuits, any other type of integrated circuit (IC), a state machine, and the like. The processor 91 may perform signal coding, data processing, power control, input / output processing, and / or any other functionality that enables the computing system 90 to operate in a communications network. Coprocessor 81 is an optional processor, distinct from main processor 91, that may perform additional functions or assist processor 91. Processor 91 and / or coprocessor 81 may receive, generate, and process data related to the methods and apparatuses disclosed herein.
[0175] In operation, processor 91 fetches, decodes, and executes instructions, and transfers information to and from other resources via the computing system’s main data-transfer path, system bus 80. Such a system bus connects the components in computing system 90 and defines the medium for data exchange. System bus 80 typically includes data lines for sending data, address lines for sending addresses, and control lines for sending interrupts and for operating the system bus. An example of such a system bus 80 is the PCI (Peripheral Component Interconnect) bus.
[0176] Memories coupled to system bus 80 include random access memory (RAM) 82 and read only memory (ROM) 93. Such memories include circuitry that allows information to be stored and retrieved. ROMs 93 generally contain stored data that cannot easily be modified. Data storedin RAM 82 may be read or changed by processor 91 or other hardware devices. Access to RAM 82 and / or ROM 93 may be controlled by memory controller 92. Memory controller 92 may provide an address translation function that translates virtual addresses into physical addresses as instructions are executed. Memory controller 92 may also provide a memory protection function that isolates processes within the system and isolates system processes from user processes. Thus, a program running in a first mode may access only memory mapped by its own process virtual address space; it cannot access memory within another process’s virtual address space unless memory sharing between the processes has been set up.
[0177] In addition, computing system 90 may contain peripherals controller 83 responsible for communicating instructions from processor 91 to peripherals, such as printer 94, keyboard 84, mouse 95, and disk drive 85.
[0178] Display 86, which is controlled by display controller 96, is used to display visual output generated by computing system 90. Such visual output may include text, graphics, animated graphics, and video. The visual output may be provided in the form of a graphical user interface (GUI). Display 86 may be implemented with a CRT-based video display, an LCD-based flat-panel display, gas plasma-based flat-panel display, or a touch-panel. Display controller 96 includes electronic components required to generate a video signal that is sent to display 86.
[0179] Further, computing system 90 may contain communication circuitry, such as for example a network adapter 97, that may be used to connect computing system 90 to an external communications network, such as the RAN 103 / 104 / 105, Core Network 106 / 107 / 109, PSTN 108, Internet 110, or Other Networks 112 of FIGs. 11 A, 11B, 11C, 11D, and HE, to enable the computing system 90 to communicate with other nodes or functional entities of those networks. The communication circuitry, alone or in combination with the processor 91, may be used to perform the transmitting and receiving steps of certain apparatuses, nodes, or functional entities described herein.
[0180] FIG. 11G illustrates one embodiment of an example communications system 111 in which the methods and apparatuses described and claimed herein may be embodied. As shown, the example communications system 111 may include wireless transmit / receive units (WTRUs) A, B, C, D, E, F, a base station, a V2X server, and a RSUs A and B, though it will be appreciated that the disclosed embodiments contemplate any number of WTRUs, base stations, networks, and / or network elements. One or several or all WTRUs A, B, C, D, E can be out of range of thenetwork (for example, in the figure out of the cell coverage boundary shown as the dash line). WTRUs A, B, C form a V2X group, among which WTRU A is the group lead and WTRUs B and C are group members. WTRUs A, B, C, D, E, F may communicate over Uu interface or Sidelink (PC 5) interface.
[0181] It is understood that any or all of the apparatuses, systems, methods and processes described herein may be embodied in the form of computer executable instructions (e.g., program code) stored on a computer-readable storage medium which instructions, when executed by a processor, such as processors 118 or 91, cause the processor to perform and / or implement the systems, methods and processes described herein. Specifically, any of the steps, operations or functions described herein may be implemented in the form of such computer executable instructions, executing on the processor of an apparatus or computing system configured for wireless and / or wired network communications. Computer readable storage media include volatile and nonvolatile, removable and non-removable media implemented in any non-transitory (e.g., tangible or physical) method or technology for storage of information, but such computer readable storage media do not include signals. Computer readable storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other tangible or physical medium which may be used to store the desired information and which may be accessed by a computing system.
Claims
What is claimed is:
1. A method comprising: receiving, from a server, a subscription request for an artificial intelligence / machine learning (AIML) operation, wherein the subscription request is associated with at least one of: one or more ML models, one or more ML model parameters, one or more training requirements, or at least one of: an AIML enabler client identifier, an AIML enabler client set, or an indicator to allow for the management of the AIML enabler client set; causing training, by one or more AIML enabler clients, of the ML model; and sending, to the server, a notification indicating at least one of: a subscription identifier, one or more trained ML models, the one or more ML model parameters, a percentage completion of the AIML operation, or a time that has elapsed for the AIML operation.
2. The method of claim 1, wherein the causing training, by the one or more AIML enabler clients, of the ML model comprises: selecting, based on the indicator, the one or more AIML enabler clients.
3. The method of claim 1, wherein the AIML operation comprises at least one of: data collection, data preparation, model training, model evaluation, or model deployment.
4. The method of claim 1, wherein the one or more training requirements comprise a number of training rounds, a minimum number of data instances per training round, a minimum number of AIML enabler clients per round, a batch size, a number of iterations, epochs, or a target cost function metric.
5. The method of claim 1, further comprising: sending, to the server, a response to the subscription request, wherein the response comprises at least a subscription identifier and a result for the subscription request.
6. The method of claim 1, further comprising: updating, based on receiving one or more notifications associated with the training by the one or more AIML enabler clients, an operational task associated with the AIML operation.
7. The method of claim 1, wherein the AIML enabler client identifier indicates the AIML enabler client set to perform the training.
8. The method of claim 1, wherein the subscription identifier associates the notification with the subscription request.
9. The method of claim 1, wherein the subscription request further comprises at least one of: dataset requirements, data processing functions, an aggregation algorithm, a hyperparameters set, a cost function, an AIML training threshold, a location of interest, an expiration, or notification settings.
10. The method of claim 1, further comprising: receiving at least one AIML task notification from the one or more AIML enabler clients.
11. An apparatus comprising one or more processors and memory storing instructions which, when executed by the one or more processors, cause the apparatus to: receive, from a server, a subscription request for an artificial intelligence / machine learning (AIML) operation, wherein the subscription request is associated with at least one of: one or more ML models, one or more ML model parameters, one or more training requirements, or at least one of: an AIML enabler client identifier, an AIML enabler client set, or an indicator to allow for the management of the AIML enabler client set; cause training, by one or more AIML enabler clients, of the ML model; and send, to the server, a notification indicating at least one of: a subscription identifier, one or more trained ML models, the one or more ML model parameters, a percentage completion of the AIML operation, or a time that has elapsed for the AIML operation.
12. The apparatus of claim 11, wherein the causing training, by the one or more AIML enabler clients, of the ML model comprises: selecting, based on the indicator, the one or more AIML enabler clients.
13. The apparatus of claim 11, wherein the AIML operation comprises at least one of: data collection, data preparation, model training, model evaluation, or model deployment.
14. The apparatus of claim 11, wherein the one or more training requirements comprise a number of training rounds, a minimum number of data instances per training round, a minimum number of AIML enabler clients per round, a batch size, a number of iterations, epochs, or a target cost function metric.
15. The apparatus of claim 11, wherein the instructions, when executed by the one or more processors, further cause the apparatus to: sending, to the server, a response to the subscription request, wherein the response comprises at least a subscription identifier and a result for the subscription request.
16. The apparatus of claim 11, wherein the instructions, when executed by the one or more processors, further cause the apparatus to: updating, based on receiving one or more notifications associated with the training by the one or more AIML enabler clients, an operational task associated with the AIML operation.
17. The apparatus of claim 11, wherein the AIML enabler client identifier indicates the AIML enabler client set to perform the training.
18. The apparatus of claim 11, wherein the subscription identifier associates the notification with the subscription request.
19. The apparatus of claim 11, wherein the subscription request further comprises at least one of: dataset requirements, data processing functions, an aggregation algorithm, ahyperparameters set, a cost function, an AIML training threshold, a location of interest, an expiration, or notification settings.
20. The apparatus of claim 11, wherein the instructions, when executed by the one or more processors, further cause the apparatus to: receiving at least one AIML task notification from the one or more AIML enabler clients.
Citation Information
Patent Citations
Federal learning service processing method, device, equipment and system
CN115242756A
KR20230156657A