Олар Америка Құрама Штаттары арқылы ең тиімді жол жүру картасын жасайды

Anonim

Олар Америка Құрама Штаттары арқылы ең тиімді жол жүру картасын жасайды

8 1/2 күнде 48 штаттың капитолиясы

Олсон оның кейінгі есептеулерін анықтайтын бірқатар үй-жайларды құрды. Біріншіден, мақсат қалаларды аралау емес, бірақ мүмкіндігінше көп штат капитолдары . Екінші орында, тек көлікпен жүретін еді , бұл Алясканы маршруттан тыс қалдырады, оның қашықтығына байланысты және Гавайи, ұшақпен жүру қажеттілігіне байланысты, маршрутты іргелес 48 штатқа шектейді. Үшінші және соңғы, Басқа елдер арқылы өтуді талап ететін маршруттар жоққа шығарылады кез келген саяхатты бәсеңдететін паспорттар мен шекаралық бақылауларды болдырмау үшін, деп түсіндіреді Рандаль С. Олсон өзінің веб-сайтында.

Осыны ескере отырып, зерттеуші генетикалық алгоритмдердің, Google Maps және Pareto көп мақсатты оңтайландырудың комбинациясын пайдаланды. , немесе сол сияқты, Америка Құрама Штаттары арқылы саяхатта кемелдік тапты 8 жарым күнде 21 420 км жол жүретін 48 штаттың капитолына барыңыз . Әрине, көлік қозғалысы болмағанша. Сонымен қатар, ол соңғы нәтижені өзгертпестен сапарды маршруттың кез келген нүктесінен бастауға болатынын анықтады.

Қалай болды? Капитолийлердің тізімі қолында болғандықтан, Олсон осы ғимараттар арасындағы түзу сызықпен емес, жол арқылы нақты қашықтықты анықтауы керек болды. Бұл үшін ол 2256 мүмкін маршруттардағы қашықтықты есептеген Google Maps API-ге жүгінді.

Маршруттарды есептегеннен кейін, келесі нәрсе олардың тіркесімі ең аз жол жүруге болатын километр санына әкелетіндей етіп тапсырыс беру болды. Генетикалық алгоритмде жауап болды. Оның қызығушылығы барлық ықтимал нұсқаларды іздеудің орнына, кездейсоқ шешімдерді қамтамасыз етеді, әрқашан басқа нәрсені сынап көреді және жақсысын таба алмағанға дейін ең жақсы ұсыныстарды сақтайды.

Мұның бәрі біріктірілді Парето көп мақсатты оңтайландыруды қолдану , бұл бір уақытта бірнеше критерийлерді оңтайландыруға мүмкіндік береді. Бұл жағдайда қолында, ол баратын мемлекеттердің санын барынша көбейтіп, мұны істеу үшін қажетті уақытты азайтады.

Ары қарай оқу