×

To be able to write in the forum you need to authenticate. Meanwhile it's read-only.

Re: 10 Checker requests, mostly similar, but daunting

[Resolved] 10 Checker requests, mostly similar, but daunting
August 09, 2016 05:31PM
Hi, I've got a mini challenge trail in the works, finally having come up with concepts that have been approved. (I'd previously posted requesting checkers which were made, but subsequently the challenges denied as the requirements were reviewed and tightened). So I'm not sure if there exist checkers that support what I'm doing here, but I'm pretty sure a couple at least already exist, in which case I'd like tags. Where counties are specified, they are Ontario, Canada counties.
This big list of challenges looks daunting :) but they're all based on the Difficulty+Terrain value concept (except one fizzy challenge).
Thanks!

The List

Summarized as a collection of grouped D+T values (from 2.0 to 10.0; eg, DT 3.5/3.5=7, and DT 2/5.0=7 -- sort of like a "D/T" fizzy, but not 81 values, "D+T" only gives 17 spots) based on these filters, and a minimum value for qualification (all D+T's have over the minimum #finds):
  1. All found caches, minimum of 25 each (GC6JV7D)
  2. All found caches in Ontario, Canada counties (Waterloo, Wellington, Perth, Oxford, Brant [and Brantford]), minimum of 5 each (GC6JV5Q)
  3. All found caches in "Waterloo" county, minimum 3 each (GCJV7C)

Counting complete sets (every D+T value has at least 1 find):
  1. Grouped by PlacedDate Year, have 6 years complete (GC6JV6M)
  2. Grouped by County (anywhere), have 6 counties complete (GC6JVC2)
  3. Grouped by PlacedDate (m/d), have a single date placed spot complete (one day of the 366 grid with every D+T value found at least once) (GC6JVC3)
  4. Grouped by State/Province, have a single state with every D+T value having minimum 20 finds (GC6JVBP)

Completed DatePlaced grids:
  1. Complete the DatePlaced grid using only caches with D+T sums of 4.0 or under (GC6JV7B )
  2. Complete the DatePlaced grid using only caches with D+T sums of 3.5 or more (GC6JVBN)

Fizzy grid:
  1. Complete the D/T grid (standard fizzy, 1 time) using only caches within Ontario counties (Waterloo, Wellington, Perth, Oxford, Brant [and Brantford]) (GC6JHC6)


A little more explanation on the D+T:
* The 2.0 spot would be comprised of only 1/1 DT.
* The 2.5 spot would be comprised of DTs 1/1.5, and 1.5/1.
* The 6.0 spot would be comprised of the most DTs (from 1/5 through 5/1)
* Of course the 10.0 spot would only be comprised of 5/5's.


SQL examples from GSAK to test on your own db (please excuse any excessive "--" CASE statements; I just used those for readability in the output to avoid searching for 0's):
* All caches:
select group_concat(Finds,char(9)) Finds from (with recursive dt(s,n) as (values(2.0,0) union all select s+0.5, n+0.5 from dt where n<8.0) select S, (select count(*) from caches where difficulty+terrain=s) Finds from dt order by s)
Result: 1 column tab-delimited list of the 17 D+T sum totals. min(Finds) would determine qualification

* Waterloo "neighbourhood" (5 counties) D+T summary:
select State, Country, sum(case when Finds='--' then 0 else 1 end) Sums, min(case when Finds='--' then 0 else Finds end) Mag, group_concat(Finds,char(9)) DTFinds from (select State, Country, S, cast(sum(Finds) as int) Finds from ( select County, State, Country, S, (select case when count(*)=0 then '--' else count(*) end from caches where difficulty+terrain=S and County=c1.County and State=c1.State and Country=c1.Country) Finds from (select distinct County, State, Country from Caches where County IN ('Waterloo','Wellington','Perth','Oxford','Brant','Brantford') and State='Ontario') c1 join (with recursive dt(s,n) as (values(2.0,0) union all select s+0.5, n+0.5 from dt where n<8.0) select S from dt) order by Country, State, S) group by State, Country, S) group by State, Country order by Sums desc, Country, State
Result: Tab-delimited list of D+T sum totals. Column "Sums" shows how many spots have at least 1 find (17 is a complete set). Column "Mag" shows the minimum count in a D+T spot (0 implies an incomplete set having at least one spot with 0 finds)

* Date Placed Years D+T summary:
select Y, sum(case when Caches='--' then 0 else 1 end) Sums, min(case when Caches='--' then 0 else Caches end) Mag, group_concat(Caches,char(9)) DTFinds from (SELECT Y, S, CASE when Num=0 then '--' else Num END as Caches FROM (with recursive ys(y,s,n) as (values(2000,2.0,1) union all select cast((n)/17 as int)+2000,2.0+((n)%17)*0.5,n+1 from ys where n<=18*(strftime('%Y',date('now'))-2000)) select (select count(*) as Num FROM caches c WHERE Y = 0+strftime('%Y',PlacedDate) and Difficulty+Terrain = S) as Num, Y, S from ys) order by Y, S) group by Y
Result: Sorted by year, summary of how many D+T spots have at least one find (Sums), the minimum count across the set (Mag), and the tab-delimited list of grouped D+T totals (DTFinds).
Qualification test for 6 years would count the number of years either with Mag > 0 or Sums = 17.

* Date Placed grid of D+T >=3.5:
select M, D, Caches Finds from (SELECT M, D, Num as Caches FROM (with recursive yd(m,d,n) as (values('01','01',1) union all select strftime('%m',2451544.5+n),strftime('%d',2451544.5+n),n+1 from yd where n<366) select (select count(*) as Num FROM caches c WHERE strftime('%m%d',PlacedDate)=M||D and (Difficulty+Terrain>=3.5)) as Num, M, D from yd) order by M, D)
Result: List of all MDs (366 rows) with their count of caches having D+T >=3.5
Qualification for a full grid: All rows have at least 1 Find (per the above sql, 0 finds = "--" )
For <=4.0 same idea with adjusted filter.

* Waterloo neighbourhood fizzy:
Self-explanatory, just filtering results to counties ('Waterloo','Wellington','Perth','Oxford','Brant','Brantford')


Final comments
Ideally, I'd like each challenge to indicate qualification (of course), but also list as much information as feasible. If it's a single D+T set (the first 3 challenges), the current set totals would be helpful, as the user can then easily look up which D/Ts would be needed to qualify for specific D+T values.

The second set of 4 challenges might be a little more complex. The Placed Year SQL result I showed above is, in my opinion, a helpful summary as it shows the D+T totals for each year, making it easy to see which years are close to qualification and which D+T totals need to be sought. Same for the top (nearest qualification) counties, M/D dates, and States.

Date Placed grids - pretty standard output, I'm guessing, of the full year grid. Any date with 0 finds should be easy to spot? Or an output only showing dates with 0 finds?

Fizzy grid - yeah, pretty standard output, I assume?

---
Thanks to anyone who takes up this daunting challenge in itself :) It's a lot of challenges, and I hope my explanation has been clear enough, but if not, please DO ask away. I have single gsak SQL queries for each of them that I used to verify my own qualifications, so it shouldn't be hard to adapt them if necessary and parse the results for qualifications.
My humble thanks, once again.
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 06:50PM
The Fizzy matrix can have two ways of showing
http://project-gc.com/Challenges/GC6JHC6/22153 showing the matrix or http://project-gc.com/Challenges/GC6JHC6/22154 showing a full printout with the GCcode, name, visitdate and county.

Just tell me which one you prefer
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 08:45PM
Thanks vogelbird.
http://project-gc.com/Challenges/GC6JHC6/22153 for the fizzy is sufficient!

The DatePlaced grid checker results are good for successful checks. I'm guessing you mean that the fail output is different in that it can't show which days are missing? Is there a script that can output the totals in the 366-day matrix, with rows as months?
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 08:53PM
The difference is that it shows the county
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:18PM
Sorry I meant that for the dateplaced grid challenge links below. Replying in the proper tree now...
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 07:44PM
Re : Completed DatePlaced grids:
Complete the DatePlaced grid using only caches with D+T sums of 4.0 or under (GC6JV7B )
Complete the DatePlaced grid using only caches with D+T sums of 3.5 or more (GC6JVBN)

With those I can't use the normal calendar scrpt because of your D+T sum condition so the cacher has to run through the dates which of those are missing

Here are the links
http://project-gc.com/Challenges/GC6JV7B/22157
http://project-gc.com/Challenges/GC6JVBN/22156
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:19PM
The DatePlaced grid checker results are good for successful checks. I'm guessing you mean that the fail output is different in that it doesn't show which of the 366 days are missing? Is there a script that can output the totals in the 366-day matrix, with rows as months?
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:41PM
I'm sorry but the script can't handle this. And other scripts with a grid can't handle the D+T grid
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 08:50PM
Re: Counting complete sets (every D+T value has at least 1 find):
Grouped by PlacedDate Year, have 6 years complete (GC6JV6M)
Grouped by County (anywhere), have 6 counties complete (GC6JVC2)
Grouped by PlacedDate (m/d), have a single date placed spot complete (one day of the 366 grid with every D+T value found at least once) (GC6JVC3)

http://project-gc.com/Challenges/GC6JV6M/22159
http://project-gc.com/Challenges/GC6JVC2/22160
http://project-gc.com/Challenges/GC6JVC3/22161 (you do not fulfill this challenge yet)
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:21PM
re: 22161 - I do, July 26th should be my qualifying date with 17 spots. Verification code might need a fix.
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 11:46AM
re: 22161 : The checker had an error in the config, it is now working as it should and your result is

[thebruce0](https://www.geocaching.com/profile/?u=thebruce0) has used [Project-GC](http://project-gc.com/Challenges/GC6JVC3/22161 "Project-GC Challenge Checker") to see if he/she qualified for this challenge and he/she did.

Grouped by PlacedDate (m/d), 0726: 17
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:34PM
re: 22160 - I'm getting a couple of different types of errors on checking. Usernames to test: Brook22, ElectroQTed, clydeseeker, res2100, GuelphHiker, fbax, Bushman002, Lisdowney, Hot Coffee
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:44PM
I will check this out tomorrow
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 09:47AM
My guess is that the error happens if you have found caches with no county. Usually where the coordinates are out at see.



Edited 1 time(s). Last edit at 08/10/2016 09:48AM by Target.. (view changes)
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 10:46AM
That's correct Target but excluding that group (which has 0 value) is the problem. Maybe Mole125 has a solution for this
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 12:35PM
re: 22160
The coding has been updated by mole125 and the checker is now working correct
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 01:10PM
You guys are awesome. :)
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:36PM
Summarized as a collection of grouped D+T values (from 2.0 to 10.0; eg, DT 3.5/3.5=7, and DT 2/5.0=7 -- sort of like a "D/T" fizzy, but not 81 values, "D+T" only gives 17 spots) based on these filters, and a minimum value for qualification (all D+T's have over the minimum #finds):
All found caches, minimum of 25 each (GC6JV7D)
All found caches in Ontario, Canada counties (Waterloo, Wellington, Perth, Oxford, Brant [and Brantford]), minimum of 5 each (GC6JV5Q)
All found caches in "Waterloo" county, minimum 3 each (GCJV7C)

http://project-gc.com/Challenges/GC6JV7D/22162
http://project-gc.com/Challenges/GC6JV5Q/22163
http://project-gc.com/Challenges/GCJV7C/22164

I hope that I understond the chellenges correct.

The is one outstanding challenge
Grouped by State/Province, have a single state with every D+T value having minimum 20 finds (GC6JVBP)
Do you limit these find in US and Canada?
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:44PM
#oops correction: 22164 should be for GC6JV7C
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:46PM
fixed
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 09:48PM
re: 22162 - I got an error checking user clydeseeker

ETA: Never mind, should be "ClydeSeeker" (case sensitive)



Edited 1 time(s). Last edit at 08/09/2016 10:09PM by thebruce0. (view changes)
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 10:12PM
This is the failed result for ClydeSeeker
D+T= 2.0: 140
D+T= 2.5: 209
D+T= 3.0: 1000
D+T= 3.5: 618
D+T= 4.0: 634
D+T= 4.5: 331
D+T= 5.0: 267
D+T= 5.5: 123
D+T= 6.0: 105
D+T= 6.5: 55
D+T= 7.0: 40
D+T= 7.5: 28
D+T= 8.0: 16
D+T= 8.5: 11
D+T= 9.0: 3
D+T= 9.5: 1
D+T= 10.0: 0
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 10:11PM
Adjustement to 22164 - as I can't find 10 local cachers who qualify, but have found more than 1, can you reduce the minimum qualification from 3 to 2? There should definitely be sufficient qualifiers for that threshold. Thanks.
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 10:18PM
Re: 10 Checker requests, mostly similar, but daunting
August 09, 2016 10:13PM
vogelbird Wrote:
-------------------------------------------------------
> The is one outstanding challenge
> Grouped by State/Province, have a single state
> with every D+T value having minimum 20 finds
> (GC6JVBP)
> Do you limit these find in US and Canada?

Anywhere will be fine. (I presume this is in reference to treating Countries without state borders as a "State"? If so that's fine, and is pretty common for state/province style challenges)
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 12:03PM
Re: GC6JVBP
I'm sorry but the script cannot handle two different unique conditions or two different groups.
I tried some different approaches to this challenge but the config failed also it is not possible to mix countries and regions

Maybe a script writer will know a solution for this problem
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 01:12PM
Ok, then feel free to limit it to US and Canada.

I've seen other challenges state that province, state, or country are allowed as 'regions', so I assumed that was already set up in PGC. I don't remember if those had PGC checkers or were pre-moratorium self-check challenges.

Given these are essentially localized challenges, it's ok to limit it to US and Canada.
Thanks
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 04:42PM
The problem is not a limitation to Canada/US.
The problem is that caches has to be grouped by region and D+T and 20 find
That checker cant check for all different D+T in a region
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 04:55PM
This is the SQL I use to produce a readable result in gsak sqlite:
select State, Country, sum(case when Finds='--' then 0 else 1 end) Sums, min(case when Finds='--' then 0 else Finds end) Mag, group_concat(Finds,char(9)) DTFinds
from (select State, Country, S, (select case when count(*)=0 then '--' else count(*) end from caches where difficulty+terrain=S and State=c1.State and Country=c1.Country) Finds from (select distinct State, Country from Caches) c1
join (with recursive dt(s,n) as (values(2.0,0) union all select s+0.5, n+0.5 from dt where n<8.0) select S from dt) order by Country, State, S)
group by State, Country order by Sums desc, Country, State

This produce the rows of State and Country, with Sums listing how many D+T's have at least 1 find, Mag showing the lowest D+T count, and DTFinds as a tab-delimited list of D+T counts. So, for this challenge, if there's one row with Mag>=20 then that State qualifies.

I really wish I could be a script writer :P I'd love to see how SQL can be adapted to PGC scripts.

Does this challenge require a new script?



Edited 1 time(s). Last edit at 08/10/2016 04:55PM by thebruce0. (view changes)
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 05:51PM
It is possible to code but the script voglebird used cant do that
The checker system cant run SQL querys to the database.
All have to be done in LUA where you get a table with finds and parameter of the cache.
I think that challenge can be tested with 3 for loop in a row.
The hard part in a checker is usually not checking the requirement but printing a good output so you can see what you have to find to meet the requirement. The "Easy Tagging Generic Checker" often give unreadable/hard to read result if you done meet the requirement
A problem to make it configurable for different requirements so it can easy be reused
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 06:29PM
Ok. Well, if it helps, the structure of the 1x State with 20 minimum for each D+T is functionally the same as the single PlacedDate with 1 minimum for each D+T.

In the latter, it's grouped by the "m/d" of the PlacedDate field; in States it's grouped by the "State/Country" fields. Everything else is identical except the minimum value.

Now, that's obviously not how the LUA handles it (I understood SQL isn't possible, but I provide just for the process that can hopefully be adapted to LUA)... but looking at it as pseudo-code, the process and the result are the same, so I'm guessing it is just that there isn't a script that can do this for States (yet), not that the script isn't actually possible in LUA.

Can someone write this script, or adjust an existing similar one to allow for what's needed?
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 06:52PM
thebruce0 Wrote:
-------------------------------------------------------

> In the latter, it's grouped by the "m/d" of the
> PlacedDate field; in States it's grouped by the
> "State/Country" fields. Everything else is
> identical except the minimum value.

But that will result in the extra level of grouping that is not possible
the config that place date used is below it looked for 17 unique D+T grouped by place date
adding multiple find requirements per DT will be another groping that the easy taggning checker can do

{
"challenge": [
"define 'stars' as expression difficulty + terrain.",
"with name 'Grouped by PlacedDate (m\/d),' find 17 caches grouped by hidden_month_day with unique stars.",
"Fulfilled with 1 groups.",
"Fulfilled with unique caches.",
"output groups including empty with totals."
]
}

>so I'm guessing it is just that there isn't a script that can do this for States (yet), not that the script isn't actually >possible in LUA
If it is possible in any language with the available data i is possible in LUA. LUA is turing complete so it can be done (If it can be done within memory and run time limits)
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 06:39PM
I code a checker
http://project-gc.com/Challenges/GC6JVBP/22171
If has output of all regions with finds if you dont meet the challenge so you know what need to be find.
Only shown if you dont meet the requirement
Re: 10 Checker requests, mostly similar, but daunting
August 10, 2016 07:14PM
Thank you! You are a lifesaver :) And the output looks good.
Re: 10 Checker requests, mostly similar, but daunting
September 06, 2016 03:31AM
One update for this checker - the output seems a little hard to understand on failure.
While testing for non-US and non-Canadian users, try user Ministro from Australia. Is it possible to better label the numbers in the result sets?
Thanks
Re: 10 Checker requests, mostly similar, but daunting
August 20, 2016 02:55AM
Hey Geoff ..... I qualify for most of these, and I can't even understand the challenges lol Thank god for checkers.
Carni
Re: 10 Checker requests, mostly similar, but daunting
August 20, 2016 03:14AM
Whatever it is checking for, I failed.
Sorry, only registered users may post in this forum.

Click here to login