Find vej

AI brugt til at finde den korteste vej rundt på skolen.

Billedresultat for path finding algorithm

I forbindelse med en workshop med deltagelse af elever fra Skotland var emnet AI – kunstig intelligens og at bruge den aktivt i elevernes egen software.

Det inspirerede en af vores danske elever – Patrick Bruun, til at prøve kræfter med en stifinder algoritme til at finde den korteste vej mellem 2 placeringer på skolen. Dermed kunne personer skrive start og slut lokale og få softwaren til at vise den korteste vej.

Patrick gik igang med at finde den mest egnede algoritme som kunne bruges som grundlag for stifinderen.

Med hjælp fra Mediegrafikerne til at lave en kort over skolens lokaler og andre elevers hjælp til at plotte noder ind på kortet gik Patrick igang med at få algoritmen til at virke. Mange hovedbrud efter lykkedes det at få softwaren til at vise vejen fra A-B.

Se softwaren på findvej.skpdatait.dk

Se mere om stifinder algoritmer

Toggle Console (0)
No entries found.
Profiler (0 ms)
No entries found.
SQL (40 queries | 28.23 ms)
2.1188
SELECT name, val 
FROM www_wfconfig 
WHERE autoload = 'yes'
0.7429
SELECT `name`, `value` 
FROM `www_wfls_settings` 
WHERE `autoload` = 'yes'
0.5260
SELECT name, val, autoload 
FROM www_wfconfig 
WHERE name = 'detectProxyRecommendation'
1.2949
SHOW FULL COLUMNS 
FROM `www_wfblocks7`
0.6201
SELECT * 
FROM `www_wfblocks7` 
WHERE `IP` = '\0\0\0\0\0\0\0\0\0\0D' 
AND `type` = 7 
AND (`expiration` = 0 OR `expiration` > UNIX_TIMESTAMP())
0.2880
SELECT name, val, autoload 
FROM www_wfconfig 
WHERE name = 'wordfenceCentralConnected'
0.5410
SELECT option_value 
FROM www_options 
WHERE option_name = 'acm_server_settings' 
LIMIT 1
0.4351
SELECT name, val, autoload 
FROM www_wfconfig 
WHERE name = 'needsGeoIPSync'
0.5000
SELECT name, val, autoload 
FROM www_wfconfig 
WHERE name = 'detectProxyRecommendation'
0.5770
SELECT MAX(attackLogTime) 
FROM www_wfhits
0.3700
SELECT option_value 
FROM www_options 
WHERE option_name = 'wordfence_lastSyncAttackData' 
LIMIT 1
0.8070
SELECT *, CASE WHEN `type` = 3 THEN 0 WHEN `type` = 4 THEN 1 WHEN `type` = 7 THEN 2 WHEN `type` = 6 THEN 3 WHEN `type` = 5 THEN 4 WHEN `type` = 9 THEN 5 WHEN `type` = 8 THEN 6 WHEN `type` = 2 THEN 7 WHEN `type` = 1 THEN 8 ELSE 9999 END AS `typeSort`, CASE WHEN `type` = 3 THEN `parameters` WHEN `type` = 4 THEN `parameters` WHEN `type` = 1 THEN `IP` WHEN `type` = 9 THEN `IP` WHEN `type` = 5 THEN `IP` WHEN `type` = 6 THEN `IP` WHEN `type` = 7 THEN `IP` WHEN `type` = 2 THEN `IP` WHEN `type` = 8 THEN `IP` ELSE 9999 END AS `detailSort` 
FROM `www_wfblocks7` 
WHERE `type` IN (4) 
AND (`expiration` = 0 OR `expiration` > UNIX_TIMESTAMP()) 
ORDER BY `typeSort` ASC, `id` DESC
0.5579
SELECT *, CASE WHEN `type` = 3 THEN 0 WHEN `type` = 4 THEN 1 WHEN `type` = 7 THEN 2 WHEN `type` = 6 THEN 3 WHEN `type` = 5 THEN 4 WHEN `type` = 9 THEN 5 WHEN `type` = 8 THEN 6 WHEN `type` = 2 THEN 7 WHEN `type` = 1 THEN 8 ELSE 9999 END AS `typeSort`, CASE WHEN `type` = 3 THEN `parameters` WHEN `type` = 4 THEN `parameters` WHEN `type` = 1 THEN `IP` WHEN `type` = 9 THEN `IP` WHEN `type` = 5 THEN `IP` WHEN `type` = 6 THEN `IP` WHEN `type` = 7 THEN `IP` WHEN `type` = 2 THEN `IP` WHEN `type` = 8 THEN `IP` ELSE 9999 END AS `detailSort` 
FROM `www_wfblocks7` 
WHERE `type` IN (3) 
AND (`expiration` = 0 OR `expiration` > UNIX_TIMESTAMP()) 
ORDER BY `typeSort` ASC, `id` DESC
0.4768
SELECT * 
FROM `www_wfblocks7` 
WHERE `type` IN (1, 8, 9, 2, 5, 6) 
AND `IP` = '\0\0\0\0\0\0\0\0\0\0D' 
AND (`expiration` = 0 OR `expiration` > UNIX_TIMESTAMP()) 
ORDER BY `blockedTime` DESC 
LIMIT 1
0.5479
SELECT option_value 
FROM www_options 
WHERE option_name = 'can_compress_scripts' 
LIMIT 1
0.3991
SELECT option_value 
FROM www_options 
WHERE option_name = 'ure_role_additional_options_values' 
LIMIT 1
1.2629
SHOW FULL COLUMNS 
FROM `www_wflivetraffichuman`
0.3850
SELECT COUNT(*) 
FROM www_wflivetraffichuman 
WHERE IP = '\0\0\0\0\0\0\0\0\0\0D' 
AND identifier = 'F	V\nV|!' 
AND expiration >= UNIX_TIMESTAMP()
0.9789
SELECT t.*, tt.* 
FROM www_terms AS t 
INNER JOIN www_term_taxonomy AS tt ON t.term_id = tt.term_id 
WHERE tt.taxonomy IN ('post_tag') 
AND t.slug IN ('programmoer')
0.6490
SELECT t.*, tt.* 
FROM www_terms AS t 
INNER JOIN www_term_taxonomy AS tt ON t.term_id = tt.term_id 
WHERE tt.taxonomy IN ('post_tag') 
AND t.slug = 'programmoer' 
LIMIT 1
0.8090
SELECT SQL_CALC_FOUND_ROWS www_posts.ID 
FROM www_posts LEFT JOIN www_term_relationships ON (www_posts.ID = www_term_relationships.object_id) 
WHERE 1=1 
AND ( www_term_relationships.term_taxonomy_id IN (17) ) 
AND www_posts.post_type = 'post' 
AND (www_posts.post_status = 'publish') 
GROUP BY www_posts.ID 
ORDER BY www_posts.post_date DESC 
LIMIT 0, 4
0.1719
SELECT FOUND_ROWS()
0.3390
SELECT www_posts.* 
FROM www_posts 
WHERE ID IN (267)
1.3011
SELECT t.*, tt.*, tr.object_id 
FROM www_terms AS t 
INNER JOIN www_term_taxonomy AS tt ON t.term_id = tt.term_id 
INNER JOIN www_term_relationships AS tr ON tr.term_taxonomy_id = tt.term_taxonomy_id 
WHERE tt.taxonomy IN ('category', 'post_tag', 'post_format') 
AND tr.object_id IN (267) 
ORDER BY t.name ASC
0.4740
SELECT post_id, meta_key, meta_value 
FROM www_postmeta 
WHERE post_id IN (267) 
ORDER BY meta_id ASC
0.5410
SELECT COUNT(*) 
FROM www_wflivetraffichuman 
WHERE IP = '\0\0\0\0\0\0\0\0\0\0D' 
AND identifier = 'F	V\nV|!' 
AND expiration >= UNIX_TIMESTAMP()
0.5121
SELECT * 
FROM www_users 
WHERE ID = '2' 
LIMIT 1
0.8521
SELECT user_id, meta_key, meta_value 
FROM www_usermeta 
WHERE user_id IN (2) 
ORDER BY umeta_id ASC
1.0049
SELECT * 
FROM `www_yoast_indexable` 
WHERE `object_id` = '17' 
AND `object_type` = 'term' 
LIMIT 1
0.7372
SELECT * 
FROM `www_yoast_indexable` 
WHERE `object_type` = 'home-page' 
LIMIT 1
0.6449
SELECT `ancestor_id` 
FROM `www_yoast_indexable_hierarchy` 
WHERE `indexable_id` = '174' 
ORDER BY `depth` DESC
0.3910
SELECT option_value 
FROM www_options 
WHERE option_name = 'https_migration_required' 
LIMIT 1
0.4251
SELECT t.*, tt.* 
FROM www_terms AS t 
INNER JOIN www_term_taxonomy AS tt ON t.term_id = tt.term_id 
WHERE t.term_id = 15
0.4048
SELECT tr.object_id 
FROM www_term_relationships AS tr 
INNER JOIN www_term_taxonomy AS tt ON tr.term_taxonomy_id = tt.term_taxonomy_id 
WHERE tt.taxonomy IN ('nav_menu') 
AND tt.term_id IN ('15') 
ORDER BY tr.object_id ASC
0.8960
SELECT www_posts.* 
FROM www_posts 
WHERE 1=1 
AND www_posts.ID IN (310,311,312,313,314,399,1162,1163,1185,1482,1633,1634) 
AND www_posts.post_type = 'nav_menu_item' 
AND ((www_posts.post_status = 'publish')) 
ORDER BY www_posts.menu_order ASC
2.0080
SELECT post_id, meta_key, meta_value 
FROM www_postmeta 
WHERE post_id IN (310,1163,311,312,313,314,1185,1162,399,1634,1633,1482) 
ORDER BY meta_id ASC
0.7639
SELECT www_posts.* 
FROM www_posts 
WHERE 1=1 
AND www_posts.ID IN (290,292,295,297,1183,76,1620,1628,1470) 
AND www_posts.post_type = 'page' 
AND ((www_posts.post_status = 'publish')) 
ORDER BY www_posts.post_date DESC
0.6859
SELECT post_id, meta_key, meta_value 
FROM www_postmeta 
WHERE post_id IN (1628,1620,1470,1183,297,295,292,290,76) 
ORDER BY meta_id ASC
0.8080
SELECT www_posts.* 
FROM www_posts 
WHERE 1=1 
AND www_posts.post_name = '8084904690680b31bb6469de08af0b35' 
AND www_posts.post_type = 'oembed_cache' 
AND ((www_posts.post_status = 'publish')) 
ORDER BY www_posts.post_date DESC
0.3860
SELECT post_id, meta_key, meta_value 
FROM www_postmeta 
WHERE post_id IN (486) 
ORDER BY meta_id ASC
Templates
[0] => themes/busiprof/theme_setup_data.php
[1] => themes/busiprof/child_theme_compatible.php
[2] => themes/busiprof/functions/menu/busiprof_nav_walker.php
[3] => themes/busiprof/functions/menu/default_menu_walker.php
[4] => themes/busiprof/functions/woo/woocommerce.php
[5] => themes/busiprof/functions/font/font.php
[6] => themes/busiprof/functions/breadcrumbs/breadcrumbs.php
[7] => themes/busiprof/functions/scripts/script.php
[8] => themes/busiprof/functions/widgets/custom-widgets.php
[9] => themes/busiprof/functions/commentbox/comment-function.php
[10] => themes/busiprof/functions/customizer/customizer-pro-feature.php
[11] => themes/busiprof/functions/customizer/custo_general_settings.php
[12] => themes/busiprof/functions/customizer/custo_sections_settings.php
[13] => themes/busiprof/functions/customizer/customizer-archive.php
[14] => themes/busiprof/functions/customizer/customizer_recommended_plugin.php
[15] => themes/busiprof/functions/customizer-notify/busiprof-customizer-notify.php
[16] => themes/busiprof/functions/class-tgm-plugin-activation.php
[17] => themes/busiprof/tag.php
[18] => themes/busiprof/header.php
[19] => themes/busiprof/content.php
[20] => themes/busiprof/sidebar.php
[21] => themes/busiprof/footer.php
Globals
$_GET = array (
);

