{
  "fetched_at": "2026-10-19T09:21:20Z",
  "source_url": "https://www.kaggle.com/competitions/brist1d/data",
  "pages": [
    {
      "name": "data-description",
      "content": "The dataset is from a study that collected data from young adults in the UK with type 1 diabetes, who used a continuous glucose monitor (CGM), an insulin pump and a smartwatch. These devices collected blood glucose readings, insulin dosage, carbohydrate intake, and activity data. The data collected was aggregated to five-minute intervals and formatted into samples. Each sample represents a point in time and includes the aggregated five-minute intervals from the previous six hours. The aim is to predict the blood glucose reading an hour into the future, for each of these samples.\n\nThe training set takes samples from the first three months of study data from nine of the participants and includes the future blood glucose value. These training samples appear in chronological order and overlap. The testing set takes samples from the remainder of the study period from fifteen of the participants (so unseen participants appear in the testing set). These testing samples do not overlap and are in a random order to avoid data leakage. \n\nComplexities to be aware of:\n- this is medical data so there are missing values and noise in the data\n- the participants did not all use the same device models (CGM, insulin pump and smartwatch) so there may be differences in the collection method of the data\n- some participants in the test set do not appear in the training set\n\n\n## Files\n\n*   **activities.txt** - a list of activity names that appear in the `activity-X:XX` columns\n*   **sample_submission.csv** - a sample submission file in the correct format\n*   **test.csv** - the test set\n*   **train.csv** - the training set\n\n\n## Columns\n### train.csv\n*   `id` - row id consisting of participant number and a count for that participant\n*   `p_num` - participant number\n*   `time` - time of day in the format HH:MM:SS\n*   `bg-X:XX` - blood glucose reading in mmol/L, X:XX(H:MM) time in the past (e.g. `bg-2:35`, would be the blood glucose reading from 2 hours and 35 minutes before the `time` value for that row), recorded by the continuous glucose monitor\n*   `insulin-X:XX` - total insulin dose received in units in the last 5 minutes, X:XX(H:MM) time in the past (e.g. `insulin-2:35`, would be the total insulin dose received between 2 hours and 40 minutes and 2 hours and 35 minutes before the `time` value for that row), recorded by the insulin pump\n*   `carbs-X:XX` - total carbohydrate value consumed in grammes in the last 5 minutes, X:XX(H:MM) time in the past (e.g. `carbs-2:35`, would be the total carbohydrate value consumed between 2 hours and 40 minutes and 2 hours and 35 minutes before the `time` value for that row), recorded by the participant\n*   `hr-X:XX` - mean heart rate in beats per minute in the last 5 minutes, X:XX(H:MM) time in the past (e.g. `hr-2:35`, would be the mean heart rate between 2 hours and 40 minutes and 2 hours and 35 minutes before the `time` value for that row), recorded by the smartwatch\n*   `steps-X:XX` - total steps walked in the last 5 minutes, X:XX(H:MM) time in the past (e.g. `steps-2:35`, would be the total steps walked between 2 hours and 40 minutes and 2 hours and 35 minutes before the `time` value for that row), recorded by the smartwatch\n*   `cals-X:XX` - total calories burnt in the last 5 minutes, X:XX(H:MM) time in the past (e.g. `cals-2:35`, would be the total calories burned between 2 hours and 40 minutes and 2 hours and 35 minutes before the `time` value for that row), calculated by the smartwatch\n*   `activity-X:XX` - self-declared activity performed in the last 5 minutes, X:XX(H:MM) time in the past (e.g. `activity-2:35`, would show a string name of the activity performed between 2 hours and 40 minutes and 2 hours and 35 minutes before the `time` value for that row), set on the smartwatch\n*   `bg+1:00` - blood glucose reading in mmol/L an hour in the future, this is the value you will be predicting **(not provided in test.csv)**",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Description",
      "content": "### Type 1 Diabetes\nType 1 diabetes is a chronic condition in which the body no longer produces the hormone insulin and therefore cannot regulate the amount of glucose (sugar) in the bloodstream. Without careful management, this can be life-threatening and so those with the condition need to inject insulin to manage their blood glucose levels themselves. There are many different factors that impact blood glucose levels, including eating, physical activity, stress, illness, sleep, alcohol, and many more, so calculating how much insulin to give is complex. The continuous need to think about how an action may impact blood glucose levels and what to do to counteract it is a significant burden for those with type 1 diabetes.\n\nAn important part of type 1 diabetes management is working out how blood glucose levels are going to change in the future. Algorithms of varying levels of complexity have been developed that perform this prediction but the messy nature of health data and the numerous unmeasured factors mean there is a limit to how effective they can be. This competition aims to build on this work by challenging people to predict future blood glucose on a newly collected dataset.\n\n### The Dataset\nThe data used in this competition is part of a newly collected dataset of real-world data collected from young adults in the UK who have type 1 diabetes. All participants used continuous glucose monitors, and insulin pumps and were given a smartwatch as part of the study to collect activity data. The complete dataset will be published after the competition for research purposes. Some more details about the study can be found in [this blog post](https://jeangoldinginstitute.blogs.bristol.ac.uk/2024/08/19/how-smartwatches-could-help-people-with-type-1-diabetes/).",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Evaluation",
      "content": "Submissions are evaluated on [Root Mean Square Error (RMSE)](https://en.wikipedia.org/wiki/Root_mean_square_deviation) between the predicted blood glucose levels an hour into the future and the actual values that were then collected.\n\nRMSE is defined as\n$$\\text{RMSE} = \\sqrt{\\sum^{n}_{i=1}\\frac{(\\hat{y}_i-y_i)^2}{n}},$$\nwhere \\\\(\\hat{y}_i\\\\) is the \\\\(i\\\\)th predicted value, \\\\(y_i\\\\) is the \\\\(i\\\\)th true value and \\\\(n\\\\) is the number of samples.\n\nThe RMSE value is calculated from the `bg+1:00`(future blood glucose) prediction values in the submission file against the true future blood glucose values. The RMSE values for the public and private leaderboards are calculated from unknown and non-overlapping samples from the submission file across all of the participants.\n\n\n## Submission File\nFor each ID in the test set, you must predict a blood glucose value an hour into the future. The file should contain a header and have the following format:\n\n    id,bg+1:00\n    p01_0,6.3\n    p01_1,6.3\n    p01_2,6.3\n    etc.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "rules",
      "content": "Opening Date: 18th September 2024 at 17:00 UTC. Closing Date: 29th November 2024 at 23:55 UTC. Entries received by the Promoter after the Closing Date will not be accepted. You are responsible for determining the corresponding time zone in your location.\n\n1. The University of Bristol (\"Promoter\") is the promoter of the BrisT1D blood glucose prediction competition (“Competition”), advertised on this Kaggle Competition webpage, https://www.kaggle.com/competitions/brist1d,  (“Competition Website”).\n2. The Competition named above is a skills-based competition to promote and further the field of data science. You must register via the Competition Website to enter. Your competition submissions (\"Submissions\") must conform to the requirements stated on the Competition Website. Your Submissions will be scored based on the evaluation metric described on the Competition Website. Please note that by submitting your entry to the Competition you are agreeing to be bound by the Promoter’s terms and conditions set out below (\"Terms\"). The Competition is only open to participants aged 18 years or over. Employees and agents of the Publisher are permitted to participate in the Competition, however, they are not eligible to win prizes (students at the University of Bristol are eligible for prizes). In entering the Competition entrants confirm that they are eligible to do so and eligible to claim any prize they may win. To enter the Competition, create an account with Kaggle and join the competition at https://www.kaggle.com/competitions/brist1d.\n3. The data available from the Competition Website for the purpose of use in the Competition (\"Competition Data\"), including any prototype or executable code provided on the Competition Website. \n4. You may access and use the Competition Data for competition use only, including for participating in the Competition and on Kaggle.com forums. The Competition Sponsor reserves the right to disqualify any participant who uses the Competition Data other than as permitted by the Competition Website and these Terms.\n5. You agree to use reasonable and suitable measures to prevent persons who have not formally agreed to these Terms from gaining access to the Competition Data. You agree not to transmit, duplicate, publish, redistribute or otherwise provide or make available the Competition Data to any party not participating in the Competition. You agree to notify the Promoter immediately upon learning of any possible unauthorized transmission of or unauthorized access to the Competition Data and agree to work with the Promoter to rectify any unauthorized transmission or access.\n6. You may make Submissions only under one, unique Kaggle.com account. You will be disqualified if you make Submissions through more than one Kaggle account, or attempt to falsify an account to act as your proxy.\n7. Multiple individuals may collaborate as a team (a \"Team\"); however, you may join or form only one Team. Each Team member must be a single individual with a separate Kaggle account. You must register individually for the Competition before joining a Team. You must confirm your Team membership to make it official by responding to the Team notification message sent to your Kaggle account. The maximum team size is 5.\n8. Teams may request to merge via the Competition Website. Team mergers may be allowed provided that: (i) the combined Team does not exceed the maximum team size; (ii) the number of Submissions made by the merging Teams does not exceed the number of Submissions permissible for one Team at the date of the merger request; (iii) the merger is completed before the earlier of any merger deadline or the Competition deadline; and (iv) the proposed combined Team otherwise meets all the requirements of these Terms.\n9. Privately sharing code or data outside of teams is not permitted. It's okay to share code if made available to all participants on the forums.\n10. Team mergers are allowed and can be performed by the team leader. In order to merge, the combined team must have a total Submission count less than or equal to the maximum allowed as of the team merger deadline, stated in the overview tab of the Competition. The maximum allowed is the number of Submissions per day multiplied by the number of days the competition has been running.\n11. You may submit a maximum of 3 entries per day. You may select up to 1 final Submission for judging. \n12. If the Promoter has any reason to believe that an entrant has breached these Terms or that the conduct of the entrant is contrary to the spirit or intention of the Competition, the Promoter reserves the right to disqualify or exclude the entrant from participating in the Competition.\n13. The Promoter reserves the right to hold void, cancel, suspend, or amend the Competition where it becomes necessary to do so.\n14. Entries are free and no purchase is necessary.\n15. The Promoter will not accept entries that are: i) completed by third parties; ii) illegible, have been altered, reconstructed, forged or tampered with; iii) incomplete; or iv) obscene, offensive, threatening, hateful, inflammatory, promotes sexually explicit material, promotes violence, promotes discrimination based on race, sex, religion, nationality, disability, sexual orientation or age, or promotes any illegal activity.\n16. The Promoter accepts no responsibility for entries not successfully completed due to a technical fault of any kind or for any entries which are lost, mislaid, damaged or delayed in transit, whether as a result of postal failure, equipment failure, technical malfunction, systems, satellite, network, server, computer hardware or software of any kind. Proof of posting or transmission will not be accepted as proof of receipt of entry to the Competition.\n17. Each Submission under the Competition will be scored and ranked by the evaluation metric stated on the Competition Website. During the Competition period, the current ranking will be visible on the Competition Website's public leaderboard. The potential winner(s) are determined solely by the leaderboard ranking on the private leaderboard, subject to compliance with these Terms. The public leaderboard will be based on the public test set and the private leaderboard will be based on the private test set. The public and private leaderboard system has been used to stop Submissions from overfitting to the public test set. The public leaderboard will indicate how well the Submission performs relative to other Submissions, while the private leaderboard will allow for evaluation of the Submissions without the risk of unintended knowledge being gained from previous Submissions. In the event of a tie, the Submission that was entered first into the Competition will be the winner. In the event a potential winner is disqualified for any reason, the Submission that received the next highest score rank will be chosen as the potential winner. The Promoter’s decision will be final and no correspondence will be entered into about it.\n18. The participants with the top 5 performing Submissions, according to the leaderboard ranking of the private leaderboard, who deliver the final model’s software code and associated documentation will be awarded prizes ('Prizes'). The prizes are in the form of Love2Shop Global Rewards electronic voucher codes for the following amounts:\n1st Prize: £600\n2nd Prize: £400\n3rd Prize: £300\n4th Prize: £200\n5th Prize: £100\nDetails of what electronic voucher codes can be used for in different countries can be found on the Love2Shop website (https://business.love2shop.co.uk/rewards/global-rewards/) and their terms of use at https://app.g.codes/terms-of-use.\n19. Prizes are subject to availability and the Promoter reserves the right to substitute the Prize with a prize of equal or greater value if circumstances beyond the Promoter’s control make this necessary. There is no cash alternative for the Prize. Details of claiming Prizes can be found at the end of the Terms.\n20. If the winner does not claim the Prize strictly in accordance with these Terms, then the Prize will be forfeited and the Promoter reserves the right to offer the Prize to another winner selected in accordance with the process described above. The Promoter does not accept any responsibility if a winner is not able to take up the Prize.\n21. The Promoter shall not be responsible for any expenses incurred by a Prize winner in relation to claiming, receiving or collecting the Prize. \n22. The Promoter will either publish or make available information that indicates that a valid award took place. In claiming the Prize the winner consents to his/her/their name, surname,  and winning entry to be published on the communication channel used by the Promoter to run the Competition. To object to his/her/their name, surname and/or winning entry being published in this way, the winner must communicate this to the Promoter when claiming the Prize. The Promoter will still have the right to provide such information to the Advertising Standards Authority (UK) on request.\n23. When collecting the Prize, the winner may agree to give consent for the Promoter to use the winner's details for display on the Promoter’s website, emails, prints or otherwise as part of any future social media posts or other marketing materials relating to Promoter’s promotions.\n24. The Competition is not sponsored by Kaggle. Entrants will be bound by the terms of service of Kaggle, as the platform provider, when entering the Competition published on their site.\n25. You acknowledge and agree that Kaggle may collect, store, share and otherwise use personally identifiable information provided by you during the Kaggle account registration process and the administering of the Competition, including but not limited to, name, mailing address, phone number, and email address (“Personal Information”). Kaggle acts as an independent controller with regard to its collection, storage, sharing, and other use of this Personal Information, and Kaggle is responsible for processing the Personal Information in accordance with its Privacy Policy <www.kaggle.com/privacy>.\n26. Insofar as is permitted by law, the Promoter will not in any circumstances be responsible or liable to compensate the winner or accept any liability for any loss, damage, personal injury or death occurring as a result of taking up a Prize except where it is caused by the negligence of the Promoter. The statutory rights of the winner are not affected.\n27. Any personal data that entrants share with the Promoter under a Competition will only be processed by the Promoter for the purpose of this Competition, and in accordance with the Promoter's Data Protection Policy at www.bristol.ac.uk/secretary/data-protection/policy/ the UK GDPR and the Data Protection Act 2018.\n28. “Working Days” are defined for the purpose of these Terms as: “any days other than Promoter closure days and bank holidays in England”. \n29. These Terms are governed by the laws of England and Wales. If any entrants to the Competition wish to take court proceedings, then they must do this within the courts in the United Kingdom. \n\n### Claiming Prizes\n- To find out if you are a winner, the private leaderboard will be released within 7 Working Days of the end of the competition on Kaggle.com. The five highest performing entries according to the leaderboard will be eligible for the Prizes. Submissions will be scored and ranked according to the evaluation metric stated on the Competition Website. During the Competition Period, the current ranking will be visible on the Competition Website's public leaderboard. The potential winner(s) are determined solely by the leaderboard ranking on the private leaderboard, subject to compliance with these Terms. The public leaderboard will be based on the public test set and the private leaderboard will be based on the private test set. You will be contacted via email if you are eligible for a Prize.\n- If you are a Prize winner, to claim your Prize, you must respond to the winning notification email within seven Working Days of its sent date and fulfil the following obligations (“Prize Claiming Requirements”):\n  - Deliver to the Promoter the final model's software code as used to generate the winning Submission and associated documentation. The delivered software code should follow these documentation guidelines (https://www.kaggle.com/WinningModelDocumentationGuidelines) and must be capable of generating the winning Submission, and contain a description of resources required to build and/or run the executable code successfully. If the final model’s software code includes generally commercially available software that is not owned by you, but that can be procured by the Promoter without undue expense, then instead of delivering the code for that software to the Promoter, you must identify that software, method for procuring it, and any parameters or other information necessary to replicate the winning Submission;\n  - Grant to the Promoter the license to the winning Submission stated  below, and represent that you have the unrestricted right to grant that license; and\n  - Sign and return all Prize acceptance documents as may be required by the Competition Sponsor.\nWinners must return all required Prize acceptance documents within fourteen Working Days following notification of such required documents, or such winner will be deemed to have forfeited the Prize and another winner will be selected.\n- Winner License: Non-Exclusive. You hereby grant and will grant to Competition Sponsor and its designees a worldwide, non-exclusive, sub-licensable, transferable, fully paid-up, royalty-free, perpetual, irrevocable right to use, reproduce, distribute, create derivative works of, publicly perform, publicly display, digitally perform, make, have made, sell, offer for sale and import your winning Submission and the source code used to generate the Submission, in any media now known or developed in the future, for any purpose whatsoever, commercial or otherwise, without further approval by or payment to you. To the extent your Submission makes use of generally commercially available software not owned by you that you used to generate your Submission, but that can be procured by the Competition Sponsor without undue expense, you do not grant the license in the preceding sentence to that software.\n- To receive your Prize, you will be sent an email with the reward codes and instructions on how to redeem them by the Promoter within 30 Working Days after receipt of the required Prize acceptance documents, subject to verification by the Promoter of compliance with the Prize Claiming Requirements. All taxes imposed on Prizes are the sole responsibility of the winners.\n\n\n\n\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "abstract",
      "content": "Predicting blood glucose fluctuations is crucial for managing type 1 diabetes. Developing effective algorithms for this can alleviate some of the challenges faced by individuals with the condition.\n\n**Goal:** Forecast blood glucose levels one hour ahead using the previous six hours of participant data.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Prizes",
      "content": "Prizes will be awarded to the five top performing participants (according to the leaderboard ranking of the private leaderboard), who deliver the final model’s software code and associated documentation. The prizes comprise of five Love2Shop Global Rewards electronic voucher codes for the following amounts:\n1st Prize: £600\n2nd Prize: £400\n3rd Prize: £300\n4th Prize: £200\n5th Prize: £100\nDetails of what electronic voucher codes can be used for in different countries can be found at on the Love2Shop website (https://business.love2shop.co.uk/rewards/global-rewards/) and their terms of use at https://app.g.codes/terms-of-use.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Timeline",
      "content": "- **Opening Date:** 18th September 2024 at 17:00 UTC. \n- **Final Submission Deadline:** 29th November 2024 at 23:55 UTC",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}