Methods for dynamically generating for display and updating a timeline of events
The method dynamically generates and updates timelines using machine learning to process real-time data, addressing the inefficiencies of existing technologies by creating an adaptive and responsive timeline that automatically adjusts schedules, enhancing efficiency and user experience across industries.
Patent Information
- Application Number
- GB2023009532
- Authority / Receiving Office
- GB · GB
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-23
- Publication Date
- 2025-01-01
AI Technical Summary
Existing technologies lack the ability to create adaptive and responsive timeline management solutions that can automatically schedule and reschedule events based on real-time data inputs and changing circumstances, leading to inefficiencies and suboptimal outcomes in various industries such as healthcare and project management.
A method for dynamically generating and updating a timeline of events on a computing device by receiving and processing data from multiple sources, including user inputs and external factors, using machine learning algorithms to calculate optimal event delivery and adjust schedules in real or near real-time, while ensuring actions remain within safe limits set by control limits.
This approach enables an adaptive and personalized timeline that automatically adjusts to various inputs and external factors, enhancing efficiency and user experience by providing real-time adjustments and recommendations, improving health outcomes and project management efficiency.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
TECHNICAL FIELD The invention relates to methods for dynamically generating for display and updating a timeline of events. BACKGROUND In today's fast-paced world, efficient and effective management of tasks, events, and information sharing is crucial for individuals and organizations alike. Various technologies and tools have been developed to facilitate scheduling, communication, and project management. These tools often employ tabular layouts, calendar functions, and other visual representations to help users organize and manage their tasks and events. However, as the number of tasks and information to be shared increases, these formats can become cumbersome and less visually intuitive. Moreover, existing technologies often lack the ability to adapt and respond to changing circumstances and data inputs in real-time, which can lead to inefficiencies and suboptimal outcomes. Unidirectional and bidirectional communication technologies, such as short messaging services (SMS) and email, are commonly used for sending appointment reminders, marketing offers, and other notifications. While these technologies enable some level of interaction, they are often impersonal and rigid, limiting the potential for more dynamic and adaptive communication. Manual intervention scheduling, which involves human screening and interpretation of user responses, is also prevalent in project management tools. However, this approach is resource-intensive, prone to human error, and may result in a lack of standardized responses. Assimilating multiple dynamic digital inputs is not practical when undertaken manually. Furthermore, manual intervention scheduling is not suitable for interactions that require near-instant responses and does not facilitate system learning or automatic adaptation of timelines. In the healthcare sector, for example, diabetic patients often rely on manual recording of blood glucose levels and infrequent clinical input to manage their condition. This process is time-consuming and does not allow for real-time adjustments based on changing circumstances or patient needs. Digital continuous glucose monitoring has emerged as a more advanced solution, but it still requires patients to make necessary adjustments themselves until their next clinical review. Similarly, in the construction industry, project timelines are often depicted using Gantt charts, which represent fixed time points or milestones. These charts do not easily accommodate changes in project scope, resource availability, or other factors that may impact the project timeline. The increasing availability of real-time digital data from various sources, such as wearables, connected devices, and external factors like weather and pollution levels, presents an opportunity to develop more adaptive and responsive timeline management solutions. By incorporating multiple digital inputs and leveraging advanced statistical techniques, machine learning algorithms, and other computational methods, it is possible to create a dynamic, interactive, and personalized timeline that can automatically schedule and reschedule events based on data inputs and changing circumstances. However, existing technologies have not yet fully realized the potential of such adaptive timeline management solutions. There is a need for a more intuitive graphical user interface (GUI) that allows device users to easily create, edit, and manage scheduled communications and tasks. Moreover, there is a need for a system that can automatically adapt and respond to various digital inputs, both from users and external real-time sources, to provide personalized and contextually relevant information and recommendations. Improvements are desired to overcome the shortcomings of existing implementations. SUMMARY In general terms, the present disclosure is directed to a method for dynamically generating for display and updating a timeline of events on a computing device, wherein the method involves receiving a request to display a timeline, identifying events, generating the events on the timeline, receiving additional data, and moving or adding new events on to the timeline based on the received data. The present disclosure describes a means of processing every event singularly but also in combination with the totality of events both preceding and future, to calculate the optimal delivery of events and where necessary add new events or raise alerts in an automated fashion in real or near real-time. Advantageously, the invention solves the problem of rigid, impersonal, and resource-intensive scheduling and task management by providing an adaptive, responsive, and personalized timeline that automatically schedules and reschedules communications and actions based on data inputs, external factors, and network effect learning, ultimately enhancing efficiency and user experience and importantly reaching the desired outcomes more quickly or leading to a better outcome by automating the processing of multiple inputs across various industries and use cases. A timeline according to the disclosure, and its underlying processes, may be advantageously used within a healthcare setting. Such a timeline may be used in connection with any number of “projects” both within and outside of health care settings. For the purposes of this disclosure, use in connection with monitoring of glucose levels in respect of a diabetic patient is explained by way of example only. Standard practice for monitoring of glucose levels requires patients to manually record their blood glucose levels over an extended period. The data is provided to a medical practitioner to review alongside of that of many other patients. This is a manual process which is time consuming and does not allow for real-time or near real-time adjustments to be made to medication and treatments. Digital blood glucose monitoring is already available but does not yet alleviate the need for a medical practitioner to review data that has been collected over an extended period. The present invention provides a solution to this issue by setting patient specific actions on a timeline. When data is input in accordance with a scheduled action, the timeline is dynamically updated based on the patient’s data. Furthermore, information that is sent back to the patient can include a real-time adjustment to medication and / or treatment plans. Data received from a patient is fed into an array which houses control limits. The control limits are set to ensure that any actions which are set on the timeline without medical professional intervention are within an acceptable safe limit. The control limits may be personalised based on aggregated user data collected overtime. For example, a patient’s blood glucose levels may be determined to rise over time. A small rise on several occasions may fall within the control limits and the patient may be instructed to increase their medication dose. However, further increases in blood glucose levels may be considered unsafe and outside of acceptable control limits. At this point, the patient may be referred to a medical professional for a consultation. The patient’s blood glucose levels may be monitored, and the patient instructed to return to a standard medication dose when their blood glucose levels are determined to have returned to a normal level. In some embodiments, the timeline may receive data from multiple data sources, i.e., heart rate, temperature, GPS / step count, activity hours. Such data may be fed into a data model to return highly personalised actions on a patient’s timeline. Each input variable may be weighted based on pre-determined parameters. For example, in the case of a patient recovering from hip surgery, the weighting of GPS / step data will be greater four weeks post operation than it will be immediately following the operation and vice versa. In some embodiments, data from external data sources, i.e., pollen count, temperature, weather conditions, and barometric pressure may be incorporated into the data model to enable preventative actions to be recommended to the patient via the timeline. Such data may be received and implemented into the data model in realtime or near real-time. In some embodiments, the timeline may be split into a master timeline and multiple sub-timelines with the master timeline representing an overall project and each subtimeline representing a sub-project. The timeline and underlying methods of the present disclosure is agnostic in use and can transcend industries and project types. According to an aspect of the invention, there is provided a method for dynamically generating for display and updating a timeline of events, the method comprising: receiving, at a computing device, a request to display a timeline from a plurality of timelines; generating for display at the computing device the timeline; querying by the computing device a data repository to return a plurality of events that are relevant to the subject matter of the timeline; identifying, at the computing device, at least one event from the plurality of events to be displayed on the timeline; generating for display the at least one event at a position on the timeline; receiving at the computing device or at another device data according to at least one parameter associated with the at least one event; querying by the computing device a computational model to determine whether a further event should be added to the timeline, if the at least one event should be modified or deleted, or if the timeline should be terminated; and generating for display at the computing device an updated timeline. Optionally, each event on the timeline is represented by an icon that can be moved along the timeline manually by a user. Optionally, the at least one event comprises two or more events, each of which is initially positioned in a predetermined position on the timeline. A spatial relationship is defined between each of the two or more events to determine a distance on the timeline between each event. Optionally, each event represents one or more actions to be taken upon the timeline coinciding with a then present date. Optionally, performing an action associated with an event modifies the position of another event on the timeline in accordance with a relationship between a pair of events. This relationship may be pre-determined by the user or newly determined by the methods described herein. Optionally, the data received includes one or more of digital biomarkers, sensor data, manually entered data, or physiological / biochemical / genetic data. Optionally, the position of an event on the timeline is determined from a machine learning model trained on a dataset corresponding to the timeline. Optionally, each event is retrieved from a library of events. Optionally, an event may be imported from an external source such as another application or unrelated system. Optionally, the occurrence of an event triggers at least one action. Optionally, the data received is weighted depending on the time elapsed from an origin of the timeline. Optionally, the weighting of any event may be adjusted by a user. Optionally, the weight of the data increases as the time from the origin of the timeline increases. Optionally, the weight of the data decreases as the time from the origin of the timeline decreases. Optionally, the method further comprises receiving environmental data from one or more sensors or data sources. Optionally, the method further comprises transmitting an alert signal to a mobile or other device in response to data received from the user and / or environmental data exceeding a pre-determined threshold value. Optionally, the method further comprises generating a secondary timeline for one or more events and populating the secondary timeline with one or more secondary events. Another aspect of the invention provides a graphical user interface (GUI) comprising a timeline represented in a plurality of sections, wherein each section of the plurality of sections represents a different time period, the timeline comprising at least one event. Optionally, the timeline comprises a master timeline and a plurality of sub-timelines, wherein addition, modification, or deletion of an event from a sub-timeline causes the master timeline to automatically be updated and addition, modification, or deletion of an event from the master timeline causes at least on of the sub-timelines to be automatically updated. Optionally, a section of the timeline being interacted with is generated for display at a larger scale than any other section within the timeline and returns to the same scale as the other section when no longer being interacted with. Optionally, each event may be added to, edited, or deleted from the timeline by selecting the event displayed directly on the timeline or from a repository of events, in each case using a computer input device to select and add, edit, or delete the event. BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects and advantages of the invention of the disclosures will be apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings in which: Figure 1 illustratively shows a unidirectional timeline as is prevalent in the prior art. Figure 2 illustratively shows a bidirectional timeline as is prevalent in the prior art. Figure 3 illustratively shows another bidirectional timeline as is prevalent in the prior art. Figure 4 illustratively shows a basic timeline according to the present disclosure. Figure 5 illustratively shows a dynamic timeline according to the present disclosure. Figure 6 illustratively shows a master project timeline populated with multiple subproject timelines according to the present disclosure. Figure 7 illustratively shows a flowchart for performing a method according to the present disclosure. DETAILED DESCRIPTION Figure 1 is an example of a unidirectional timeline as is prevalent in the prior art. Unidirectional timelines are often used in a healthcare setting. A trigger event, i.e., being discharged from a hospital stay, may result in a unidirectional timeline being generated. Fixed events according to a selected timeline are set so as to cause activities such as correspondence being sent to patients and appoints to be scheduled, for example. Similar timelines are used in a multitude of industries from construction to legal. The use of unidirectional timelines prevents the subject of the timeline from adding their own data or input into the process embodied by the timeline. Figure 2 is an example of a simple bidirectional timeline as is prevalent in the prior art. Such a timeline operates in a similar manner to a unidirectional timeline except that the subject of the timeline has limited capability to input to the process embodied by the timeline. For example, the subject of the timeline may receive a telephone call or SMS message and in response may make a decision by pressing 1 to confirm or 2 to cancel, for example. A more complex bidirectional timeline is shown in Figure 3. Here, the subject of the timeline may be prompted to answer questions in freeform text, or via guided answers marked by dropdown lists or checkboxes, for example. The answers provided may be screened by a human operator for relevance and conformity with certain principles and rules. Figure 4 illustrates a novel timeline 10 and process according to the disclosure. The timeline 10 comprises a timescale 12 which may be split into different time segments. At a first point 14 on the timeline 10 information may be sent to the subject of the timeline 10. At a second point 16 on the timeline 10 information may be received from the subject of the timeline 10. At a third point 18 on the timeline 10 further information may be received from the subject of the timeline 10. Information received at the second point 16 and third point 18 on the timeline is ingested into a reasoning engine 20. The reasoning engine 20 comprises a set of control limits 22. The information received at the second point 16 and third point 18 of the timeline 10 is analysed against the control limits 22. If the information received at the second point 16 and third point 18 of the timeline 10 does not exceed the control limits 22, such data is used to query a library of events 24. One or more events of the library 24 is selected based on the data and generated for display on the timeline. If the information received at the second point 16 and / or third point 18 individually or cumulatively exceeds the control limits 22 a message may be displayed on the timeline requesting that the data provided is resubmitted. Figure 5 illustrates the use of weighted inputs on a timeline 10. As shown, a plurality of inputs 26, 28, 30 may be obtained. Each input is compared against control limits 22a, 22b, 22c. The inputs 26, 28, 30, if the control limits 22a, 22b, 22c are not exceeded, are each weighted 32 before being used to query the library 24. The combined and weighted input determines 32 which events may be returned by the library for generation for display on the timeline 10. As shown in Figure 6, the timeline 10 may comprise a master timeline (shown as 10) and multiple sub-timelines 34, 36 may feed into the master timeline 10. For example, manipulation of a sub-timeline 34, 36 may cause events of the sub-timeline 34, 36 to be duplicated on the master timeline 10. The master timeline 10 represents an overall project. Each sub-timeline 34, 36 represents a sub-project. Figure 7 illustratively shows a flowchart for performing a method according to the present disclosure. At a first step 701, a request is received by way of a computing device for a timeline to be displayed on a display screen. At step 702, the timeline is generated for display. At step 703, a data repository containing a plurality of events relevant to the timeline is queried. At step 704, at least one event from the plurality of events is identified and selected. At step 705, the identified events are generated for display on the timeline. At step 706, data relevant to at least one parameter of the identified events is received. At step 707, the received data is used to query a computational model. At step 708, the at least one event on the timeline is updated, i.e., deleted, amended, or supplemented, and an updated timeline is generated for display. Advantageously, the method enables the development of a highly adaptive and responsive timeline that intelligently adjusts to various inputs and external factors, providing a dynamic and versatile tool for managing events and tasks across a wide range of applications. In the context of healthcare management, the adaptive timeline can continuously monitor and analyse a diabetic patient’s blood glucose levels, retinal scans, heart rate, and other vital physiological data, allowing for real-time adjustments to the patient’s treatment plan. For instance, the system can automatically recommend changes to insulin dosing, dietary modifications, and exercise routines and make adjustments to relevant appointments based on the patient’s current health status and historical trends. This level of personalization and adaptability ensures that patients receive the most effective and tailored care possible, ultimately improving health outcomes and quality of life. Similarly, in project management applications, the adaptive timeline can seamlessly integrate and respond to fluctuations in supply chain availability, labour force capacity, regulatory approvals, and other critical factors that impact project timelines. By continuously monitoring these variables, the system can dynamically adjust task schedules, resource allocations, and milestones to optimize project efficiency and ensure timely completion. For example, if a key component’s delivery is delayed, the adaptive timeline can automatically reschedule dependent tasks, notify relevant stakeholders, and suggest alternative solutions to minimize the impact on the overall project timeline. Additionally, the system can proactively identify potential bottlenecks or risks and recommend preventive measures, such as securing backup suppliers or reallocating resources, to mitigate potential delays and disruptions. Furthermore, the adaptive timeline can be customized to accommodate the unique requirements and constraints of specific industries or sectors. In the construction industry, for instance, the timeline can factor in weather conditions, site accessibility, and safety regulations to optimize construction schedules and resource utilization. In the pharmaceutical industry, the adaptive timeline can account for clinical trial phases, regulatory submission deadlines, and patent expiration dates to streamline drug development and commercialization processes. The adaptive timeline can also facilitate collaboration and communication among team members, stakeholders, and external partners by providing a centralized and up-to-date platform for tracking project progress, sharing updates, and discussing issues or concerns. This enhanced transparency and coordination can help prevent misunderstandings, reduce duplication of efforts, and foster a more cohesive and productive work environment. Moreover, the adaptive timeline can be integrated with other software tools and platforms, such as enterprise resource planning (ERP) systems, customer relationship management (CRM) solutions, and electronic health record (EHR) systems, to further enhance its functionality and utility. By leveraging data and insights from these complementary systems, the adaptive timeline can provide even more accurate and actionable recommendations, ultimately driving better decision-making and improved outcomes across various applications. In some embodiments, each event on the timeline is represented by an icon which is movable along the timeline manually by a user. Advantageously, this feature provides a user-friendly and intuitive graphical user interface (GUI) for managing events on the timeline. Users can easily edit and rearrange events by simply dragging and dropping icons on the timeline. Events are directly editble from the timeline, for example selecting an SMS event opens an SMS editor directly from the timeline. This direct editing from the timeline is true of all events. This allows for greater flexibility and customization, reduces cognitive load and distraction of needing to edit events elsewhere and enables users to create personalized timelines that best suit their needs and preferences. In some embodiments, the at least one event comprises two or more events, each of the two or more events being initially positioned in a predetermined position on the timeline. A spatial relationship is defined between each of the two or more events to determine a distance on the timeline between each event. Advantageously, this feature allows for the organization and management of multiple events on the timeline. By defining spatial relationships between events, the system can automatically adjust the position of related events when one event is moved or modified. This ensures that the timeline remains coherent and accurate, even as events are added, removed, or changed. In some embodiments, each event represents one or more actions to be taken upon the timeline coinciding with a then present date. Advantageously, this feature enables the timeline to serve as a dynamic and interactive tool for managing tasks and actions. Users can easily view and track their progress on various tasks, as well as receive notifications and reminders when actions are due. This helps users stay organized and focused, ultimately improving productivity and efficiency. In some embodiments, performing an action associated with an event modifies the position of another event on the timeline in accordance with a relationship between a pair of events. Advantageously, this feature allows the timeline to adapt and respond to user actions in real-time. By automatically adjusting the position of related events based on user actions, the system ensures that the timeline remains up-to-date and accurate, reflecting the status of tasks and actions. In some embodiments, the data received from a user comprises one or more of: vocal biomarkers, sensor data, manually entered data, or physiological data. Advantageously, this feature allows the system to collect and process a wide variety of data types, enabling the timeline to adapt to a diverse range of user inputs and external factors. This versatility makes the timeline suitable for a wide range of applications, from healthcare management to project management and beyond. In some embodiments, the position of an event on the timeline is determined from a machine learning model trained on a dataset corresponding to the timeline. Advantageously, this feature allows the system to leverage advanced machine learning techniques to optimize the placement of events on the timeline. By analyzing historical data and identifying patterns and trends, the machine learning model can make more accurate predictions and recommendations, ultimately improving the overall effectiveness of the timeline and other timelines within a wider network that can benefit from learnt prior event interactions.. In some embodiments, each event is retrieved from a library of events. Advantageously, this feature allows users to easily access and incorporate pre-defined events into their timelines. By providing a library of events, the system simplifies the process of creating and customizing timelines, saving users time and effort. In some embodiments, the occurrence of an event triggers at least one action. Advantageously, this feature enables the timeline to serve as an active and responsive tool for managing tasks and actions. By automatically triggering actions based on the occurrence of events, the system ensures that users stay on track and complete tasks in a timely manner. In some embodiments, the data received from a user is weighted depending on the time elapsed from an origin of the timeline. Advantageously, this feature allows the system to prioritize more recent data, ensuring that the timeline remains up-to-date and relevant. By weighting data based on its recency, the system can make more accurate predictions and recommendations, ultimately improving the overall effectiveness of the timeline. In some embodiments, the weight of the data increases as the time from the origin of the timeline increases. Advantageously, this feature allows the system to adapt and respond to changing conditions and user inputs over time. By increasing the weight of more recent data, the system can continuously update and refine its predictions and recommendations, ensuring that the timeline remains accurate and effective throughout its duration. In some embodiments, the weight of the data decreases as the time from the origin of the timeline decreases. Advantageously, this feature allows the system to prioritize more recent data, ensuring that the timeline remains up-to-date and relevant. By decreasing the weight of older data, the system can make more accurate predictions and recommendations, ultimately improving the overall effectiveness of the timeline. This is particularly useful in applications such as healthcare management, where a diabetic patient's blood glucose levels, retinal scans, and other physiological data can be weighted differently based on their recency, allowing for more personalized and adaptive recommendations. In some embodiments, the method further comprises receiving environmental data from one or more sensors or data sources. Advantageously, this feature allows the system to incorporate external factors, such as weather, pollution levels, and other environmental data, into the timeline. By integrating this additional data, the system can make more informed predictions and recommendations, ultimately improving the overall effectiveness of the timeline. For example, in the case of an asthma patient, the system can reconcile external data such as climactic, weather, and pollution levels to alert the user to personalized risks of an asthma attack and recommend appropriate actions, such as prophylactically increasing asthma medication or avoiding prolonged exposure to outdoor pollution. In some embodiments, the method further comprises transmitting an alert signal to a mobile device in response to data received from the user and / or environmental data exceeding a pre-determined threshold value. Advantageously, this feature enables the system to provide timely notifications and alerts to users, helping them stay informed and take appropriate actions in response to changing conditions. For example, in the case of a construction project management application, the system can send alerts to relevant stakeholders when supply chain availability, labour force, or regulatory approvals deviate from the expected timeline, ensuring that tasks are completed efficiently and on time. In some embodiments, the method further comprises generating for display a secondary timeline for one or more events and populating the secondary timeline with one or more secondary events. Advantageously, this feature allows for the organization and management of multiple events and sub-projects within a larger project or timeline. By creating secondary timelines, the system can provide a more detailed and granular view of tasks and actions, enabling users to better understand and manage their progress. This is particularly useful in applications such as project management, where an overall project can be broken down into sub-projects, each with its own timeline, and each sub-project timeline informs a master project timeline. This allows for better coordination and organization of tasks, ultimately improving the overall efficiency and effectiveness of the project. In some embodiments, the timeline is split into a plurality of sections, and wherein upon interaction by a user with one of the plurality of sections, the section being interacted with is displayed at a larger scale than the sections not being interacted with. Advantageously, the timeline can be split into days, weeks, months, and even years. Increasing the scale of the section which is being interacted with provides a user with the ability to accurately place an event on the timeline while the remainder of the timeline remains visible at a smaller scale. Another aspect of the invention provides a graphical user interface (GUI) comprising a timeline represented in a plurality of sections, wherein each section of the plurality of sections represents a different period, the timeline comprising at least one event. In some embodiments the timeline comprises a master timeline and a plurality of subtimelines, wherein addition, modification, or deletion of an event from a sub-timeline causes the master timeline to automatically be updated and addition, modification, or deletion of an event from the master timeline causes at least on of the sub-timelines to be automatically updated. In some embodiments a section of the timeline being interacted with is generated for display at a larger scale than any other section within the timeline and returns to the same scale as the other section when no longer being interacted with. It will be appreciated by the person of skill in the art that various modifications may be made to the above-described examples without departing from the scope of the invention as defined by the appended claims. The foregoing disclosure provides illustration and description but is not intended to be exhaustive or to limit the implementations to the precise form disclosed. Modifications may be made considering the above disclosure or may be acquired from practice of the implementations. As used herein, the term “component” is intended to be broadly construed as hardware, firmware, or a combination of hardware and software. It will be apparent that systems and / or methods described herein may be implemented in different forms of hardware, firmware, and / or a combination of hardware and software. The actual specialized control hardware or software code used to implement these systems and / or methods is not limiting of the implementations. Thus, the operation and behavior of the systems and / or methods are described herein without reference to specific software code - it being understood that software and hardware can be used to implement the systems and / or methods based on the description herein. As used herein, satisfying a threshold may, depending on the context, refer to a value being greater than the threshold, greater than or equal to the threshold, less than the threshold, less than or equal to the threshold, equal to the threshold, and / or the like, depending on the context. Although combinations of features are recited in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of various implementations. In fact, many of these features may be combined in ways not specifically recited in the claims and / or disclosed in the specification. Although each dependent claim listed below may directly depend on only one claim, the disclosure of various implementations includes each dependent claim in combination with every other claim in the claim set. No element, act, or instruction used herein should be construed as critical or essential unless explicitly described as such. Also, as used herein, the articles “a” and “an” are intended to include one or more items and may be used interchangeably with “one or more.” Further, as used herein, the article “the” is intended to include one or more items referenced in connection with the article “the” and may be used interchangeably with “the one or more.” Furthermore, as used herein, the term “set” is intended to include one or more items (e.g., related items, unrelated items, a combination of related and unrelated items, and / or the like), and may be used interchangeably with “one or more.” Where only one item is intended, the phrase “only one” or similar language is used. Also, as used herein, the terms “has,” “have,” “having,” or the like are intended to be open-ended terms. Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise. Also, as used herein, the term “or” is intended to be inclusive when used in a series and may be used interchangeably with “and / or,” unless explicitly stated otherwise (e.g., if used in combination with “either” or “only one of’).
Claims
1. A method for dynamically generating for display and updating a timeline of events, the method comprising:receiving, at a computing device, a request to display a timeline from a plurality of timelines;generating for display at the computing device the timeline;querying by the computing device a data repository to return a plurality of events that are relevant to the subject matter of the timeline;identifying, at the computing device, at least one event from the plurality of events to be displayed on the timeline;generating for display the at least one event at a position on the timeline;receiving at the computing device or at another device data according to at least one parameter associated with the at least one event;querying by the computing device a computational model to determine whether a further event should be added to the timeline, if the at least one event should be modified or deleted, or if the timeline should be terminated; andgenerating for display at the computing device an updated timeline.
2. The method of claim 1, wherein each event on the timeline is represented by an icon which is movable along the timeline manually by a user.
3. The method of claim 1 or claim 2, wherein the at least one event comprises two or more events, each of the two or more events being initially positioned in a predetermined position on the timeline, wherein a spatial relationship is defined between each of the two or more events to determine a distance on the timeline between each event.
4. The method of claim 3 wherein each event represents one or more actions to be taken upon the timeline coinciding with a then present date.
5. The method of claim 4 wherein performing an action associated with an event modifies the position of another event on the timeline in accordance with a relationship between a pair of events.
6. The method of claim 1 wherein the data received from a user comprises one or more of: digital biomarkers, sensor data, manually entered data, or physiological / biochemical / genetic data.
7. The method of any preceding claim wherein the position of an event on the timeline is determined from a machine learning model trained on a dataset corresponding to the timeline.
8. The method of any preceding claim wherein each event is retrieved from a library of events.
9. The method of any preceding claim wherein the occurrence of an event triggers at least one action.
10. The method of any preceding claim wherein the data received from a user is weighted depending on the time elapsed from an origin of the timeline.
11. The method of claim 10 wherein the weight of the data increases as the time from the origin of the timeline increases.
12. The method of claim 10 wherein the weight of the data decreases as the time from the origin of the timeline decreases.
13. The method of any preceding claim further comprising receiving environmentaldata from one or more sensors or data sources,14. The method of claim 13 further comprising transmitting an alert signal to another device in response to data received from the user and / or environmental data exceeding a pre-determined threshold value.
15. The method of any preceding claim further comprising generating for display a secondary timeline for one or more events and populating the secondary timeline with one or more secondary events.
16. The method of any preceding claim wherein the timeline is split into a plurality of sections, and wherein upon interaction by a user with one of the plurality of sections, the section being interacted with is displayed at a larger scale than the sections not being interacted with.
17. The method of claim 8 wherein the library of events comprises real-time or near real-time data that is stored in a data repository from external data sources.
18. The method of claim 17 wherein the library of events includes computer generated events based on the received data and uploaded to the data repository.
19. The method of claim 18, wherein the data repository comprises a public data repository from which any timeline connected to the data repository may retrieve events.
20. The method of claim 19, wherein the data repository further comprises a private data repository from which only an authorised timeline connected to the data repository may retrieve events.
21. A graphical user interface (GUI) comprising a timeline represented in a plurality of sections, wherein each section of the plurality of sections represents a different time period, the timeline comprising at least one event.
22. A graphical user interface according to claim 21, wherein the timeline comprises a master timeline and a plurality of sub-timelines, wherein addition, modification, or deletion of an event from a sub-timeline causes the master timeline to automatically be updated and addition, modification, or deletion of an event from the master timeline causes at least on of the sub-timelines to be automatically updated.
23. A graphical user interface according to either of claim 21 or claim 22, wherein a section of the timeline being interacted with is generated for display at a larger scale than any other section within the timeline and returns to the same scale as the other section when no longer being interacted with.
24. A graphical user interface according to any of claims 21 to 23, wherein each event may be added to, edited, or deleted from the timeline by selecting the event displayed directly on the timeline or from a repository of events, in each case using a computer input device to select and add, edit, or delete the event.