Error message

  • Deprecated function: Return type of Aws\HandlerList::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 32 of /var/www/html/vendor/aws/aws-sdk-php/src/HandlerList.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Api\AbstractModel::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Api/AbstractModel.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of & Aws\Endpoint\Partition::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Return type of Aws\Endpoint\Partition::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 13 of /var/www/html/vendor/aws/aws-sdk-php/src/Endpoint/Partition.php).
  • Deprecated function: Aws\Credentials\Credentials implements the Serializable interface, which is deprecated. Implement __serialize() and __unserialize() instead (or in addition, if support for old PHP versions is necessary) in include() (line 8 of /var/www/html/vendor/aws/aws-sdk-php/src/Credentials/Credentials.php).
  • Deprecated function: Return type of Aws\Command::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of & Aws\Command::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Command::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 7 of /var/www/html/vendor/aws/aws-sdk-php/src/Command.php).
  • Deprecated function: Return type of Aws\Result::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of & Aws\Result::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Deprecated function: Return type of Aws\Result::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in include() (line 9 of /var/www/html/vendor/aws/aws-sdk-php/src/Result.php).
  • Warning: Undefined array key "nid" in views_handler_field_term_node_tid->pre_render() (line 98 of /var/www/html/docroot/sites/all/modules/views/modules/taxonomy/views_handler_field_term_node_tid.inc).
  • Warning: Undefined array key "nid" in views_handler_field_term_node_tid->pre_render() (line 98 of /var/www/html/docroot/sites/all/modules/views/modules/taxonomy/views_handler_field_term_node_tid.inc).
×

Entertainment

The18 Tried To Predict Euro Games Better Than A Computer-Generated Prediction Algorithm — Here’s How We Did

The18’s renowned data scientist introduced the team to an API (application programming interface) that gave predictions for games in the European Championship. We naturally took that as a challenge to see if we could predict the outcomes of games better than the algorithm. We’ll show the results from the Round of 16 before sharing our Euro 2020 quarterfinal predictions.

Five of our staff, including Grant the data scientist, took the challenge to outsmart the algorithm. After eight games in the Round of 16, this is what the leaderboard looks like.

1. Connor (Staff Writer): 6/8 (75% correct)
2. Algorithm: 5/8 (62.5% correct)
3. Grant (Data Scientist): 4/8 (50% correct)
3. Travis (Staff Writer): 4/8 (50% correct)
5. Mariel (Videographer): 3/8 (37.5% correct)
5. David (Staff Writer): 3/8 (37.5% correct)

You can see all our Round of 16 predictions at the bottom of the page or by clicking here. A wild Round of 16 did quite the number on our predictions. Here was everyone’s reaction to how their predictions held up.

Reactions To Prediction Results

Connor: *We were unable to get a comment from Connor as he was busy researching the quarterfinal games to keep his prediction lead intact*

Algorithm: “01110011 01110101 01100011 01101011 00100000 01110100 01101000 01100101 01110011 01100101 00100000 01100100 01101001 01100111 01101001 01110100 01100001 01101100 00100000 01101110 01110101 01110100 01110011 00100000 01101100 01101111 01110011 01100101 01110010 01110011 00001010.”

Grant: “I'll tell my children about my 4-0 Denmark prediction.“

Travis: “Maybe I need to dye my hair blonde to channel Granit Xhaka's will to win so I can make more accurate predictions."

Mariel: “Tell me I’ve never watched soccer without telling me I’ve never watched soccer. I actually did watch and still ended up like this.”

David: “I constantly see comments on Facebook telling me that I don’t know shit about this sport. I’m starting to think they might be on to something.”

The18 will take another stab at the predictions for the quarterfinals. Here are our Euro 2020 quarterfinal predictions.

The18’s Euro 2020 Quarterfinal Predictions

Belgium vs. Italy (July 2)

  • Algorithm: Italy 3-2 Belgium
  • Travis: Italy 1-0
  • Connor: Belgium 2-2 Italy (Belgium on PKs)
  • David: Italy 2-1 Belgium
  • Grant: Belgium 1-0 Italy
  • Mariel: Belgium 3-2 Italy

Switzerland vs. Spain (July 2)

  • Algorithm: Spain 3-2 Switzerland
  • Travis: Switzerland 0-0 Spain (Switzerland on PKs)
  • Connor: Spain 1-0 Switzerland 
  • David: Spain 3-1 Switzerland
  • Grant: Spain 2-1 Switzerland
  • Mariel: Switzerland 1-1 Spain (Spain on PKs)

