สูตรการจัดอันดับ
เซิร์ฟเวอร์จะได้รับคะแนนโดยใช้สูตรสรุปน้ำหนัก มีสี่ส่วนในสูตรนี้:
- คุณสมบัติ ซึ่งเป็นข้อมูลที่อธิบายผู้เล่นและเซิร์ฟเวอร์ เช่น อายุผู้เล่นหรืออัตราการใช้เซิร์ฟเวอร์
- สัญญาณ ซึ่งเปลี่ยนคุณสมบัติเป็นตัวเลขระหว่าง 0 และ 1
- น้ำหนัก ซึ่งอธิบายความสำคัญของสัญญาณเป็นสัดส่วน
- คะแนนเซิร์ฟเวอร์ ซึ่งวัดความสอดคล้องของเซิร์ฟเวอร์กับผู้เล่นที่เข้าร่วม
ผู้เล่นที่เข้าร่วมจะตรงกับเซิร์ฟเวอร์ที่มีคะแนนเซิร์ฟเวอร์สูงสุด
คุณสมบัติ
คุณสมบัติคือข้อมูลที่อธิบายผู้เล่นและเซิร์ฟเวอร์มูลค่าของคุณสมบัติอาจเป็นตัวเลขหรือสตริงเมื่อมูลค่าของคุณสมบัติเป็นสตริง จะเรียกว่าเป็นคุณสมบัติในระดับหมวดหมู่เมื่อมูลค่าของคุณสมบัติเป็นตัวเลข จะเรียกว่าเป็นคุณสมบัติทางตัวเลข
สำหรับรายการทั้งหมดของคุณสมบัติ Roblox ที่มีอยู่ทั้งหมดดูที่ คุณสมบัติที่มีอยู่แล้วสำหรับข้อมูลเพิ่มเติมเกี่ยวกับคุณสมบัติที่กําหนดเอง ดู คุณสมบัติที่กําหนดเอง
ตัวอย่าง: คุณสมบัติทางหมวดหมู่และตัวเลข
คุณสมบัติทางประเภท |
---|
มีเพื่อน เป็นคุณสมบัติที่เป็นประเภทเพราะค่าของมันคือสตริง "true" เมื่อมีผู้เล่นที่ชื่นชอบบนเซิร์ฟเวอร์นี้และ "false" เมื่อไม่มีผู้เล่นที่ชื่นชอบบนเซิร์ฟเวอร์นี้ |
ภาษา เป็นคุณสมบัติระดับหมวดเพราะมูลค่าของมันคือการตั้งค่าภาษาของผู้เล่นเช่น "ญี่ปุ่น" |
คุณสมบัติเชิงตัวเลข |
อายุ เป็นคุณสมบัติเชิงตัวเลขเพราะมูลค่าของมันคืออายุของผู้เล่น |
ความเต็ม เป็นคุณสมบัติเชิงตัวเลขเพราะมูลค่าของมันคือจํานวนผู้เล่นที่อยู่ในเซิร์ฟเวอร์นี้ในปัจจุบัน |
สัญญาณ
สัญญาณเปลี่ยนค่าตัวละครเป็นตัวเลขระหว่าง 0 และ 1 ที่เรียกว่าคะแนนสัญญาณคะแนนสัญญาณ 1 คาดการณ์ความสอดคล้องของผู้เล่นสูง ในขณะที่คะแนนสัญญาณ 0 คาดการณ์ความสอดคล้องของผู้เล่นต่ำขึ้นอยู่กับคุณสมบัติ การเปลี่ยนแปลงสามารถรวมการรวบรวม การเปรียบเทียบ และการปรับตัวที่แตกต่างกันได้
สำหรับรายการเต็มของสัญญาณ Roblox ที่มีอยู่แล้วดูที่ สัญญาณที่มีอยู่ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสัญญาณที่กําหนดเองดูที่ สัญญาณที่กําหนดเอง
ตัวอย่าง: สองเซิร์ฟเวอร์ที่มีคะแนนสัญญาณแตกต่างกัน
ตารางต่อไปนี้คำนวณคะแนนสัญญาณการใช้งานสำหรับสองเซิร์ฟเวอร์ที่แตกต่างกันที่มีความจุสำหรับผู้เล่น 8 คน:
ผู้เล่นในเซิร์ฟเวอร์ | คะแนนการใช้งาน | |
---|---|---|
เซิร์ฟเวอร์ A | 2 | 2/8 = 0.25 |
เซิร์ฟเวอร์ B | 6 | 6/8 = 0.75 |
คะแนนสัญญาณการใช้งานทำให้เซิร์ฟเวอร์ B สูงขึ้นและถือว่าเหมาะสมกับผู้เล่นที่เข้าร่วมมากขึ้น
น้ำหนัก
น้ำหนักของสัญญาณอธิบายความสำคัญของสัญญาณนั้นเมื่อเทียบกับสัญญาณอื่นน้ำหนักที่สูงขึ้นเพิ่มการมีส่วนร่วมของสัญญาณต่อคะแนนเซิร์ฟเวอร์ค่าหลังจากคูณคะแนนสัญญาณด้วยน้ำหนักของมันเรียกว่า สัญญาณที่มีน้ำหนัก สัญญาณไม่สามารถมีน้ำหนักลบได้ หากน้ำหนักของสัญญาณเป็น 0 สัญญาณนั้นจะไม่ถูกพิจารณาสําหรับการจัดอันดับ
ตัวอย่าง: น้ำหนักคะแนนการใช้งาน
ตารางต่อไปนี้คำนวณคะแนนสัญญาณการใช้งานที่มีน้ำหนักสำหรับสถานที่ที่มีความจุสำหรับผู้เล่น 8 คนและน้ำหนักสัญญาณการใช้งาน 2:
ผู้เล่นในเซิร์ฟเวอร์ | คะแนนการใช้งาน | คะแนนการใช้งานแบบหนัก | |
---|---|---|---|
เซิร์ฟเวอร์ A | 2 | 2/8 = 0.25 | 0.25 * 2 = 0.5 |
เซิร์ฟเวอร์ B | 6 | 6/8 = 0.75 | 0.75 * 2 = 1.5 |
ตัวอย่าง: สองการกำหนดค่าที่มีน้ำหนักแตกต่างกัน
น้ำหนักที่แตกต่างกันยังสามารถทำให้การจับคู่เลือกเซิร์ฟเวอร์ที่แตกต่างกันได้ตารางต่อไปนี้คำนวณคะแนนเซิร์ฟเวอร์ของสองเซิร์ฟเวอร์ที่มีการกำหนดค่าการจับคู่ที่แตกต่างกันการกำหนดค่า 2 มีน้ำหนักสูงสำหรับสัญญาณการใช้งานของมัน และเซิร์ฟเวอร์ A มีเพื่อนของผู้เล่นที่เข้าร่วมอยู่ในนั้น
เพื่อน | ความสนใจ | |||||
---|---|---|---|---|---|---|
น้ำหนัก | คะแนน | น้ำหนัก > | คะแนน > | คะแนนทั้งหมด > | ||
กำหนดค่า 1 | เซิร์ฟเวอร์ A | 1 | 1 | 5 | 0.25 | 1 * 1 + 5 * 0.25 = 2.25 |
เซิร์ฟเวอร์ B | 1 | 0 | 5 | 0.75 | 1 * 0 + 5 * 0.75 = 3.75 | |
กำหนดค่า 2 | เซิร์ฟเวอร์ A | 3 | 1 | 5 | 0.25 | 3 * 1 + 5 * 0.25 = 4.25 |
เซิร์ฟเวอร์ B | 3 | 0 | 5 | 0.75 | 3 * 0 + 5 * 0.75 = 3.75 |
คะแนนเซิร์ฟเวอร์
คะแนนเซิร์ฟเวอร์จะถูกคำนวณโดยสูตรคะแนนรวมที่มีน้ำหนักตามที่ระบุด้านล่างซึ่งรวมคะแนนสัญญาณที่มีน้ำหนักของเซิร์ฟเวอร์:
ServerScore= WeightedSignalScore_1 + WeightedSignalScore_2 + ... + WeightedSignalScore_n= Weight_1 * SignalScore_1 + Weight_2 * SignalScore_2 + ... + Weight_n * SignalScore_n
การกำหนดค่าการจับคู่
การกำหนดค่าการจับคู่คือชุดสัญญาณและน้ำหนักที่ใช้ในการคะแนนเซิร์ฟเวอร์ของสถานที่โดยค่าเริ่มต้นทั้งหมดของเซิร์ฟเวอร์ทุกแห่งจะได้รับคะแนนโดยการกำหนดค่าเริ่มต้นของ Roblox ซึ่งหมายความว่าคุณไม่จำเป็นต้องปรับแต่งหรือเปิดใช้งานการตั้งค่าใดๆ เพื่อใช้งาน
การกำหนดค่าเริ่มต้นของ Robox รวมถึงสัญญาณและน้ำหนักต่อไปนี้:
สัญญาณ | น้ำหนัก |
---|---|
เพื่อน | 10 |
ความล่าช้า | 3 |
การใช้งาน | 2 |
ประวัติการเล่น | 2 |
อายุ | 1 |
ภาษา | 1 |
แชทด้วยเสียง | 1 |
ประเภทอุปกรณ์ | 0 |
ในการกำหนดค่า Roblox เริ่มต้นน้ำหนักของสัญญาณเพื่อนมากกว่าผลบวกของน้ำหนักของสัญญาณอื่น ๆ ทั้งหมดซึ่งหมายความว่าหากมีอยู่ ผู้เล่นที่เข้าร่วมจะตรงกับเซิร์ฟเวอร์ที่มีเพื่อน (หรือผู้เล่นที่มีที่อยู่ IP เดียวกัน) เสมอ
สัญญาณประเภทอุปกรณ์มีอยู่ในการกำหนดค่าเริ่มต้น แต่มีน้ำหนัก 0 ดังนั้นจึงไม่มีผลต่อการตัดสินใจในการจับคู่คุณสามารถปรับน้ำหนักนี้เมื่อคุณ ปรับแต่งการจับคู่
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสัญญาณ Roblox แต่ละสัญญาณดูที่ สัญญาณที่มีอยู่
แนวคิดขั้นสูง
ต่อไปนี้เป็นแนวคิดขั้นสูงเกี่ยวกับกระบวนการจับคู่
การปรับปรุงปกติ
สัญญาณจะปรับมูลค่าคุณสมบัติให้เป็นตัวเลขระหว่าง 0 และ 1สัญญาณเชิงตัวเลขสามารถปรับให้เป็นมาตรฐานได้โดยตัวเลขบวกใดๆ เรียกว่า ตัวปรับปรุงปกติ หากมูลค่าปกติมากกว่า 1 มันจะถูกจำกัดลงเป็น 1
ตัวอย่าง: ออกแบบสัญญาณอายุ
สัญญาณอายุวัดความแตกต่างระหว่างอายุเฉลี่ยของผู้เล่นในเซิร์ฟเวอร์และอายุของผู้เล่นที่เข้าร่วม
ageDifference = abs(avgServerAge - joiningPlayerAge)
เซิร์ฟเวอร์ที่มีความแตกต่างอายุเกิน 25 ถูกพิจารณาว่าไม่สอดคล้องกับผู้เล่นเท่าเทียมกันตัวอย่างเช่น ความแตกต่างอายุ 25 ไม่เลวร้ายสำหรับผู้เล่นเมื่อเทียบกับความแตกต่างอายุ 26 ดังนั้นทั้งสองค่าควรนำคะแนนสัญญาณไปเป็น 0ในกรณีนี้ 25 ถือเป็นตัวเร่งปกติ
normAgeDifference = min(1, abs(avgServerAge - joiningPlayerAge) / 25)
คะแนนสัญญาณมีความเกี่ยวข้องกับความแตกต่างของอายุในทางกลับกัน ซึ่งหมายความว่าคะแนนสัญญาณจะสูงขึ้นเมื่อความแตกต่างของอายุน้อยลง
ageDifferenceSignalScore = 1 - normAgeDifference
ตารางต่อไปแสดงคะแนนสัญญาณอายุด้วยสองตัวแปรปรับปรุงที่แตกต่างกัน:
อายุ | ปัจจัยการปรับปรุง: 100 | ปัจจัยปรับสมดุล: 25 |
---|---|---|
50 | 0.5 | 0 |
25 | 0.75 | 0 |
12 | 0.88 | 0.52 |
5 | 0.95 | 0.8 |
0 | 1 | 1 |
สัญญาณที่มีปัจจัยปรับปรุง 25 พิจารณาความแตกต่างในอายุ 5 ปีและ 12 ปีเป็นระยะไกลกว่าปัจจัยปรับสมดุลขนาดเล็กมีผลต่อการขยายหรือลดการเพิ่มหรือลดความแตกต่างในอายุ
จำนวนน้ำหนัก
น้ำหนักบ่งบอกถึงความสำคัญของสัญญาณเมื่อเทียบกับสัญญาณอื่นๆ ในการกำหนดค่าค่าเอฟเฟกต์เชิงเปรียบเทียบของน้ำหนักกำหนดความสำคัญของสัญญาณไม่ใช่ค่าเอฟเฟกต์เชิงเปรียบเทียบสุดขีดของพวกเขา
ตัวอย่าง: เปรียบเทียบกับขนาดเชิงเอกฐานและเชิงสัมบูรณ์
ตารางด้านล่างคำนวณคะแนนเซิร์ฟเวอร์ของสองเซิร์ฟเวอร์ที่มีการกำหนดคู่แข่งที่แตกต่างกันสองรายการการกำหนดค่า 5 และการกำหนดค่า 6 มีน้ำหนักการใช้งานสูงกว่าน้ำหนักเพื่อนแต่ละคนเซิร์ฟเวอร์ A มีเพื่อนของผู้เล่นที่เข้าร่วมในนั้น
เพื่อน | ความสนใจ | |||||
---|---|---|---|---|---|---|
น้ำหนัก | คะแนน | น้ำหนัก > | คะแนน > | คะแนนทั้งหมด > | ||
กำหนดค่า 5 | เซิร์ฟเวอร์ A | 10,000 | 1 | 15,000 | 0.25 | 10,000 * 1 + 15,000 * 0.25 = 13,750 |
เซิร์ฟเวอร์ B | 10,000 | 0 | 15,000 | 0.75 | 10,000 * 0 + 15,000 * 0.75 = 11,250 | |
กำหนดค่า 6 | เซิร์ฟเวอร์ A | 0.01 | 1 | 0.05 | 0.25 | 0.01 * 1 + 0.05 * 0.25 = 0.0225 |
เซิร์ฟเวอร์ B | 0.01 | 0 | 0.05 | 0.75 | 0.01 * 0 + 0.05 * 0.75 = 0.0375 |
เซิร์ฟเวอร์ A ชนะด้วยการกำหนดค่า 5 ในขณะที่เซิร์ฟเวอร์ B ชนะด้วยการกำหนดค่า 6เนื่องจากน้ำหนักการใช้งานของการกำหนดค่า 5 มีเพียง 1.5x น้ำหนักเพื่อน ในขณะที่น้ำหนักการใช้งานของการกำหนดค่า 6 มีเพียง 5x น้ำหนักเพื่อน
แม้จะมีความแตกต่างในมูลค่าสัมบูรณ์ แต่การกำหนดค่า 6 ให้ความสำคัญกับการใช้งานมากกว่าเพื่อนมากกว่าการกำหนดค่า 5