# Problem 58842. ICFP 2023 Orchestra: Score Optimization of Puzzle-17 Second point

The ICFP 2023 Competition in July was to place musicians on a stage to maximize the attendees net Joy. The ICFP 2023 Orchestra Spec shows details of the contest. The musicians played various instruments with attendees having preference values for each instrument type. Musicians could block attendees from seeing musicians behind them. Blocking occurs if a_i to m_j vector touched within 5 of m_k. No musicians allowed within 10 of one another.
This Challenge is to place a second musician onto the stage, mxy, to increase Joy by at least 23400. The Joy table am is Joy co-factor of each attendee for each musician type. Joy is scaled by 1/distance-squared between Musician and Attendee. Joy(j,i)=1000000*am(i,mu(j))/d2(i,j).
The Joy here is to brute force a solution.
The scoring of a placed musician is a discontinuous non-linear function due to vignetting and the 1/distance-squared scaling. There appears to be a grumpy audience cluster at the top left such that vignetting them and their negative Joy raises the Joy of a musician's placement on the xmax stage edge.
Given all the contest parameters and an initial musician placed at Top-Left of stage (xmax,ymax) return a muscian position (x,y) and type to raise total Joy by at least 23400. A non-integer solution exists with x=xmax.
The scoring and blocking functions are provided in the template.
Problem 17: Stage in Pink and 5000 audience as black dots in top right corner of arena. The first musician is placed at (xmax,ymax)
This plot shows the scoring of a second point placed at (xmax, y) where y is the y-axis of the graph and the x-axis is the additive score created by this second point. The first point is placed at (xmax,1220) thus no points allowed (1210:1220]. Down to 1202.6 the entire audience is blocked from viewing. Different samplings are shown: */1, Green/0.1, Black/.01, and Red/.001 To achieve the >23400 requires a resolution of 0.001. This graph gives clues for limiting the search range.

### Solution Stats

33.33% Correct | 66.67% Incorrect
Last Solution submitted on Aug 09, 2023

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!