$_POST = array (
);

$_COOKIE = array (
);

$_SESSION = array (
);

$_SERVER = array (
  'SERVER_SOFTWARE' => 'Apache',
  'REQUEST_URI' => '/tag/programmoer/',
  'ONECOM_DOMAIN_NAME' => 'ats-skpdatait.dk',
  'ONECOM_DOMAIN_ROOT' => '/customers/b/3/2/ats-skpdatait.dk/',
  'ONECOM_MEMORYLIMIT' => '2684354560',
  'ONECOM_CPU_SHARES' => '4096',
  'ONECOM_EXEC' => 'latest',
  'ONECOM_DIR_LAYOUT_VER' => '0',
  'CONTENT_LENGTH' => '0',
  'HTTP_CONNECTION' => 'close',
  'SCRIPT_NAME' => '/index.php',
  'QUERY_STRING' => '',
  'REQUEST_METHOD' => 'GET',
  'SERVER_PROTOCOL' => 'HTTP/1.1',
  'GATEWAY_INTERFACE' => 'CGI/1.1',
  'REDIRECT_URL' => '/tag/programmoer/',
  'REMOTE_PORT' => '38306',
  'SCRIPT_FILENAME' => '/customers/b/3/2/ats-skpdatait.dk/httpd.www/index.php',
  'SERVER_ADMIN' => 'support@one.com',
  'CONTEXT_DOCUMENT_ROOT' => '/var/www',
  'CONTEXT_PREFIX' => '',
  'REQUEST_SCHEME' => 'https',
  'REMOTE_ADDR' => '3.229.137.68',
  'SERVER_PORT' => '80',
  'SERVER_ADDR' => '10.27.3.13',
  'SERVER_NAME' => 'www.ats-skpdatait.dk',
  'SERVER_SIGNATURE' => '',
  'PATH' => '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin',
  'HTTP_X_VARNISH' => '1060246549',
  'HTTP_ACCEPT_ENCODING' => 'gzip',
  'HTTP_X_ONECOM_HOST' => 'ats-skpdatait.dk',
  'HTTP_X_ONECOM_BRAND' => 'one.com',
  'HTTP_X_FORWARDED_PROTO' => 'https',
  'HTTP_X_ONECOM_FORWARDED_PROTO' => 'https',
  'HTTP_X_FORWARDED_FOR' => '3.229.137.68',
  'HTTP_HOST' => 'www.ats-skpdatait.dk',
  'HTTP_ACCEPT_LANGUAGE' => 'en-US,en;q=0.5',
  'HTTP_ACCEPT' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
  'HTTP_USER_AGENT' => 'CCBot/2.0 (https://commoncrawl.org/faq/)',
  'ENV_VCV_ENV_ADDONS_ID' => 'one.com',
  'ENV_VCV_TOKEN_URL' => 'https://wpapi.one.com/api/v1.0/plugins/visualcomposer/activate',
  'ONECOM_ONE_PHOTO_URL' => 'https://onephoto.one.com/domain_discover',
  'ONECOM_WP_ADDONS_API' => 'https://wpapi.one.com',
  'ONECOM_WEBSHOP_HOST' => 'webshop1.cst.webpod11-cph3.one.com',
  'HTTP_AUTHORIZATION' => '',
  'HTTPS' => 'on',
  'ONECOM_TMPDIR' => '/customers/b/3/2/ats-skpdatait.dk//tmp',
  'DOMAIN_NAME' => 'ats-skpdatait.dk',
  'ONECOM_DOCUMENT_ROOT' => '/customers/b/3/2/ats-skpdatait.dk/httpd.www',
  'DOCUMENT_ROOT' => '/customers/b/3/2/ats-skpdatait.dk/httpd.www',
  'REDIRECT_STATUS' => '200',
  'REDIRECT_ENV_VCV_ENV_ADDONS_ID' => 'one.com',
  'REDIRECT_ENV_VCV_TOKEN_URL' => 'https://wpapi.one.com/api/v1.0/plugins/visualcomposer/activate',
  'REDIRECT_ONECOM_ONE_PHOTO_URL' => 'https://onephoto.one.com/domain_discover',
  'REDIRECT_ONECOM_WP_ADDONS_API' => 'https://wpapi.one.com',
  'REDIRECT_ONECOM_WEBSHOP_HOST' => 'webshop1.cst.webpod11-cph3.one.com',
  'REDIRECT_HTTP_AUTHORIZATION' => '',
  'REDIRECT_HTTPS' => 'on',
  'REDIRECT_ONECOM_CPU_SHARES' => '4096',
  'REDIRECT_ONECOM_MEMORYLIMIT' => '2684354560',
  'REDIRECT_ONECOM_EXEC' => 'latest',
  'REDIRECT_ONECOM_DIR_LAYOUT_VER' => '0',
  'REDIRECT_ONECOM_TMPDIR' => '/customers/b/3/2/ats-skpdatait.dk//tmp',
  'REDIRECT_ONECOM_DOMAIN_ROOT' => '/customers/b/3/2/ats-skpdatait.dk/',
  'REDIRECT_ONECOM_DOMAIN_NAME' => 'ats-skpdatait.dk',
  'REDIRECT_DOMAIN_NAME' => 'ats-skpdatait.dk',
  'REDIRECT_ONECOM_DOCUMENT_ROOT' => '/customers/b/3/2/ats-skpdatait.dk/httpd.www',
  'REDIRECT_DOCUMENT_ROOT' => '/customers/b/3/2/ats-skpdatait.dk/httpd.www',
  'FCGI_ROLE' => 'RESPONDER',
  'PHP_SELF' => '/index.php',
  'REQUEST_TIME_FLOAT' => 1627273466.5302469730377197265625,
  'REQUEST_TIME' => 1627273466,
  'ONECOM_CLIENT_IP' => '3.229.137.68',
);

Close