AMcoder - javascript, python, java, html, php, sql

Անսպասելի վարքագիծ AnyLogic-ի շարունակական տարածության մեջ մի գործակալ տեղափոխելիս

Մոդելում ես հիվանդներ եմ տեղափոխում հիվանդանոցներ: Այս գործակալները ապրում են շարունակական տարածության մեջ: Ավելի կոնկրետ՝ դրանք տեղադրվում են պոլիգծերում։ Հիվանդների սկզբնական պոպուլյացիան զրոյական է, բայց իրադարձությունը անընդհատ նոր հիվանդներ է առաջացնում: Հիվանդանոցներն ունեն նախնական 10 բնակչություն, և դրանից հետո նորություն չի առաջանում: Այն, ինչին ես ուզում եմ հասնել այն է, որ նոր հիվանդ ստեղծելու պահին նա ընտրում է հիվանդին ամենամոտ գտնվող հիվանդանոցը և այդ հիվանդանոցը սահմանում է որպես myHospital պարամետրով:

Մոտակա հիվանդանոցն ընտրելու համար ես փորձել եմ ստեղծել ֆունկցիա Patient-ում և օգտագործել myHospital-ը պետական ​​աղյուսակում, որպեսզի հիվանդը տեղափոխվի myHospital.

Hospital myHospital = this.getNearestAgent(main.hospitals);
return myHospital;

Մինչ այժմ բոլոր հիվանդներն ընտրել են նույն հիվանդանոցը, ինչ մոտակա հիվանդանոցը, ինչը սխալ է, հատկապես հաշվի առնելով, որ ես կարող եմ ստուգել հիվանդի X և Y կոորդինատները:

Ի՞նչ մոտեցում կլուծի այս խնդիրը։

21.12.2018

Պատասխանները:


1

Հնարավոր է, որ երբ զանգում եք ֆունկցիան մոտակա հիվանդանոց ստանալու համար, ձեր գործակալները դեռ գտնվում են x=0 y=0-ում, այնպես որ դուք կստանաք այդ կետին ամենամոտ հիվանդանոցը:

Հաջորդը, որով դուք պետք է անեք բաներ ձեր միջոցառման ժամանակ, հետևյալն է.

Patient p=add_patients(); //generate a patient
p.setXY(uniform(0,500),uniform(0,500)); //define your patient initial position FIRST
p.hospital=p.getHospital();// or just do p.getNearestAgent(hospitals);
p.moveTo(p.hospital); //

Սա պետք է անպայման աշխատի

21.12.2018
  • Դա իսկապես աշխատեց: Շնորհակալություն և ուրախ տոներ, Ֆելիպե: :-) 21.12.2018
  • Նոր նյութեր

    Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
    JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

    Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
    Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

    Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
    Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

    Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
    Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

    C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
    C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

    Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
    Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..