Denmark vs. Czech Republic (July 3)

  • Algorithm: Denmark 2-1 Czech Republic
  • Travis: Denmark 1-1 Czech Republic (Denmark on PKs)
  • Connor: Denmark 3-2 Czech Republic 
  • David: Czech Republic 2-1 Denmark
  • Grant: Denmark 4-0 Czech Republic
  • Mariel: Denmark 2-1 Czech Republic

England vs. Ukraine (July 3)

  • Algorithm: England 2-1 Ukraine
  • Travis: England 1-0 Ukraine
  • Connor: England 3-1 Ukraine 
  • David: England 3-0 Ukraine
  • Grant: England 1-0 Ukraine
  • Mariel: England 1-0 Ukraine

Connor and the algorithm agreed on every game except for the Belgium vs. Italy matchup. A Belgian victory will see Connor extend his lead and an Italian triumph will tie the algorithm and Connor.

Other notable risky picks include Travis picking Switzerland to upset Spain and David thinking the Czech Republic will ruin Denmark’s fairy tale run. Grant seems certain that Denmark will score four goals for a third game in a row.

Now here are our Euro 2020 Round of 16 predictions so you can see just how right (or wrong) we were.

The18’s Ill-Fated Euro 2020 Round Of 16 Predictions

Wales vs. Denmark (Actual Result: Denmark 4-0 Wales)

  • Algorithm: Denmark 2-1 Wales
  • Travis: Denmark 1-0 Wales
  • Connor: Denmark 0-0 Wales Denmark wins on PKs
  • David: Denmark 2-0 Wales
  • Grant: Denmark 4-0 Wales
  • Mariel: Denmark 2-2 on PKs

Italy vs. Austria (Actual Result: Italy 2-1 Austria)

  • Algorithm: Italy 4-1 Austria
  • Travis: Italy 3-1 Austria
  • Connor: Italy 1-0 Austria 
  • David: Italy 2-0 Austria
  • Grant: Italy 3-0 Austria 
  • Mariel: Italy 2-0 Austria

Netherlands vs. Czech Republic (Actual Result: Czech Republic 2-0 Netherlands)

  • Algorithm: Netherlands 3-1 Czech Republic
  • Travis: Netherlands 3-0 Czech Republic
  • Connor: Czech Republic 2-1 Netherlands  
  • David: Netherlands 3-1 Czech Republic
  • Grant: Netherlands 2-0 Czech Republic
  • Mariel: Netherlands 2-1 Czech Republic

Belgium vs. Portugal (Actual Result: Belgium 1-0 Portugal)

  • Algorithm: Belgium 4-2 Portugal
  • Travis: Belgium 2-1 Portugal
  • Connor: Belgium 3-2 Portugal
  • David: Portugal 2-1 Belgium (Ronaldo masterclass) 
  • Grant: Portugal 2-1 Belgium 
  • Mariel: Belgium 3-1 Portugal

Croatia vs. Spain (Actual Result: Spain 5-3 Croatia)

  • Algorithm: Spain 3-2 Croatia
  • Travis: Spain 1-0 Croatia
  • Connor: Spain 2-1 Croatia 
  • David: Croatia 1-0 Spain
  • Grant: Croatia 2-1 Spain 
  • Mariel: Croatia 2-0 Spain

France vs. Switzerland (Actual Result: France 3-3 Switzerland wins on penalties 5-3)

  • Algorithm: France 2-1 Switzerland
  • Travis: France 3-1 Switzerland
  • Connor: France 4-0 Switzerland 
  • David: France 2-0 Switzerland
  • Grant: France 1-0 Switzerland
  • Mariel: France 3-1 Switzerland

England vs. Germany (Actual Result: England 2-0 Germany)

  • Algorithm: England 3-2 Germany
  • Travis: Germany 3-2 England
  • Connor: Germany 1-1 England wins on PKs!!!
  • David: England 2-1 Germany
  • Grant: England 3-1 Germany 
  • Mariel: Germany 2-0 England

Sweden vs. Ukraine (Actual Result: Ukraine 2-1 Sweden)

  • Algorithm: Sweden 2-1 Ukraine
  • Travis: Sweden 1-0 Ukraine
  • Connor: Sweden 2-0 Ukraine 
  • David: Sweden 3-1 Ukraine
  • Grant: Ukraine 1-0 Sweden
  • Mariel: Sweden 3-2 Ukraine

Videos you might like